org.apache.http.impl.conn.tsccm

## Class AbstractConnPool

- java.lang.Object
- - org.apache.http.impl.conn.tsccm.AbstractConnPool

- Direct Known Subclasses:
    ConnPoolByRoute

  Deprecated.
  (4.2) use `AbstractConnPool`

      @Deprecated
      public abstract class AbstractConnPool
      extends Object

  An abstract connection pool. It is used by the `ThreadSafeClientConnManager`. The abstract pool includes a `poolLock`, which is used to synchronize access to the internal pool datastructures. Don't use `synchronized` for that purpose!
  Since:
    4.0

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected IdleConnectionHandler` | `idleConnHandler` Deprecated.
    `protected boolean` | `isShutDown` Deprecated. Indicates whether this pool is shut down.
    `protected Set<BasicPoolEntryRef>` | `issuedConnections` Deprecated.
    `protected Set<BasicPoolEntry>` | `leasedConnections` Deprecated.
    `protected int` | `numConnections` Deprecated.
    `protected Lock` | `poolLock` Deprecated. The global lock for this pool.
    `protected ReferenceQueue<Object>` | `refQueue` Deprecated.

  - ### Constructor Summary

    Constructors
    Modifier | Constructor and Description
    --- | ---
    `protected` | `AbstractConnPool()` Deprecated. Creates a new connection pool.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | `closeConnection(OperatedClientConnection conn)` Deprecated. Closes a connection from this pool.
    `void` | `closeExpiredConnections()` Deprecated.
    `void` | `closeIdleConnections(long idletime, TimeUnit timeUnit)` Deprecated. Closes idle connections.
    `abstract void` | `deleteClosedConnections()` Deprecated. Deletes all entries for closed connections.
    `void` | `enableConnectionGC()` Deprecated.
    `abstract void` | `freeEntry(BasicPoolEntry entry, boolean reusable, long validDuration, TimeUnit timeUnit)` Deprecated. Returns an entry into the pool.
    `BasicPoolEntry` | `getEntry(HttpRoute route, Object state, long timeout, TimeUnit timeUnit)` Deprecated. Obtains a pool entry with a connection within the given timeout.
    `protected abstract void` | `handleLostEntry(HttpRoute route)` Deprecated.
    `void` | `handleReference(Reference<?> ref)` Deprecated.
    `abstract PoolEntryRequest` | `requestPoolEntry(HttpRoute route, Object state)` Deprecated. Returns a new `PoolEntryRequest`, from which a `BasicPoolEntry` can be obtained, or the request can be aborted.
    `void` | `shutdown()` Deprecated. Shuts down this pool and all associated resources.

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

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

- - ### Field Detail

    - #### poolLock

          protected final Lock poolLock

      Deprecated.
      The global lock for this pool.

    - #### leasedConnections

          protected Set<BasicPoolEntry> leasedConnections

      Deprecated.

    - #### numConnections

          protected int numConnections

      Deprecated.

    - #### isShutDown

          protected volatile boolean isShutDown

      Deprecated.
      Indicates whether this pool is shut down.

    - #### issuedConnections

          protected Set<BasicPoolEntryRef> issuedConnections

      Deprecated.

    - #### refQueue

          protected ReferenceQueue<Object> refQueue

      Deprecated.

    - #### idleConnHandler

          protected IdleConnectionHandler idleConnHandler

      Deprecated.

  - ### Constructor Detail

    - #### AbstractConnPool

          protected AbstractConnPool()

      Deprecated.
      Creates a new connection pool.

  - ### Method Detail

    - #### enableConnectionGC

          public void enableConnectionGC()
                                  throws IllegalStateException

      Deprecated.
      Throws:
        `IllegalStateException`

    - #### getEntry

          public final BasicPoolEntry getEntry(HttpRoute route,
                                Object state,
                                long timeout,
                                TimeUnit timeUnit)
                                        throws ConnectionPoolTimeoutException,
                                               InterruptedException

      Deprecated.
      Obtains a pool entry with a connection within the given timeout.
      Parameters:
        `route` - the route for which to get the connection
        `state` - the state
        `timeout` - the timeout, 0 or negative for no timeout
        `timeUnit` - the unit for the `timeout`, may be `null` only if there is no timeout
      Returns:
        pool entry holding a connection for the route
      Throws:
        `ConnectionPoolTimeoutException` - if the timeout expired
        `InterruptedException` - if the calling thread was interrupted

    - #### requestPoolEntry

          public abstract PoolEntryRequest requestPoolEntry(HttpRoute route,
                                          Object state)

      Deprecated.
      Returns a new `PoolEntryRequest`, from which a `BasicPoolEntry` can be obtained, or the request can be aborted.
      Parameters:
        `route` - the route
        `state` - the state
      Returns:
        the entry request

    - #### freeEntry

          public abstract void freeEntry(BasicPoolEntry entry,
                       boolean reusable,
                       long validDuration,
                       TimeUnit timeUnit)

      Deprecated.
      Returns an entry into the pool. The connection of the entry is expected to be in a suitable state, either open and re-usable, or closed. The pool will not make any attempt to determine whether it can be re-used or not.
      Parameters:
        `entry` - the entry for the connection to release
        `reusable` - `true` if the entry is deemed reusable, `false` otherwise.
        `validDuration` - The duration that the entry should remain free and reusable.
        `timeUnit` - The unit of time the duration is measured in.

    - #### handleReference

          public void handleReference(Reference<?> ref)

      Deprecated.

    - #### handleLostEntry

          protected abstract void handleLostEntry(HttpRoute route)

      Deprecated.

    - #### closeIdleConnections

          public void closeIdleConnections(long idletime,
                                  TimeUnit timeUnit)

      Deprecated.
      Closes idle connections.
      Parameters:
        `idletime` - the time the connections should have been idle in order to be closed now
        `timeUnit` - the unit for the `idletime`

    - #### closeExpiredConnections

          public void closeExpiredConnections()

      Deprecated.

    - #### deleteClosedConnections

          public abstract void deleteClosedConnections()

      Deprecated.
      Deletes all entries for closed connections.

    - #### shutdown

          public void shutdown()

      Deprecated.
      Shuts down this pool and all associated resources. Overriding methods MUST call the implementation here!

    - #### closeConnection

          protected void closeConnection(OperatedClientConnection conn)

      Deprecated.
      Closes a connection from this pool.
      Parameters:
        `conn` - the connection to close, or `null`

Copyright © 1999–2022 The Apache Software Foundation. All rights reserved.