Package org.apache.commons.dbcp
Class AbandonedObjectPool
java.lang.Object
org.apache.commons.pool.BaseObjectPool
org.apache.commons.pool.impl.GenericObjectPool
org.apache.commons.dbcp.AbandonedObjectPool
- All Implemented Interfaces:
org.apache.commons.pool.ObjectPool
public class AbandonedObjectPool
extends org.apache.commons.pool.impl.GenericObjectPool
An implementation of a Jakarta-Commons ObjectPool which tracks JDBC connections and can recover abandoned db connections. If logAbandoned=true, a stack trace will be printed for any abandoned db connections recovered.
- Version:
- $Revision: 899987 $ $Date: 2010-01-16 11:51:16 -0500 (Sat, 16 Jan 2010) $
- Author:
- Glenn L. Nielsen
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.commons.pool.impl.GenericObjectPool
org.apache.commons.pool.impl.GenericObjectPool.Config
-
Field Summary
Fields inherited from class org.apache.commons.pool.impl.GenericObjectPool
DEFAULT_LIFO, DEFAULT_MAX_ACTIVE, DEFAULT_MAX_IDLE, DEFAULT_MAX_WAIT, DEFAULT_MIN_EVICTABLE_IDLE_TIME_MILLIS, DEFAULT_MIN_IDLE, DEFAULT_NUM_TESTS_PER_EVICTION_RUN, DEFAULT_SOFT_MIN_EVICTABLE_IDLE_TIME_MILLIS, DEFAULT_TEST_ON_BORROW, DEFAULT_TEST_ON_RETURN, DEFAULT_TEST_WHILE_IDLE, DEFAULT_TIME_BETWEEN_EVICTION_RUNS_MILLIS, DEFAULT_WHEN_EXHAUSTED_ACTION, WHEN_EXHAUSTED_BLOCK, WHEN_EXHAUSTED_FAIL, WHEN_EXHAUSTED_GROW
-
Constructor Summary
ConstructorsConstructorDescriptionAbandonedObjectPool
(org.apache.commons.pool.PoolableObjectFactory factory, AbandonedConfig config) Create an ObjectPool which tracks db connections. -
Method Summary
Modifier and TypeMethodDescriptionGet a db connection from the pool.void
invalidateObject
(Object obj) Invalidates an object from the pool.void
returnObject
(Object obj) Return a db connection to the pool.Methods inherited from class org.apache.commons.pool.impl.GenericObjectPool
addObject, clear, close, evict, getLifo, getMaxActive, getMaxIdle, getMaxWait, getMinEvictableIdleTimeMillis, getMinIdle, getNumActive, getNumIdle, getNumTestsPerEvictionRun, getSoftMinEvictableIdleTimeMillis, getTestOnBorrow, getTestOnReturn, getTestWhileIdle, getTimeBetweenEvictionRunsMillis, getWhenExhaustedAction, setConfig, setLifo, setMaxActive, setMaxIdle, setMaxWait, setMinEvictableIdleTimeMillis, setMinIdle, setNumTestsPerEvictionRun, setSoftMinEvictableIdleTimeMillis, setTestOnBorrow, setTestOnReturn, setTestWhileIdle, setTimeBetweenEvictionRunsMillis, setWhenExhaustedAction
Methods inherited from class org.apache.commons.pool.BaseObjectPool
isClosed
-
Constructor Details
-
AbandonedObjectPool
public AbandonedObjectPool(org.apache.commons.pool.PoolableObjectFactory factory, AbandonedConfig config) Create an ObjectPool which tracks db connections.- Parameters:
factory
- PoolableObjectFactory used to create thisconfig
- configuration for abandoned db connections
-
-
Method Details
-
borrowObject
Get a db connection from the pool. If removeAbandoned=true, recovers db connections which have been idle > removeAbandonedTimeout and getNumActive() > getMaxActive() - 3 and getNumIdle() invalid input: '<' 2- Specified by:
borrowObject
in interfaceorg.apache.commons.pool.ObjectPool
- Overrides:
borrowObject
in classorg.apache.commons.pool.impl.GenericObjectPool
- Returns:
- Object jdbc Connection
- Throws:
Exception
- if an exception occurs retrieving a connection from the pool
-
returnObject
Return a db connection to the pool.- Specified by:
returnObject
in interfaceorg.apache.commons.pool.ObjectPool
- Overrides:
returnObject
in classorg.apache.commons.pool.impl.GenericObjectPool
- Parameters:
obj
- db Connection to return- Throws:
Exception
- if an exception occurs returning the connection to the pool
-
invalidateObject
Invalidates an object from the pool.- Specified by:
invalidateObject
in interfaceorg.apache.commons.pool.ObjectPool
- Overrides:
invalidateObject
in classorg.apache.commons.pool.impl.GenericObjectPool
- Parameters:
obj
- object to be returned- Throws:
Exception
- if an exception occurs invalidating the object
-