T - routeC - connection objectE - pool entry@ThreadSafe public abstract class AbstractNIOConnPool<T,C,E extends PoolEntry<T,C>> extends java.lang.Object implements ConnPool<T,E>, ConnPoolControl<T>
| Constructor and 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) |
| Modifier and Type | Method and Description |
|---|---|
void |
closeExpired() |
void |
closeIdle(long idletime,
java.util.concurrent.TimeUnit tunit) |
protected abstract E |
createEntry(T route,
C conn) |
protected void |
enumAvailable(PoolEntryCallback<T,C> callback)
Enumerates all available connections.
|
protected void |
enumEntries(java.util.Iterator<E> it,
PoolEntryCallback<T,C> callback) |
protected void |
enumLeased(PoolEntryCallback<T,C> callback)
Enumerates all leased connections.
|
int |
getDefaultMaxPerRoute() |
int |
getMaxPerRoute(T route) |
int |
getMaxTotal() |
PoolStats |
getStats(T route) |
PoolStats |
getTotalStats() |
boolean |
isShutdown() |
java.util.concurrent.Future<E> |
lease(T route,
java.lang.Object state) |
java.util.concurrent.Future<E> |
lease(T route,
java.lang.Object state,
FutureCallback<E> callback) |
java.util.concurrent.Future<E> |
lease(T route,
java.lang.Object state,
long connectTimeout,
long leaseTimeout,
java.util.concurrent.TimeUnit tunit,
FutureCallback<E> callback) |
java.util.concurrent.Future<E> |
lease(T route,
java.lang.Object state,
long connectTimeout,
java.util.concurrent.TimeUnit tunit,
FutureCallback<E> callback) |
protected void |
onLease(E entry) |
protected void |
onRelease(E entry) |
void |
release(E entry,
boolean reusable) |
protected void |
requestCancelled(SessionRequest request) |
protected void |
requestCompleted(SessionRequest request) |
protected void |
requestFailed(SessionRequest request) |
protected void |
requestTimeout(SessionRequest request) |
protected java.net.SocketAddress |
resolveLocalAddress(T route)
Deprecated.
(4.3) use
SocketAddressResolver |
protected java.net.SocketAddress |
resolveRemoteAddress(T route)
Deprecated.
(4.3) use
SocketAddressResolver |
void |
setDefaultMaxPerRoute(int max) |
void |
setMaxPerRoute(T route,
int max) |
void |
setMaxTotal(int max) |
void |
shutdown(long waitMs) |
java.lang.String |
toString() |
void |
validatePendingRequests() |
@Deprecated public AbstractNIOConnPool(ConnectingIOReactor ioreactor, NIOConnFactory<T,C> connFactory, int defaultMaxPerRoute, int maxTotal)
public AbstractNIOConnPool(ConnectingIOReactor ioreactor, NIOConnFactory<T,C> connFactory, SocketAddressResolver<T> addressResolver, int defaultMaxPerRoute, int maxTotal)
@Deprecated protected java.net.SocketAddress resolveRemoteAddress(T route)
SocketAddressResolver@Deprecated protected java.net.SocketAddress resolveLocalAddress(T route)
SocketAddressResolverprotected void onLease(E entry)
protected void onRelease(E entry)
public boolean isShutdown()
public void shutdown(long waitMs)
throws java.io.IOException
java.io.IOExceptionpublic java.util.concurrent.Future<E> lease(T route, java.lang.Object state, long connectTimeout, java.util.concurrent.TimeUnit tunit, FutureCallback<E> callback)
public java.util.concurrent.Future<E> lease(T route, java.lang.Object state, long connectTimeout, long leaseTimeout, java.util.concurrent.TimeUnit tunit, FutureCallback<E> callback)
public java.util.concurrent.Future<E> lease(T route, java.lang.Object state, FutureCallback<E> callback)
public void release(E entry, boolean reusable)
public void validatePendingRequests()
protected void requestCompleted(SessionRequest request)
protected void requestCancelled(SessionRequest request)
protected void requestFailed(SessionRequest request)
protected void requestTimeout(SessionRequest request)
public void setMaxTotal(int max)
setMaxTotal in interface ConnPoolControl<T>public int getMaxTotal()
getMaxTotal in interface ConnPoolControl<T>public void setDefaultMaxPerRoute(int max)
setDefaultMaxPerRoute in interface ConnPoolControl<T>public int getDefaultMaxPerRoute()
getDefaultMaxPerRoute in interface ConnPoolControl<T>public void setMaxPerRoute(T route, int max)
setMaxPerRoute in interface ConnPoolControl<T>public int getMaxPerRoute(T route)
getMaxPerRoute in interface ConnPoolControl<T>public PoolStats getTotalStats()
getTotalStats in interface ConnPoolControl<T>public PoolStats getStats(T route)
getStats in interface ConnPoolControl<T>protected void enumAvailable(PoolEntryCallback<T,C> callback)
protected void enumLeased(PoolEntryCallback<T,C> callback)
protected void enumEntries(java.util.Iterator<E> it, PoolEntryCallback<T,C> callback)
public void closeIdle(long idletime,
java.util.concurrent.TimeUnit tunit)
public void closeExpired()
public java.lang.String toString()
toString in class java.lang.Object