Package org.apache.commons.pool.impl
Class GenericKeyedObjectPoolFactory<K,V>
java.lang.Object
org.apache.commons.pool.impl.GenericKeyedObjectPoolFactory<K,V>
- Type Parameters:
K
- the type of keys in this poolV
- the type of objects held in this pool
- All Implemented Interfaces:
KeyedObjectPoolFactory<K,
V>
public class GenericKeyedObjectPoolFactory<K,V>
extends Object
implements KeyedObjectPoolFactory<K,V>
A factory for creating
GenericKeyedObjectPool
instances.- Since:
- Pool 1.0
- Version:
- $Revision: 1222396 $ $Date: 2011-12-22 14:02:25 -0500 (Thu, 22 Dec 2011) $
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected KeyedPoolableObjectFactory<K,
V> Deprecated.to be removed in pool 2.0.protected boolean
Deprecated.to be removed in pool 2.0.protected int
Deprecated.to be removed in pool 2.0.protected int
Deprecated.to be removed in pool 2.0.protected int
Deprecated.to be removed in pool 2.0.protected long
Deprecated.to be removed in pool 2.0.protected long
Deprecated.to be removed in pool 2.0.protected int
Deprecated.to be removed in pool 2.0.protected int
Deprecated.to be removed in pool 2.0.protected boolean
Deprecated.to be removed in pool 2.0.protected boolean
Deprecated.to be removed in pool 2.0.protected boolean
Deprecated.to be removed in pool 2.0.protected long
Deprecated.to be removed in pool 2.0.protected byte
Deprecated.to be removed in pool 2.0. -
Constructor Summary
ConstructorsConstructorDescriptionCreate a new GenericKeyedObjectPoolFactory.GenericKeyedObjectPoolFactory
(KeyedPoolableObjectFactory<K, V> factory, int maxActive) Create a new GenericKeyedObjectPoolFactory.GenericKeyedObjectPoolFactory
(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait) Create a new GenericKeyedObjectPoolFactory.GenericKeyedObjectPoolFactory
(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, boolean testOnBorrow, boolean testOnReturn) Create a new GenericKeyedObjectPoolFactory.GenericKeyedObjectPoolFactory
(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, int maxIdle) Create a new GenericKeyedObjectPoolFactory.GenericKeyedObjectPoolFactory
(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, int maxIdle, boolean testOnBorrow, boolean testOnReturn) Create a new GenericKeyedObjectPoolFactory.GenericKeyedObjectPoolFactory
(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, int maxIdle, boolean testOnBorrow, boolean testOnReturn, long timeBetweenEvictionRunsMillis, int numTestsPerEvictionRun, long minEvictableIdleTimeMillis, boolean testWhileIdle) Create a new GenericKeyedObjectPoolFactory.GenericKeyedObjectPoolFactory
(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, int maxIdle, int maxTotal) Create a new GenericKeyedObjectPoolFactory.GenericKeyedObjectPoolFactory
(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, int maxIdle, int maxTotal, boolean testOnBorrow, boolean testOnReturn, long timeBetweenEvictionRunsMillis, int numTestsPerEvictionRun, long minEvictableIdleTimeMillis, boolean testWhileIdle) Create a new GenericKeyedObjectPoolFactory.GenericKeyedObjectPoolFactory
(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, int maxIdle, int maxTotal, int minIdle, boolean testOnBorrow, boolean testOnReturn, long timeBetweenEvictionRunsMillis, int numTestsPerEvictionRun, long minEvictableIdleTimeMillis, boolean testWhileIdle) Create a new GenericKeyedObjectPoolFactory.GenericKeyedObjectPoolFactory
(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, int maxIdle, int maxTotal, int minIdle, boolean testOnBorrow, boolean testOnReturn, long timeBetweenEvictionRunsMillis, int numTestsPerEvictionRun, long minEvictableIdleTimeMillis, boolean testWhileIdle, boolean lifo) Create a new GenericKeyedObjectPoolFactory.GenericKeyedObjectPoolFactory
(KeyedPoolableObjectFactory<K, V> factory, GenericKeyedObjectPool.Config config) Create a new GenericKeyedObjectPoolFactory. -
Method Summary
Modifier and TypeMethodDescriptionCreate a new GenericKeyedObjectPool with the currently configured properties.boolean
getLifo()
int
int
int
long
long
int
int
boolean
boolean
boolean
long
byte
-
Field Details
-
_maxIdle
Deprecated.to be removed in pool 2.0. UsegetMaxIdle()
.ThemaxIdle
setting for pools created by this factory. -
_maxActive
Deprecated.to be removed in pool 2.0. UsegetMaxActive()
.ThemaxActive
setting for pools created by this factory. -
_maxTotal
Deprecated.to be removed in pool 2.0. UsegetMaxTotal()
.ThemaxTotal
setting for pools created by this factory. -
_minIdle
Deprecated.to be removed in pool 2.0. UsegetMinIdle()
.TheminIdle
setting for pools created by this factory. -
_maxWait
Deprecated.to be removed in pool 2.0. UsegetMaxWait()
.ThemaxWait
setting for pools created by this factory. -
_whenExhaustedAction
Deprecated.to be removed in pool 2.0. UsegetWhenExhaustedAction()
.ThewhenExhaustedAction
setting for pools created by this factory. -
_testOnBorrow
Deprecated.to be removed in pool 2.0. UsegetTestOnBorrow()
.ThetestOnBorrow
setting for pools created by this factory. -
_testOnReturn
Deprecated.to be removed in pool 2.0. UsegetTestOnReturn()
.ThetestOnReturn
setting for pools created by this factory. -
_testWhileIdle
Deprecated.to be removed in pool 2.0. UsegetTestWhileIdle()
.ThetestWhileIdle
setting for pools created by this factory. -
_timeBetweenEvictionRunsMillis
Deprecated.to be removed in pool 2.0. UsegetTimeBetweenEvictionRunsMillis()
.ThetimeBetweenEvictionRunsMillis
setting for pools created by this factory. -
_numTestsPerEvictionRun
Deprecated.to be removed in pool 2.0. UsegetNumTestsPerEvictionRun()
.ThenumTestsPerEvictionRun
setting for pools created by this factory. -
_minEvictableIdleTimeMillis
Deprecated.to be removed in pool 2.0. UsegetMinEvictableIdleTimeMillis()
.TheminEvictableIdleTimeMillis
setting for pools created by this factory. -
_factory
Deprecated.to be removed in pool 2.0. UsegetFactory()
.TheKeyedPoolableObjectFactory
used by pools created by this factory. -
_lifo
Deprecated.to be removed in pool 2.0. UsegetLifo()
.Thelifo
setting for pools created by this factory.
-
-
Constructor Details
-
GenericKeyedObjectPoolFactory
Create a new GenericKeyedObjectPoolFactory.- Parameters:
factory
- the KeyedPoolableObjectFactory to used by created pools.- See Also:
-
GenericKeyedObjectPoolFactory
public GenericKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K, V> factory, GenericKeyedObjectPool.Config config) throws NullPointerExceptionCreate a new GenericKeyedObjectPoolFactory.- Parameters:
factory
- the KeyedPoolableObjectFactory to used by created pools.config
- a non-null GenericKeyedObjectPool.Config describing the configuration.- Throws:
NullPointerException
- when config isnull
.- See Also:
-
GenericKeyedObjectPoolFactory
Create a new GenericKeyedObjectPoolFactory.- Parameters:
factory
- the KeyedPoolableObjectFactory to used by created pools.maxActive
- the maximum number of objects that can be borrowed from pools at one time.- See Also:
-
GenericKeyedObjectPoolFactory
public GenericKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait) Create a new GenericKeyedObjectPoolFactory.- Parameters:
factory
- the KeyedPoolableObjectFactory to used by created pools.maxActive
- the maximum number of objects that can be borrowed from pools at one time.whenExhaustedAction
- the action to take when the pool is exhausted.maxWait
- the maximum amount of time to wait for an idle object when the pool is exhausted.- See Also:
-
GenericKeyedObjectPoolFactory
public GenericKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, boolean testOnBorrow, boolean testOnReturn) Create a new GenericKeyedObjectPoolFactory.- Parameters:
factory
- the KeyedPoolableObjectFactory to used by created pools.maxActive
- the maximum number of objects that can be borrowed from pools at one time.whenExhaustedAction
- the action to take when the pool is exhausted.maxWait
- the maximum amount of time to wait for an idle object when the pool is exhausted.testOnBorrow
- whether to validate objects before they are returned by borrowObject.testOnReturn
- whether to validate objects after they are returned to returnObject.- See Also:
-
GenericKeyedObjectPoolFactory
public GenericKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, int maxIdle) Create a new GenericKeyedObjectPoolFactory.- Parameters:
factory
- the KeyedPoolableObjectFactory to used by created pools.maxActive
- the maximum number of objects that can be borrowed from pools at one time.whenExhaustedAction
- the action to take when the pool is exhausted.maxWait
- the maximum amount of time to wait for an idle object when the pool is exhausted.maxIdle
- the maximum number of idle objects in the pools.- See Also:
-
GenericKeyedObjectPoolFactory
public GenericKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, int maxIdle, int maxTotal) Create a new GenericKeyedObjectPoolFactory.- Parameters:
factory
- the KeyedPoolableObjectFactory to used by created pools.maxActive
- the maximum number of objects that can be borrowed from pools at one time.whenExhaustedAction
- the action to take when the pool is exhausted.maxWait
- the maximum amount of time to wait for an idle object when the pool is exhausted.maxIdle
- the maximum number of idle objects in the pools.maxTotal
- the maximum number of objects that can exists at one time.
-
GenericKeyedObjectPoolFactory
public GenericKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, int maxIdle, boolean testOnBorrow, boolean testOnReturn) Create a new GenericKeyedObjectPoolFactory.- Parameters:
factory
- the KeyedPoolableObjectFactory to used by created pools.maxActive
- the maximum number of objects that can be borrowed from pools at one time.whenExhaustedAction
- the action to take when the pool is exhausted.maxWait
- the maximum amount of time to wait for an idle object when the pool is exhausted.maxIdle
- the maximum number of idle objects in the pools.testOnBorrow
- whether to validate objects before they are returned by borrowObject.testOnReturn
- whether to validate objects after they are returned to returnObject.- See Also:
-
GenericKeyedObjectPoolFactory
public GenericKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, int maxIdle, boolean testOnBorrow, boolean testOnReturn, long timeBetweenEvictionRunsMillis, int numTestsPerEvictionRun, long minEvictableIdleTimeMillis, boolean testWhileIdle) Create a new GenericKeyedObjectPoolFactory.- Parameters:
factory
- the KeyedPoolableObjectFactory to used by created pools.maxActive
- the maximum number of objects that can be borrowed from pools at one time.whenExhaustedAction
- the action to take when the pool is exhausted.maxWait
- the maximum amount of time to wait for an idle object when the pool is exhausted.maxIdle
- the maximum number of idle objects in the pools.testOnBorrow
- whether to validate objects before they are returned by borrowObject.testOnReturn
- whether to validate objects after they are returned to returnObject.timeBetweenEvictionRunsMillis
- the number of milliseconds to sleep between examining idle objects for eviction.numTestsPerEvictionRun
- the number of idle objects to examine per run of the evictor.minEvictableIdleTimeMillis
- the minimum number of milliseconds an object can sit idle in the pool before it is eligible for eviction.testWhileIdle
- whether to validate objects in the idle object eviction thread.- See Also:
-
GenericKeyedObjectPoolFactory
public GenericKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, int maxIdle, int maxTotal, boolean testOnBorrow, boolean testOnReturn, long timeBetweenEvictionRunsMillis, int numTestsPerEvictionRun, long minEvictableIdleTimeMillis, boolean testWhileIdle) Create a new GenericKeyedObjectPoolFactory.- Parameters:
factory
- the KeyedPoolableObjectFactory to used by created pools.maxActive
- the maximum number of objects that can be borrowed from pools at one time.whenExhaustedAction
- the action to take when the pool is exhausted.maxWait
- the maximum amount of time to wait for an idle object when the pool is exhausted.maxIdle
- the maximum number of idle objects in the pools.maxTotal
- the maximum number of objects that can exists at one time.testOnBorrow
- whether to validate objects before they are returned by borrowObject.testOnReturn
- whether to validate objects after they are returned to returnObject.timeBetweenEvictionRunsMillis
- the number of milliseconds to sleep between examining idle objects for eviction.numTestsPerEvictionRun
- the number of idle objects to examine per run of the evictor.minEvictableIdleTimeMillis
- the minimum number of milliseconds an object can sit idle in the pool before it is eligible for eviction.testWhileIdle
- whether to validate objects in the idle object eviction thread.- See Also:
-
GenericKeyedObjectPoolFactory
public GenericKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, int maxIdle, int maxTotal, int minIdle, boolean testOnBorrow, boolean testOnReturn, long timeBetweenEvictionRunsMillis, int numTestsPerEvictionRun, long minEvictableIdleTimeMillis, boolean testWhileIdle) Create a new GenericKeyedObjectPoolFactory.- Parameters:
factory
- the KeyedPoolableObjectFactory to used by created pools.maxActive
- the maximum number of objects that can be borrowed from pools at one time.whenExhaustedAction
- the action to take when the pool is exhausted.maxWait
- the maximum amount of time to wait for an idle object when the pool is exhausted.maxIdle
- the maximum number of idle objects in the pools.maxTotal
- the maximum number of objects that can exists at one time.minIdle
- the minimum number of idle objects to have in the pool at any one time.testOnBorrow
- whether to validate objects before they are returned by borrowObject.testOnReturn
- whether to validate objects after they are returned to returnObject.timeBetweenEvictionRunsMillis
- the number of milliseconds to sleep between examining idle objects for eviction.numTestsPerEvictionRun
- the number of idle objects to examine per run of the evictor.minEvictableIdleTimeMillis
- the minimum number of milliseconds an object can sit idle in the pool before it is eligible for eviction.testWhileIdle
- whether to validate objects in the idle object eviction thread.- Since:
- Pool 1.3
- See Also:
-
GenericKeyedObjectPoolFactory
public GenericKeyedObjectPoolFactory(KeyedPoolableObjectFactory<K, V> factory, int maxActive, byte whenExhaustedAction, long maxWait, int maxIdle, int maxTotal, int minIdle, boolean testOnBorrow, boolean testOnReturn, long timeBetweenEvictionRunsMillis, int numTestsPerEvictionRun, long minEvictableIdleTimeMillis, boolean testWhileIdle, boolean lifo) Create a new GenericKeyedObjectPoolFactory.- Parameters:
factory
- the KeyedPoolableObjectFactory to used by created pools.maxActive
- the maximum number of objects that can be borrowed from pools at one time.whenExhaustedAction
- the action to take when the pool is exhausted.maxWait
- the maximum amount of time to wait for an idle object when the pool is exhausted.maxIdle
- the maximum number of idle objects in the pools.maxTotal
- the maximum number of objects that can exists at one time.minIdle
- the minimum number of idle objects to have in the pool at any one time.testOnBorrow
- whether to validate objects before they are returned by borrowObject.testOnReturn
- whether to validate objects after they are returned to returnObject.timeBetweenEvictionRunsMillis
- the number of milliseconds to sleep between examining idle objects for eviction.numTestsPerEvictionRun
- the number of idle objects to examine per run of the evictor.minEvictableIdleTimeMillis
- the minimum number of milliseconds an object can sit idle in the pool before it is eligible for eviction.testWhileIdle
- whether to validate objects in the idle object eviction thread.lifo
- whether or not objects are returned in last-in-first-out order from the idle object pool.- Since:
- Pool 1.4
- See Also:
-
-
Method Details
-
createPool
Create a new GenericKeyedObjectPool with the currently configured properties.- Specified by:
createPool
in interfaceKeyedObjectPoolFactory<K,
V> - Returns:
- GenericKeyedObjectPool with
Configuration
determined by current property settings
-
getMaxIdle
public int getMaxIdle()- Returns:
- the
maxIdle
setting for pools created by this factory. - Since:
- 1.5.5
-
getMaxActive
public int getMaxActive()- Returns:
- the
maxActive
setting for pools created by this factory. - Since:
- 1.5.5
-
getMaxTotal
public int getMaxTotal()- Returns:
- the
maxTotal
setting for pools created by this factory. - Since:
- 1.5.5
-
getMinIdle
public int getMinIdle()- Returns:
- the
minIdle
setting for pools created by this factory. - Since:
- 1.5.5
-
getMaxWait
public long getMaxWait()- Returns:
- the
maxWait
setting for pools created by this factory. - Since:
- 1.5.5
-
getWhenExhaustedAction
public byte getWhenExhaustedAction()- Returns:
- the
whenExhaustedAction
setting for pools created by this factory. - Since:
- 1.5.5
-
getTestOnBorrow
public boolean getTestOnBorrow()- Returns:
- the
testOnBorrow
setting for pools created by this factory. - Since:
- 1.5.5
-
getTestOnReturn
public boolean getTestOnReturn()- Returns:
- the
testOnReturn
setting for pools created by this factory. - Since:
- 1.5.5
-
getTestWhileIdle
public boolean getTestWhileIdle()- Returns:
- the
testWhileIdle
setting for pools created by this factory. - Since:
- 1.5.5
-
getTimeBetweenEvictionRunsMillis
public long getTimeBetweenEvictionRunsMillis()- Returns:
- the
timeBetweenEvictionRunsMillis
setting for pools created by this factory. - Since:
- 1.5.5
-
getNumTestsPerEvictionRun
public int getNumTestsPerEvictionRun()- Returns:
- the
numTestsPerEvictionRun
setting for pools created by this factory. - Since:
- 1.5.5
-
getMinEvictableIdleTimeMillis
public long getMinEvictableIdleTimeMillis()- Returns:
- the
minEvictableIdleTimeMillis
setting for pools created by this factory. - Since:
- 1.5.5
-
getFactory
- Returns:
- the
KeyedPoolableObjectFactory
used by pools created by this factory. - Since:
- 1.5.5
-
getLifo
public boolean getLifo()- Returns:
- the
lifo
setting for pools created by this factory. - Since:
- 1.5.5
-