org.apache.commons.httpclient.protocol
Class ControllerThreadSocketFactory
java.lang.Object
org.apache.commons.httpclient.protocol.ControllerThreadSocketFactory
public final class ControllerThreadSocketFactory
extends java.lang.Object
This helper class is intedned to help work around the limitation of older Java versions
(older than 1.4) that prevents from specifying a connection timeout when creating a
socket. This factory executes a controller thread overssing the process of socket
initialisation. If the socket constructor cannot be created within the specified time
limit, the controller terminates and throws an
ConnectTimeoutException
- Ortwin Glueck
- Oleg Kalnichevski
createSocket
public static Socket createSocket(ProtocolSocketFactory socketfactory,
String host,
int port,
InetAddress localAddress,
int localPort,
int timeout)
throws IOException,
UnknownHostException,
ConnectTimeoutException
This method spawns a controller thread overseeing the process of socket
initialisation. If the socket constructor cannot be created within the specified time
limit, the controller terminates and throws an
ConnectTimeoutException
host
- the host name/IPport
- the port on the hostlocalAddress
- the local host name/IP to bind the socket tolocalPort
- the port on the local machinetimeout
- the timeout value to be used in milliseconds. If the socket cannot be
completed within the given time limit, it will be abandoned
Copyright (c) 1999-2005 - Apache Software Foundation