Class EasySSLProtocolSocketFactory
- All Implemented Interfaces:
ProtocolSocketFactory
,SecureProtocolSocketFactory
EasySSLProtocolSocketFactory can be used to creats SSL Socket
s
that accept self-signed certificates.
This socket factory SHOULD NOT be used for productive systems due to security reasons, unless it is a concious decision and you are perfectly aware of security implications of accepting self-signed certificates
Example of using custom protocol socket factory for a specific host:
Protocol easyhttps = new Protocol("https", new EasySSLProtocolSocketFactory(), 443); HttpClient client = new HttpClient(); client.getHostConfiguration().setHost("localhost", 443, easyhttps); // use relative url only GetMethod httpget = new GetMethod("/"); client.executeMethod(httpget);
Example of using custom protocol socket factory per default instead of the standard one:
Protocol easyhttps = new Protocol("https", new EasySSLProtocolSocketFactory(), 443); Protocol.registerProtocol("https", easyhttps); HttpClient client = new HttpClient(); GetMethod httpget = new GetMethod("https://localhost/"); client.executeMethod(httpget);
-
Constructor Summary
ConstructorDescriptionConstructor for EasySSLProtocolSocketFactory. -
Method Summary
Modifier and TypeMethodDescriptioncreateSocket
(String host, int port) Gets a new socket connection to the given host.createSocket
(String host, int port, InetAddress clientHost, int clientPort) Gets a new socket connection to the given host.createSocket
(String host, int port, InetAddress localAddress, int localPort, HttpConnectionParams params) Attempts to get a new socket connection to the given host within the given time limit.createSocket
(Socket socket, String host, int port, boolean autoClose) Returns a socket connected to the given host that is layered over an existing socket.boolean
int
hashCode()
-
Constructor Details
-
EasySSLProtocolSocketFactory
public EasySSLProtocolSocketFactory()Constructor for EasySSLProtocolSocketFactory.
-
-
Method Details
-
createSocket
public Socket createSocket(String host, int port, InetAddress clientHost, int clientPort) throws IOException, UnknownHostException Description copied from interface:ProtocolSocketFactory
Gets a new socket connection to the given host.- Specified by:
createSocket
in interfaceProtocolSocketFactory
- Parameters:
host
- the host name/IPport
- the port on the hostclientHost
- the local host name/IP to bind the socket toclientPort
- the port on the local machine- Returns:
- Socket a new socket
- Throws:
IOException
- if an I/O error occurs while creating the socketUnknownHostException
- if the IP address of the host cannot be determined- See Also:
-
createSocket
public Socket createSocket(String host, int port, InetAddress localAddress, int localPort, HttpConnectionParams params) throws IOException, UnknownHostException, ConnectTimeoutException Attempts to get a new socket connection to the given host within the given time limit.To circumvent the limitations of older JREs that do not support connect timeout a controller thread is executed. The controller thread attempts to create a new socket within the given limit of time. If socket constructor does not return until the timeout expires, the controller terminates and throws an
ConnectTimeoutException
- Specified by:
createSocket
in interfaceProtocolSocketFactory
- Parameters:
host
- the host name/IPport
- the port on the hostclientHost
- the local host name/IP to bind the socket toclientPort
- the port on the local machineparams
-Http connection parameters
- Returns:
- Socket a new socket
- Throws:
IOException
- if an I/O error occurs while creating the socketUnknownHostException
- if the IP address of the host cannot be determinedConnectTimeoutException
- if socket cannot be connected within the given time limit
-
createSocket
Description copied from interface:ProtocolSocketFactory
Gets a new socket connection to the given host.- Specified by:
createSocket
in interfaceProtocolSocketFactory
- Parameters:
host
- the host name/IPport
- the port on the host- Returns:
- Socket a new socket
- Throws:
IOException
- if an I/O error occurs while creating the socketUnknownHostException
- if the IP address of the host cannot be determined- See Also:
-
createSocket
public Socket createSocket(Socket socket, String host, int port, boolean autoClose) throws IOException, UnknownHostException Description copied from interface:SecureProtocolSocketFactory
Returns a socket connected to the given host that is layered over an existing socket. Used primarily for creating secure sockets through proxies.- Specified by:
createSocket
in interfaceSecureProtocolSocketFactory
- Parameters:
socket
- the existing sockethost
- the host name/IPport
- the port on the hostautoClose
- a flag for closing the underling socket when the created socket is closed- Returns:
- Socket a new socket
- Throws:
IOException
- if an I/O error occurs while creating the socketUnknownHostException
- if the IP address of the host cannot be determined- See Also:
-
equals
-
hashCode
public int hashCode()
-