public abstract class AbstractSinglePoolConnectionInterceptor extends Object implements ConnectionInterceptor, PoolingAttributes
| Modifier and Type | Class and Description |
|---|---|
protected class |
AbstractSinglePoolConnectionInterceptor.FillTask |
| Modifier and Type | Field and Description |
|---|---|
protected int |
blockingTimeoutMilliseconds |
protected int |
connectionCount |
protected boolean |
destroyed |
protected long |
idleTimeoutMilliseconds |
protected static org.slf4j.Logger |
log |
protected int |
maxSize |
protected int |
minSize |
protected ConnectionInterceptor |
next |
protected Semaphore |
permits |
protected int |
shrinkLater |
protected Timer |
timer |
| Constructor and Description |
|---|
AbstractSinglePoolConnectionInterceptor(ConnectionInterceptor next,
int maxSize,
int minSize,
int blockingTimeoutMilliseconds,
int idleTimeoutMinutes) |
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
addToPool(ManagedConnectionInfo mci) |
void |
destroy() |
protected abstract void |
doAdd(ManagedConnectionInfo mci) |
protected abstract boolean |
doRemove(ManagedConnectionInfo mci) |
int |
getBlockingTimeoutMilliseconds() |
void |
getConnection(ConnectionInfo connectionInfo) |
int |
getConnectionCount() |
protected abstract void |
getExpiredManagedConnectionInfos(long threshold,
List<ManagedConnectionInfo> killList) |
abstract int |
getIdleConnectionCount() |
int |
getIdleTimeoutMinutes() |
int |
getPartitionCount() |
int |
getPartitionMaxSize() |
int |
getPartitionMinSize() |
protected abstract Object |
getPool() |
protected abstract void |
internalDestroy() |
protected abstract void |
internalGetConnection(ConnectionInfo connectionInfo) |
protected boolean |
internalReturn(ConnectionInfo connectionInfo,
ConnectionReturnAction connectionReturnAction) |
void |
returnConnection(ConnectionInfo connectionInfo,
ConnectionReturnAction connectionReturnAction) |
void |
setBlockingTimeoutMilliseconds(int blockingTimeoutMilliseconds) |
void |
setIdleTimeoutMinutes(int idleTimeoutMinutes) |
void |
setPartitionMaxSize(int newMaxSize) |
void |
setPartitionMinSize(int minSize) |
protected abstract void |
transferConnections(int maxSize,
int shrinkNow) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitinfoprotected static org.slf4j.Logger log
protected final ConnectionInterceptor next
protected Semaphore permits
protected int blockingTimeoutMilliseconds
protected int connectionCount
protected long idleTimeoutMilliseconds
protected Timer timer
protected int maxSize
protected int minSize
protected int shrinkLater
protected volatile boolean destroyed
public AbstractSinglePoolConnectionInterceptor(ConnectionInterceptor next, int maxSize, int minSize, int blockingTimeoutMilliseconds, int idleTimeoutMinutes)
public void getConnection(ConnectionInfo connectionInfo) throws javax.resource.ResourceException
getConnection in interface ConnectionInterceptorjavax.resource.ResourceExceptionprotected abstract void internalGetConnection(ConnectionInfo connectionInfo) throws javax.resource.ResourceException
javax.resource.ResourceExceptionpublic void returnConnection(ConnectionInfo connectionInfo, ConnectionReturnAction connectionReturnAction)
returnConnection in interface ConnectionInterceptorprotected boolean internalReturn(ConnectionInfo connectionInfo, ConnectionReturnAction connectionReturnAction)
connectionInfo - connection info to return to poolconnectionReturnAction - whether to return to pool or destroyprotected abstract void internalDestroy()
public void destroy()
destroy in interface ConnectionInterceptorpublic int getPartitionCount()
getPartitionCount in interface PoolingAttributespublic int getPartitionMaxSize()
getPartitionMaxSize in interface PoolingAttributespublic void setPartitionMaxSize(int newMaxSize)
throws InterruptedException
setPartitionMaxSize in interface PoolingAttributesInterruptedExceptionprotected abstract boolean doRemove(ManagedConnectionInfo mci)
protected abstract void doAdd(ManagedConnectionInfo mci)
protected abstract Object getPool()
protected abstract void transferConnections(int maxSize,
int shrinkNow)
public abstract int getIdleConnectionCount()
getIdleConnectionCount in interface PoolingAttributespublic int getConnectionCount()
getConnectionCount in interface PoolingAttributespublic int getPartitionMinSize()
getPartitionMinSize in interface PoolingAttributespublic void setPartitionMinSize(int minSize)
setPartitionMinSize in interface PoolingAttributespublic int getBlockingTimeoutMilliseconds()
getBlockingTimeoutMilliseconds in interface PoolingAttributespublic void setBlockingTimeoutMilliseconds(int blockingTimeoutMilliseconds)
setBlockingTimeoutMilliseconds in interface PoolingAttributespublic int getIdleTimeoutMinutes()
getIdleTimeoutMinutes in interface PoolingAttributespublic void setIdleTimeoutMinutes(int idleTimeoutMinutes)
setIdleTimeoutMinutes in interface PoolingAttributesprotected abstract void getExpiredManagedConnectionInfos(long threshold,
List<ManagedConnectionInfo> killList)
protected boolean addToPool(ManagedConnectionInfo mci)
Copyright © 2023. All rights reserved.