org.apache.commons.httpclient

Interface HttpConnectionManager

Known Implementing Classes:
MultiThreadedHttpConnectionManager, SimpleHttpConnectionManager

public interface HttpConnectionManager

An interface for classes that manage HttpConnections.
Authors:
Michael Becke
Mike Bowler
Oleg Kalnichevski
Since:
2.0
See Also:
HttpConnection, HttpClient.HttpClient(HttpConnectionManager)

Method Summary

void
closeIdleConnections(long idleTimeout)
Closes connections that have been idle for at least the given amount of time.
HttpConnection
getConnection(HostConfiguration hostConfiguration)
Gets an HttpConnection for a given host configuration.
HttpConnection
getConnection(HostConfiguration hostConfiguration, long timeout)
Deprecated. Use #getConnectionWithTimeout(HostConfiguration, long)
HttpConnection
getConnectionWithTimeout(HostConfiguration hostConfiguration, long timeout)
Gets an HttpConnection for a given host configuration.
HttpConnectionManagerParams
getParams()
Returns parameters associated with this connection manager.
void
releaseConnection(HttpConnection conn)
Releases the given HttpConnection for use by other requests.
void
setParams(HttpConnectionManagerParams params)
Assigns parameters for this connection manager.

Method Details

closeIdleConnections

public void closeIdleConnections(long idleTimeout)
Closes connections that have been idle for at least the given amount of time. Only connections that are currently owned, not checked out, are subject to idle timeouts.
Parameters:
idleTimeout - the minimum idle time, in milliseconds, for connections to be closed
Since:
3.0

getConnection

public HttpConnection getConnection(HostConfiguration hostConfiguration)
Gets an HttpConnection for a given host configuration. If a connection is not available this method will block until one is. The connection manager should be registered with any HttpConnection that is created.
Parameters:
hostConfiguration - the host configuration to use to configure the connection
Returns:
an HttpConnection for the given configuration

getConnection

public HttpConnection getConnection(HostConfiguration hostConfiguration,
                                    long timeout)
            throws HttpException

Deprecated. Use #getConnectionWithTimeout(HostConfiguration, long)

Gets an HttpConnection for a given host configuration. If a connection is not available, this method will block for at most the specified number of milliseconds or until a connection becomes available. The connection manager should be registered with any HttpConnection that is created.
Parameters:
hostConfiguration - the host configuration to use to configure the connection
timeout - - the time (in milliseconds) to wait for a connection to become available, 0 to specify an infinite timeout
Returns:
an HttpConnection for the given configuraiton
Throws:
HttpException - if no connection becomes available before the timeout expires

getConnectionWithTimeout

public HttpConnection getConnectionWithTimeout(HostConfiguration hostConfiguration,
                                               long timeout)
            throws ConnectionPoolTimeoutException
Gets an HttpConnection for a given host configuration. If a connection is not available, this method will block for at most the specified number of milliseconds or until a connection becomes available. The connection manager should be registered with any HttpConnection that is created.
Parameters:
hostConfiguration - the host configuration to use to configure the connection
timeout - - the time (in milliseconds) to wait for a connection to become available, 0 to specify an infinite timeout
Returns:
an HttpConnection for the given configuraiton
Throws:
ConnectionPoolTimeoutException - if no connection becomes available before the timeout expires
Since:
3.0

getParams

public HttpConnectionManagerParams getParams()
Returns parameters associated with this connection manager.
Since:
3.0

releaseConnection

public void releaseConnection(HttpConnection conn)
Releases the given HttpConnection for use by other requests.
Parameters:
conn - - The HttpConnection to make available.

setParams

public void setParams(HttpConnectionManagerParams params)
Assigns parameters for this connection manager.
Since:
3.0

Copyright (c) 1999-2005 - Apache Software Foundation