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, wait
info
protected 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 ConnectionInterceptor
javax.resource.ResourceException
protected abstract void internalGetConnection(ConnectionInfo connectionInfo) throws javax.resource.ResourceException
javax.resource.ResourceException
public void returnConnection(ConnectionInfo connectionInfo, ConnectionReturnAction connectionReturnAction)
returnConnection
in interface ConnectionInterceptor
protected 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 ConnectionInterceptor
public int getPartitionCount()
getPartitionCount
in interface PoolingAttributes
public int getPartitionMaxSize()
getPartitionMaxSize
in interface PoolingAttributes
public void setPartitionMaxSize(int newMaxSize) throws InterruptedException
setPartitionMaxSize
in interface PoolingAttributes
InterruptedException
protected 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 PoolingAttributes
public int getConnectionCount()
getConnectionCount
in interface PoolingAttributes
public int getPartitionMinSize()
getPartitionMinSize
in interface PoolingAttributes
public void setPartitionMinSize(int minSize)
setPartitionMinSize
in interface PoolingAttributes
public int getBlockingTimeoutMilliseconds()
getBlockingTimeoutMilliseconds
in interface PoolingAttributes
public void setBlockingTimeoutMilliseconds(int blockingTimeoutMilliseconds)
setBlockingTimeoutMilliseconds
in interface PoolingAttributes
public int getIdleTimeoutMinutes()
getIdleTimeoutMinutes
in interface PoolingAttributes
public void setIdleTimeoutMinutes(int idleTimeoutMinutes)
setIdleTimeoutMinutes
in interface PoolingAttributes
protected abstract void getExpiredManagedConnectionInfos(long threshold, List<ManagedConnectionInfo> killList)
protected boolean addToPool(ManagedConnectionInfo mci)
Copyright © 2015. All rights reserved.