public abstract class AbstractSinglePoolConnectionInterceptor extends java.lang.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 java.util.concurrent.Semaphore |
permits |
protected int |
shrinkLater |
protected java.util.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,
java.util.List<ManagedConnectionInfo> killList) |
abstract int |
getIdleConnectionCount() |
int |
getIdleTimeoutMinutes() |
int |
getPartitionCount() |
int |
getPartitionMaxSize() |
int |
getPartitionMinSize() |
protected abstract java.lang.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 java.util.concurrent.Semaphore permits
protected int blockingTimeoutMilliseconds
protected int connectionCount
protected long idleTimeoutMilliseconds
protected java.util.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 java.lang.InterruptedException
setPartitionMaxSize in interface PoolingAttributesjava.lang.InterruptedExceptionprotected abstract boolean doRemove(ManagedConnectionInfo mci)
protected abstract void doAdd(ManagedConnectionInfo mci)
protected abstract java.lang.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,
java.util.List<ManagedConnectionInfo> killList)
protected boolean addToPool(ManagedConnectionInfo mci)
Copyright © 2003-2016 The Apache Software Foundation. All Rights Reserved.