K
- The type of keys managed by this factory.V
- Type of element managed by this factory.public abstract class BaseKeyedPooledObjectFactory<K,V> extends Object implements KeyedPooledObjectFactory<K,V>
KeyedPooledObjectFactory
.
All operations defined here are essentially no-op's.
This class is immutable, and therefore thread-safe.KeyedPooledObjectFactory
Constructor and Description |
---|
BaseKeyedPooledObjectFactory() |
Modifier and Type | Method and Description |
---|---|
void |
activateObject(K key,
PooledObject<V> p)
Reinitialize an instance to be returned by the pool.
|
abstract V |
create(K key)
Create an instance that can be served by the pool.
|
void |
destroyObject(K key,
PooledObject<V> p)
Destroy an instance no longer needed by the pool.
|
PooledObject<V> |
makeObject(K key)
Create an instance that can be served by the pool and
wrap it in a
PooledObject to be managed by the pool. |
void |
passivateObject(K key,
PooledObject<V> p)
Uninitialize an instance to be returned to the idle object pool.
|
boolean |
validateObject(K key,
PooledObject<V> p)
Ensures that the instance is safe to be returned by the pool.
|
abstract PooledObject<V> |
wrap(V value)
Wrap the provided instance with an implementation of
PooledObject . |
public abstract V create(K key) throws Exception
key
- the key used when constructing the objectException
- if there is a problem creating a new instance,
this will be propagated to the code requesting an object.public abstract PooledObject<V> wrap(V value)
PooledObject
.value
- the instance to wrapPooledObject
public PooledObject<V> makeObject(K key) throws Exception
KeyedPooledObjectFactory
PooledObject
to be managed by the pool.makeObject
in interface KeyedPooledObjectFactory<K,V>
key
- the key used when constructing the objectPooledObject
wrapping an instance that can
be served by the pool.Exception
- if there is a problem creating a new instance,
this will be propagated to the code requesting an object.public void destroyObject(K key, PooledObject<V> p) throws Exception
The default implementation is a no-op.
destroyObject
in interface KeyedPooledObjectFactory<K,V>
key
- the key used when selecting the instancep
- a PooledObject
wrapping the the instance to be destroyedException
- should be avoided as it may be swallowed by
the pool implementation.KeyedPooledObjectFactory.validateObject(K, org.apache.tomcat.dbcp.pool2.PooledObject<V>)
,
KeyedObjectPool.invalidateObject(K, V)
public boolean validateObject(K key, PooledObject<V> p)
The default implementation always returns true
.
validateObject
in interface KeyedPooledObjectFactory<K,V>
key
- the key used when selecting the objectp
- a PooledObject
wrapping the the instance to be validatedtrue
in the default implementationpublic void activateObject(K key, PooledObject<V> p) throws Exception
The default implementation is a no-op.
activateObject
in interface KeyedPooledObjectFactory<K,V>
key
- the key used when selecting the objectp
- a PooledObject
wrapping the the instance to be activatedException
- if there is a problem activating obj
,
this exception may be swallowed by the pool.KeyedPooledObjectFactory.destroyObject(K, org.apache.tomcat.dbcp.pool2.PooledObject<V>)
public void passivateObject(K key, PooledObject<V> p) throws Exception
The default implementation is a no-op.
passivateObject
in interface KeyedPooledObjectFactory<K,V>
key
- the key used when selecting the objectp
- a PooledObject
wrapping the the instance to be passivatedException
- if there is a problem passivating obj
,
this exception may be swallowed by the pool.KeyedPooledObjectFactory.destroyObject(K, org.apache.tomcat.dbcp.pool2.PooledObject<V>)
Copyright © 2000-2014 Apache Software Foundation. All Rights Reserved.