• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* GENERATED SOURCE. DO NOT MODIFY. */
2 /*
3  * Copyright (C) 2014 The Android Open Source Project
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 package tests.net;
18 import java.io.IOException;
19 import java.net.InetAddress;
20 import java.net.Socket;
21 import java.net.UnknownHostException;
22 import javax.net.ssl.SSLSocket;
23 import javax.net.ssl.SSLSocketFactory;
24 /**
25  * {@link SSLSocketFactory} which delegates all invocations to the provided delegate
26  * {@code SSLSocketFactory}.
27  * @hide This class is not part of the Android public SDK API
28  */
29 public class DelegatingSSLSocketFactory extends SSLSocketFactory {
30     private final SSLSocketFactory mDelegate;
DelegatingSSLSocketFactory(SSLSocketFactory delegate)31     public DelegatingSSLSocketFactory(SSLSocketFactory delegate) {
32         this.mDelegate = delegate;
33     }
34     /**
35      * Invoked after obtaining a socket from the delegate and before returning it to the caller.
36      *
37      * <p>The default implementation does nothing.
38      */
configureSocket(SSLSocket socket)39     protected SSLSocket configureSocket(SSLSocket socket) throws IOException {
40         return socket;
41     }
42     @Override
getDefaultCipherSuites()43     public String[] getDefaultCipherSuites() {
44         return mDelegate.getDefaultCipherSuites();
45     }
46     @Override
getSupportedCipherSuites()47     public String[] getSupportedCipherSuites() {
48         return mDelegate.getSupportedCipherSuites();
49     }
50     @Override
createSocket()51     public Socket createSocket() throws IOException {
52         SSLSocket socket = (SSLSocket) mDelegate.createSocket();
53         return configureSocket(socket);
54     }
55     @Override
createSocket(Socket s, String host, int port, boolean autoClose)56     public Socket createSocket(Socket s, String host, int port, boolean autoClose)
57             throws IOException {
58         SSLSocket socket = (SSLSocket) mDelegate.createSocket(s, host, port, autoClose);
59         return configureSocket(socket);
60     }
61     @Override
createSocket(String host, int port)62     public Socket createSocket(String host, int port) throws IOException, UnknownHostException {
63         SSLSocket socket = (SSLSocket) mDelegate.createSocket(host, port);
64         return configureSocket(socket);
65     }
66     @Override
createSocket(String host, int port, InetAddress localHost, int localPort)67     public Socket createSocket(String host, int port, InetAddress localHost, int localPort)
68             throws IOException, UnknownHostException {
69         SSLSocket socket = (SSLSocket) mDelegate.createSocket(host, port, localHost, localPort);
70         return configureSocket(socket);
71     }
72     @Override
createSocket(InetAddress host, int port)73     public Socket createSocket(InetAddress host, int port) throws IOException {
74         SSLSocket socket = (SSLSocket) mDelegate.createSocket(host, port);
75         return configureSocket(socket);
76     }
77     @Override
createSocket(InetAddress address, int port, InetAddress localAddress, int localPort)78     public Socket createSocket(InetAddress address, int port, InetAddress localAddress,
79             int localPort) throws IOException {
80         SSLSocket socket = (SSLSocket) mDelegate.createSocket(address, port, localAddress, localPort);
81         return configureSocket(socket);
82     }
83 }
84