Package org.apache.http.nio.pool
Class AbstractNIOConnPool<T,C,E extends org.apache.http.pool.PoolEntry<T,C>>
- java.lang.Object
-
- org.apache.http.nio.pool.AbstractNIOConnPool<T,C,E>
-
- Type Parameters:
T- routeC- connection objectE- pool entry
- All Implemented Interfaces:
org.apache.http.pool.ConnPool<T,E>,org.apache.http.pool.ConnPoolControl<T>
- Direct Known Subclasses:
BasicNIOConnPool
@Contract(threading=SAFE_CONDITIONAL) public abstract class AbstractNIOConnPool<T,C,E extends org.apache.http.pool.PoolEntry<T,C>> extends java.lang.Object implements org.apache.http.pool.ConnPool<T,E>, org.apache.http.pool.ConnPoolControl<T>Abstract non-blocking connection pool.- Since:
- 4.2
-
-
Constructor Summary
Constructors Constructor Description AbstractNIOConnPool(ConnectingIOReactor ioReactor, NIOConnFactory<T,C> connFactory, int defaultMaxPerRoute, int maxTotal)AbstractNIOConnPool(ConnectingIOReactor ioReactor, NIOConnFactory<T,C> connFactory, SocketAddressResolver<T> addressResolver, int defaultMaxPerRoute, int maxTotal)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidcloseExpired()voidcloseIdle(long idletime, java.util.concurrent.TimeUnit timeUnit)protected abstract EcreateEntry(T route, C conn)protected voidenumAvailable(org.apache.http.pool.PoolEntryCallback<T,C> callback)Enumerates all available connections.protected voidenumEntries(java.util.Iterator<E> it, org.apache.http.pool.PoolEntryCallback<T,C> callback)Deprecated.(4.3.2)protected voidenumLeased(org.apache.http.pool.PoolEntryCallback<T,C> callback)Enumerates all leased connections.intgetDefaultMaxPerRoute()intgetMaxPerRoute(T route)intgetMaxTotal()java.util.Set<T>getRoutes()Returns snapshot of all knows routesorg.apache.http.pool.PoolStatsgetStats(T route)org.apache.http.pool.PoolStatsgetTotalStats()booleanisShutdown()java.util.concurrent.Future<E>lease(T route, java.lang.Object state)java.util.concurrent.Future<E>lease(T route, java.lang.Object state, long connectTimeout, long leaseTimeout, java.util.concurrent.TimeUnit timeUnit, org.apache.http.concurrent.FutureCallback<E> callback)java.util.concurrent.Future<E>lease(T route, java.lang.Object state, long connectTimeout, java.util.concurrent.TimeUnit timeUnit, org.apache.http.concurrent.FutureCallback<E> callback)java.util.concurrent.Future<E>lease(T route, java.lang.Object state, org.apache.http.concurrent.FutureCallback<E> callback)protected voidonLease(E entry)protected voidonRelease(E entry)protected voidonReuse(E entry)voidrelease(E entry, boolean reusable)protected voidrequestCancelled(SessionRequest request)protected voidrequestCompleted(SessionRequest request)protected voidrequestFailed(SessionRequest request)protected voidrequestTimeout(SessionRequest request)protected java.net.SocketAddressresolveLocalAddress(T route)Deprecated.(4.3) useSocketAddressResolverprotected java.net.SocketAddressresolveRemoteAddress(T route)Deprecated.(4.3) useSocketAddressResolvervoidsetDefaultMaxPerRoute(int max)voidsetMaxPerRoute(T route, int max)voidsetMaxTotal(int max)voidshutdown(long waitMs)java.lang.StringtoString()voidvalidatePendingRequests()
-
-
-
Constructor Detail
-
AbstractNIOConnPool
@Deprecated public AbstractNIOConnPool(ConnectingIOReactor ioReactor, NIOConnFactory<T,C> connFactory, int defaultMaxPerRoute, int maxTotal)
-
AbstractNIOConnPool
public AbstractNIOConnPool(ConnectingIOReactor ioReactor, NIOConnFactory<T,C> connFactory, SocketAddressResolver<T> addressResolver, int defaultMaxPerRoute, int maxTotal)
- Since:
- 4.3
-
-
Method Detail
-
resolveRemoteAddress
@Deprecated protected java.net.SocketAddress resolveRemoteAddress(T route)
Deprecated.(4.3) useSocketAddressResolver
-
resolveLocalAddress
@Deprecated protected java.net.SocketAddress resolveLocalAddress(T route)
Deprecated.(4.3) useSocketAddressResolver
-
onLease
protected void onLease(E entry)
- Since:
- 4.3
-
onRelease
protected void onRelease(E entry)
- Since:
- 4.3
-
onReuse
protected void onReuse(E entry)
- Since:
- 4.4
-
isShutdown
public boolean isShutdown()
-
shutdown
public void shutdown(long waitMs) throws java.io.IOException- Throws:
java.io.IOException
-
lease
public java.util.concurrent.Future<E> lease(T route, java.lang.Object state, long connectTimeout, java.util.concurrent.TimeUnit timeUnit, org.apache.http.concurrent.FutureCallback<E> callback)
-
lease
public java.util.concurrent.Future<E> lease(T route, java.lang.Object state, long connectTimeout, long leaseTimeout, java.util.concurrent.TimeUnit timeUnit, org.apache.http.concurrent.FutureCallback<E> callback)
- Since:
- 4.3
-
lease
public java.util.concurrent.Future<E> lease(T route, java.lang.Object state, org.apache.http.concurrent.FutureCallback<E> callback)
-
release
public void release(E entry, boolean reusable)
-
validatePendingRequests
public void validatePendingRequests()
-
requestCompleted
protected void requestCompleted(SessionRequest request)
-
requestCancelled
protected void requestCancelled(SessionRequest request)
-
requestFailed
protected void requestFailed(SessionRequest request)
-
requestTimeout
protected void requestTimeout(SessionRequest request)
-
setMaxTotal
public void setMaxTotal(int max)
- Specified by:
setMaxTotalin interfaceorg.apache.http.pool.ConnPoolControl<T>
-
getMaxTotal
public int getMaxTotal()
- Specified by:
getMaxTotalin interfaceorg.apache.http.pool.ConnPoolControl<T>
-
setDefaultMaxPerRoute
public void setDefaultMaxPerRoute(int max)
- Specified by:
setDefaultMaxPerRoutein interfaceorg.apache.http.pool.ConnPoolControl<T>
-
getDefaultMaxPerRoute
public int getDefaultMaxPerRoute()
- Specified by:
getDefaultMaxPerRoutein interfaceorg.apache.http.pool.ConnPoolControl<T>
-
setMaxPerRoute
public void setMaxPerRoute(T route, int max)
- Specified by:
setMaxPerRoutein interfaceorg.apache.http.pool.ConnPoolControl<T>
-
getMaxPerRoute
public int getMaxPerRoute(T route)
- Specified by:
getMaxPerRoutein interfaceorg.apache.http.pool.ConnPoolControl<T>
-
getTotalStats
public org.apache.http.pool.PoolStats getTotalStats()
- Specified by:
getTotalStatsin interfaceorg.apache.http.pool.ConnPoolControl<T>
-
getStats
public org.apache.http.pool.PoolStats getStats(T route)
- Specified by:
getStatsin interfaceorg.apache.http.pool.ConnPoolControl<T>
-
getRoutes
public java.util.Set<T> getRoutes()
Returns snapshot of all knows routes- Since:
- 4.4
-
enumAvailable
protected void enumAvailable(org.apache.http.pool.PoolEntryCallback<T,C> callback)
Enumerates all available connections.- Since:
- 4.3
-
enumLeased
protected void enumLeased(org.apache.http.pool.PoolEntryCallback<T,C> callback)
Enumerates all leased connections.- Since:
- 4.3
-
enumEntries
@Deprecated protected void enumEntries(java.util.Iterator<E> it, org.apache.http.pool.PoolEntryCallback<T,C> callback)
Deprecated.(4.3.2)
-
closeIdle
public void closeIdle(long idletime, java.util.concurrent.TimeUnit timeUnit)
-
closeExpired
public void closeExpired()
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
-