Package hudson.util
Class NoClientBindProtocolSocketFactory
- java.lang.Object
-
- hudson.util.NoClientBindProtocolSocketFactory
-
- All Implemented Interfaces:
org.apache.commons.httpclient.protocol.ProtocolSocketFactory
public class NoClientBindProtocolSocketFactory extends Object implements org.apache.commons.httpclient.protocol.ProtocolSocketFactory
A SecureProtocolSocketFactory that creates sockets without binding to a specific interface. Based on org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory
-
-
Constructor Summary
Constructors Constructor Description NoClientBindProtocolSocketFactory()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Socket
createSocket(String host, int port)
Socket
createSocket(String host, int port, InetAddress localAddress, int localPort)
Socket
createSocket(String host, int port, InetAddress localAddress, int localPort, org.apache.commons.httpclient.params.HttpConnectionParams params)
Attempts to get a new socket connection to the given host within the given time limit.boolean
equals(Object obj)
All instances are the same.int
hashCode()
All instances have the same hash code.
-
-
-
Method Detail
-
createSocket
public Socket createSocket(String host, int port, InetAddress localAddress, int localPort) throws IOException
- Specified by:
createSocket
in interfaceorg.apache.commons.httpclient.protocol.ProtocolSocketFactory
- Throws:
IOException
-
createSocket
public Socket createSocket(String host, int port, InetAddress localAddress, int localPort, org.apache.commons.httpclient.params.HttpConnectionParams params) throws IOException, UnknownHostException, org.apache.commons.httpclient.ConnectTimeoutException
Attempts to get a new socket connection to the given host within the given time limit.This method employs several techniques to circumvent the limitations of older JREs that do not support connect timeout. When running in JRE 1.4 or above reflection is used to call Socket#connect(SocketAddress endpoint, int timeout) method. When executing in older JREs 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 interfaceorg.apache.commons.httpclient.protocol.ProtocolSocketFactory
- Parameters:
host
- the host name/IPport
- the port on the hostlocalAddress
- the local host name/IP to bind the socket to, ignoredlocalPort
- the port on the local machine, ignoredparams
-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 determinedorg.apache.commons.httpclient.ConnectTimeoutException
- if socket cannot be connected within the given time limit- Since:
- 3.0
-
createSocket
public Socket createSocket(String host, int port) throws IOException
- Specified by:
createSocket
in interfaceorg.apache.commons.httpclient.protocol.ProtocolSocketFactory
- Throws:
IOException
- See Also:
ProtocolSocketFactory.createSocket(java.lang.String,int)
-
equals
public boolean equals(Object obj)
All instances are the same.
-
-