T
- routeC
- connection objectE
- pool entry@Contract(threading=SAFE_CONDITIONAL) public abstract class AbstractNIOConnPool<T,C,E extends PoolEntry<T,C>> extends 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,
TimeUnit tunit) |
protected abstract E |
createEntry(T route,
C conn) |
protected void |
enumAvailable(PoolEntryCallback<T,C> callback)
Enumerates all available connections.
|
protected void |
enumEntries(Iterator<E> it,
PoolEntryCallback<T,C> callback)
Deprecated.
(4.3.2)
|
protected void |
enumLeased(PoolEntryCallback<T,C> callback)
Enumerates all leased connections.
|
int |
getDefaultMaxPerRoute() |
int |
getMaxPerRoute(T route) |
int |
getMaxTotal() |
Set<T> |
getRoutes()
Returns snapshot of all knows routes
|
PoolStats |
getStats(T route) |
PoolStats |
getTotalStats() |
boolean |
isShutdown() |
Future<E> |
lease(T route,
Object state) |
Future<E> |
lease(T route,
Object state,
FutureCallback<E> callback)
Attempts to lease a connection for the given route and with the given
state from the pool.
|
Future<E> |
lease(T route,
Object state,
long connectTimeout,
long leaseTimeout,
TimeUnit tunit,
FutureCallback<E> callback) |
Future<E> |
lease(T route,
Object state,
long connectTimeout,
TimeUnit tunit,
FutureCallback<E> callback) |
protected void |
onLease(E entry) |
protected void |
onRelease(E entry) |
protected void |
onReuse(E entry) |
void |
release(E entry,
boolean reusable)
Releases the pool entry back to the pool.
|
protected void |
requestCancelled(SessionRequest request) |
protected void |
requestCompleted(SessionRequest request) |
protected void |
requestFailed(SessionRequest request) |
protected void |
requestTimeout(SessionRequest request) |
protected SocketAddress |
resolveLocalAddress(T route)
Deprecated.
(4.3) use
SocketAddressResolver |
protected 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) |
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 SocketAddress resolveRemoteAddress(T route)
SocketAddressResolver
@Deprecated protected SocketAddress resolveLocalAddress(T route)
SocketAddressResolver
protected void onLease(E entry)
protected void onRelease(E entry)
protected void onReuse(E entry)
public boolean isShutdown()
public void shutdown(long waitMs) throws IOException
IOException
public Future<E> lease(T route, Object state, long connectTimeout, TimeUnit tunit, FutureCallback<E> callback)
public Future<E> lease(T route, Object state, long connectTimeout, long leaseTimeout, TimeUnit tunit, FutureCallback<E> callback)
public Future<E> lease(T route, Object state, FutureCallback<E> callback)
ConnPool
lease
in interface ConnPool<T,E extends PoolEntry<T,C>>
route
- route of the connection.state
- arbitrary object that represents a particular state
(usually a security principal or a unique token identifying
the user whose credentials have been used while establishing the connection).
May be null
.callback
- operation completion callback.public void release(E entry, boolean reusable)
ConnPool
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)
@Deprecated protected void enumEntries(Iterator<E> it, PoolEntryCallback<T,C> callback)
public void closeIdle(long idletime, TimeUnit tunit)
public void closeExpired()
Copyright © 2005–2022 The Apache Software Foundation. All rights reserved.