## org.apache.http.pool
Class PoolEntry<T,C>

    java.lang.Object
      org.apache.http.pool.PoolEntry<T,C>

Type Parameters:
  `T` - the route type that represents the opposite endpoint of a pooled connection.
  `C` - the connection type.

Direct Known Subclasses:
  BasicNIOPoolEntry, BasicPoolEntry

    @ThreadSafe
    public abstract class PoolEntry<T,C>

extends Object

Pool entry containing a pool connection object along with its route.

The connection contained by the pool entry may have an expiration time which can be either set upon construction time or updated with the `updateExpiry(long, TimeUnit)`.

Pool entry may also have an object associated with it that represents a connection state (usually a security principal or a unique token identifying the user whose credentials have been used while establishing the connection).

Since:
  4.2

Constructor Summary
`PoolEntry(String id, T route, C conn)` Creates new `PoolEntry` instance without an expiry deadline.
`PoolEntry(String id, T route, C conn, long timeToLive, TimeUnit tunit)` Creates new `PoolEntry` instance.

Method Summary
`abstract void` `close()` Invalidates the pool entry and closes the pooled connection associated with it.
`C` `getConnection()`
`long` `getCreated()`
`long` `getExpiry()`
`String` `getId()`
`T` `getRoute()`
`Object` `getState()`
`long` `getUpdated()`
`long` `getValidUnit()`
`abstract boolean` `isClosed()` Returns `true` if the pool entry has been invalidated.
`boolean` `isExpired(long now)`
`void` `setState(Object state)`
`String` `toString()`
`void` `updateExpiry(long time, TimeUnit tunit)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### PoolEntry

    public PoolEntry(String id,
                     T route,
                     C conn,
                     long timeToLive,
                     TimeUnit tunit)

  Creates new `PoolEntry` instance.

  Parameters:
    `id` - unique identifier of the pool entry. May be `null`.
    `route` - route to the opposite endpoint.
    `conn` - the connection.
    `timeToLive` - maximum time to live. May be zero if the connection does not have an expiry deadline.
    `tunit` - time unit.

### PoolEntry

    public PoolEntry(String id,
                     T route,
                     C conn)

  Creates new `PoolEntry` instance without an expiry deadline.

  Parameters:
    `id` - unique identifier of the pool entry. May be `null`.
    `route` - route to the opposite endpoint.
    `conn` - the connection.

Method Detail

### getId

    public String getId()

### getRoute

    public T getRoute()

### getConnection

    public C getConnection()

### getCreated

    public long getCreated()

### getValidUnit

    public long getValidUnit()

### getState

    public Object getState()

### setState

    public void setState(Object state)

### getUpdated

    public long getUpdated()

### getExpiry

    public long getExpiry()

### updateExpiry

    public void updateExpiry(long time,
                             TimeUnit tunit)

### isExpired

    public boolean isExpired(long now)

### close

    public abstract void close()

  Invalidates the pool entry and closes the pooled connection associated with it.

### isClosed

    public abstract boolean isClosed()

  Returns `true` if the pool entry has been invalidated.

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

Copyright © 2005-2013 The Apache Software Foundation. All Rights Reserved.