SimpleHttpConnectionManager (HttpClient Library (Version 3.1))
Date: 2016-03-09

org.apache.commons.httpclient

## Class SimpleHttpConnectionManager

- java.lang.Object
- - org.apache.commons.httpclient.SimpleHttpConnectionManager

- All Implemented Interfaces:
    HttpConnectionManager

      public class SimpleHttpConnectionManager
      extends java.lang.Object
      implements HttpConnectionManager

  A connection manager that provides access to a single HttpConnection. This manager makes no attempt to provide exclusive access to the contained HttpConnection.
  Since:
    2.0
  Author:
    Michael Becke, Eric Johnson, Mike Bowler, Oleg Kalnichevski, Laura Werner

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected HttpConnection` | `httpConnection` The http connection

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `SimpleHttpConnectionManager()` The connection manager created with this constructor will always try to keep the connection open (alive) between consecutive requests.
    `SimpleHttpConnectionManager(boolean alwaysClose)` The connection manager created with this constructor will try to keep the connection open (alive) between consecutive requests if the alwaysClose parameter is set to `false`.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `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)` This method always returns the same connection object.
    `HttpConnectionManagerParams` | `getParams()` Returns `parameters` associated with this connection manager.
    `boolean` | `isConnectionStaleCheckingEnabled()` Deprecated. Use `HttpConnectionParams.isStaleCheckingEnabled()`, `HttpConnectionManager.getParams()`.
    `void` | `releaseConnection(HttpConnection conn)` Releases the given HttpConnection for use by other requests.
    `void` | `setConnectionStaleCheckingEnabled(boolean connectionStaleCheckingEnabled)` Deprecated. Use `HttpConnectionParams.setStaleCheckingEnabled(boolean)`, `HttpConnectionManager.getParams()`.
    `void` | `setParams(HttpConnectionManagerParams params)` Assigns `parameters` for this connection manager.
    `void` | `shutdown()` since 3.1

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### httpConnection

          protected HttpConnection httpConnection

      The http connection

  - ### Constructor Detail

    - #### SimpleHttpConnectionManager

          public SimpleHttpConnectionManager(boolean alwaysClose)

      The connection manager created with this constructor will try to keep the connection open (alive) between consecutive requests if the alwaysClose parameter is set to `false`. Otherwise the connection manager will always close connections upon release.
      Parameters:
        `alwaysClose` - if set `true`, the connection manager will always close connections upon release.

    - #### SimpleHttpConnectionManager

          public SimpleHttpConnectionManager()

      The connection manager created with this constructor will always try to keep the connection open (alive) between consecutive requests.

  - ### Method Detail

    - #### getConnection

          public HttpConnection getConnection(HostConfiguration hostConfiguration)

      Description copied from interface: `HttpConnectionManager`
      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.
      Specified by:
        `getConnection` in interface `HttpConnectionManager`
      Parameters:
        `hostConfiguration` - the host configuration to use to configure the connection
      Returns:
        an HttpConnection for the given configuration
      See Also:
        `HttpConnectionManager.getConnection(HostConfiguration)`

    - #### isConnectionStaleCheckingEnabled

          public boolean isConnectionStaleCheckingEnabled()

      Deprecated. Use `HttpConnectionParams.isStaleCheckingEnabled()`, `HttpConnectionManager.getParams()`.
      Gets the staleCheckingEnabled value to be set on HttpConnections that are created.
      Returns:
        `true` if stale checking will be enabled on HttpConections
      See Also:
        `HttpConnection.isStaleCheckingEnabled()`

    - #### setConnectionStaleCheckingEnabled

          public void setConnectionStaleCheckingEnabled(boolean connectionStaleCheckingEnabled)

      Deprecated. Use `HttpConnectionParams.setStaleCheckingEnabled(boolean)`, `HttpConnectionManager.getParams()`.
      Sets the staleCheckingEnabled value to be set on HttpConnections that are created.
      Parameters:
        `connectionStaleCheckingEnabled` - `true` if stale checking will be enabled on HttpConections
      See Also:
        `HttpConnection.setStaleCheckingEnabled(boolean)`

    - #### getConnectionWithTimeout

          public HttpConnection getConnectionWithTimeout(HostConfiguration hostConfiguration,
                                                long timeout)

      This method always returns the same connection object. If the connection is already open, it will be closed and the new host configuration will be applied.
      Specified by:
        `getConnectionWithTimeout` in interface `HttpConnectionManager`
      Parameters:
        `hostConfiguration` - The host configuration specifying the connection details.
        `timeout` - this parameter has no effect. The connection is always returned immediately.
      Returns:
        an HttpConnection for the given configuraiton
      Since:
        3.0
      See Also:
        `HttpConnection.setHttpConnectionManager(HttpConnectionManager)`

    - #### getConnection

          public HttpConnection getConnection(HostConfiguration hostConfiguration,
                                     long timeout)

      Deprecated. Use #getConnectionWithTimeout(HostConfiguration, long)
      Description copied from interface: `HttpConnectionManager`
      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.
      Specified by:
        `getConnection` in interface `HttpConnectionManager`
      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
      See Also:
        `HttpConnectionManager.getConnection(HostConfiguration, long)`

    - #### releaseConnection

          public void releaseConnection(HttpConnection conn)

      Description copied from interface: `HttpConnectionManager`
      Releases the given HttpConnection for use by other requests.
      Specified by:
        `releaseConnection` in interface `HttpConnectionManager`
      Parameters:
        `conn` - - The HttpConnection to make available.
      See Also:
        `HttpConnectionManager.releaseConnection(org.apache.commons.httpclient.HttpConnection)`

    - #### getParams

          public HttpConnectionManagerParams getParams()

      Returns `parameters` associated with this connection manager.
      Specified by:
        `getParams` in interface `HttpConnectionManager`
      Since:
        2.1
      See Also:
        `HttpConnectionManagerParams`

    - #### setParams

          public void setParams(HttpConnectionManagerParams params)

      Assigns `parameters` for this connection manager.
      Specified by:
        `setParams` in interface `HttpConnectionManager`
      Since:
        2.1
      See Also:
        `HttpConnectionManagerParams`

    - #### closeIdleConnections

          public void closeIdleConnections(long idleTimeout)

      Description copied from interface: `HttpConnectionManager`
      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.
      Specified by:
        `closeIdleConnections` in interface `HttpConnectionManager`
      Parameters:
        `idleTimeout` - the minimum idle time, in milliseconds, for connections to be closed
      Since:
        3.0

    - #### shutdown

          public void shutdown()

      since 3.1

Copyright (c) 1999-2005 - Apache Software Foundation