Class SingleClientConnManager

  • All Implemented Interfaces:
    ClientConnectionManager

    @Contract(threading=SAFE)
    @Deprecated
    public class SingleClientConnManager
    extends java.lang.Object
    implements ClientConnectionManager
    Deprecated.
    A connection manager for a single connection. This connection manager maintains only one active connection at a time. Even though this class is thread-safe it ought to be used by one execution thread only.

    SingleClientConnManager will make an effort to reuse the connection for subsequent requests with the same route. It will, however, close the existing connection and open it for the given route, if the route of the persistent connection does not match that of the connection request. If the connection has been already been allocated IllegalStateException is thrown.

    Since:
    4.0
    • Field Detail

      • MISUSE_MESSAGE

        public static final java.lang.String MISUSE_MESSAGE
        Deprecated.
        The message to be logged on multiple allocation.
        See Also:
        Constant Field Values
      • schemeRegistry

        protected final SchemeRegistry schemeRegistry
        Deprecated.
        The schemes supported by this connection manager.
      • connOperator

        protected final ClientConnectionOperator connOperator
        Deprecated.
        The operator for opening and updating connections.
      • alwaysShutDown

        protected final boolean alwaysShutDown
        Deprecated.
        Whether the connection should be shut down on release.
      • lastReleaseTime

        protected volatile long lastReleaseTime
        Deprecated.
        The time of the last connection release, or -1.
      • connectionExpiresTime

        protected volatile long connectionExpiresTime
        Deprecated.
        The time the last released connection expires and shouldn't be reused.
      • isShutDown

        protected volatile boolean isShutDown
        Deprecated.
        Indicates whether this connection manager is shut down.
    • Constructor Detail

      • SingleClientConnManager

        @Deprecated
        public SingleClientConnManager​(org.apache.http.params.HttpParams params,
                                       SchemeRegistry schreg)
        Creates a new simple connection manager.
        Parameters:
        params - the parameters for this manager
        schreg - the scheme registry
      • SingleClientConnManager

        public SingleClientConnManager​(SchemeRegistry schreg)
        Deprecated.
        Creates a new simple connection manager.
        Parameters:
        schreg - the scheme registry
      • SingleClientConnManager

        public SingleClientConnManager()
        Deprecated.
        Since:
        4.1
    • Method Detail

      • finalize

        protected void finalize()
                         throws java.lang.Throwable
        Deprecated.
        Overrides:
        finalize in class java.lang.Object
        Throws:
        java.lang.Throwable
      • createConnectionOperator

        protected ClientConnectionOperator createConnectionOperator​(SchemeRegistry schreg)
        Deprecated.
        Hook for creating the connection operator. It is called by the constructor. Derived classes can override this method to change the instantiation of the operator. The default implementation here instantiates DefaultClientConnectionOperator.
        Parameters:
        schreg - the scheme registry to use, or null
        Returns:
        the connection operator to use
      • assertStillUp

        protected final void assertStillUp()
                                    throws java.lang.IllegalStateException
        Deprecated.
        Asserts that this manager is not shut down.
        Throws:
        java.lang.IllegalStateException - if this manager is shut down
      • getConnection

        public ManagedClientConnection getConnection​(HttpRoute route,
                                                     java.lang.Object state)
        Deprecated.
        Obtains a connection.
        Parameters:
        route - where the connection should point to
        Returns:
        a connection that can be used to communicate along the given route
      • releaseConnection

        public void releaseConnection​(ManagedClientConnection conn,
                                      long validDuration,
                                      java.util.concurrent.TimeUnit timeUnit)
        Deprecated.
        Description copied from interface: ClientConnectionManager
        Releases a connection for use by others. You may optionally specify how long the connection is valid to be reused. Values <= 0 are considered to be valid forever. If the connection is not marked as reusable, the connection will not be reused regardless of the valid duration. If the connection has been released before, the call will be ignored.
        Specified by:
        releaseConnection in interface ClientConnectionManager
        Parameters:
        conn - the connection to release
        validDuration - the duration of time this connection is valid for reuse
        timeUnit - the unit of time validDuration is measured in
        See Also:
        ClientConnectionManager.closeExpiredConnections()
      • closeExpiredConnections

        public void closeExpiredConnections()
        Deprecated.
        Description copied from interface: ClientConnectionManager
        Closes all expired connections in the pool. Open connections in the pool that have not been used for the timespan defined when the connection was released will be closed. Currently allocated connections are not subject to this method. Times will be checked with milliseconds precision.
        Specified by:
        closeExpiredConnections in interface ClientConnectionManager
      • closeIdleConnections

        public void closeIdleConnections​(long idletime,
                                         java.util.concurrent.TimeUnit timeUnit)
        Deprecated.
        Description copied from interface: ClientConnectionManager
        Closes idle connections in the pool. Open connections in the pool that have not been used for the timespan given by the argument will be closed. Currently allocated connections are not subject to this method. Times will be checked with milliseconds precision All expired connections will also be closed.
        Specified by:
        closeIdleConnections in interface ClientConnectionManager
        Parameters:
        idletime - the idle time of connections to be closed
        timeUnit - the unit for the idletime
        See Also:
        ClientConnectionManager.closeExpiredConnections()
      • shutdown

        public void shutdown()
        Deprecated.
        Description copied from interface: ClientConnectionManager
        Shuts down this connection manager and releases allocated resources. This includes closing all connections, whether they are currently used or not.
        Specified by:
        shutdown in interface ClientConnectionManager
      • revokeConnection

        protected void revokeConnection()
        Deprecated.