org.apache.commons.pool2
Class BasePooledObjectFactory<T>

java.lang.Object
  extended by org.apache.commons.pool2.BasePooledObjectFactory<T>
Type Parameters:
T - Type of element managed in this factory.
All Implemented Interfaces:
PooledObjectFactory<T>

public abstract class BasePooledObjectFactory<T>
extends Object
implements PooledObjectFactory<T>

A base implementation of PoolableObjectFactory.

All operations defined here are essentially no-op's.

This class is immutable, and therefore thread-safe

Since:
2.0
Version:
$Revision: 1333925 $
See Also:
PooledObjectFactory, BaseKeyedPooledObjectFactory

Constructor Summary
BasePooledObjectFactory()
           
 
Method Summary
 void activateObject(PooledObject<T> p)
          No-op.
abstract  T create()
          Creates an object instance, to be wrapped in a PooledObject.
 void destroyObject(PooledObject<T> p)
          No-op.
 PooledObject<T> makeObject()
          Create an instance that can be served by the pool and wrap it in a PooledObject to be managed by the pool.
 void passivateObject(PooledObject<T> p)
          No-op.
 boolean validateObject(PooledObject<T> p)
          This implementation always returns true.
abstract  PooledObject<T> wrap(T obj)
          Wrap the provided instance with an implementation of PooledObject.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BasePooledObjectFactory

public BasePooledObjectFactory()
Method Detail

create

public abstract T create()
                  throws Exception
Creates an object instance, to be wrapped in a PooledObject.

This method must support concurrent, multi-threaded activation.

Returns:
an instance to be served by the pool
Throws:
Exception

wrap

public abstract PooledObject<T> wrap(T obj)
Wrap the provided instance with an implementation of PooledObject.

Parameters:
obj - the instance to wrap
Returns:
The provided instance, wrapped by a PooledObject

makeObject

public PooledObject<T> makeObject()
                           throws Exception
Description copied from interface: PooledObjectFactory
Create an instance that can be served by the pool and wrap it in a PooledObject to be managed by the pool.

Specified by:
makeObject in interface PooledObjectFactory<T>
Returns:
a PooledObject wrapping an instance that can be served by the pool
Throws:
Exception - if there is a problem creating a new instance, this will be propagated to the code requesting an object.

destroyObject

public void destroyObject(PooledObject<T> p)
                   throws Exception
No-op.

Specified by:
destroyObject in interface PooledObjectFactory<T>
Parameters:
p - ignored
Throws:
Exception - should be avoided as it may be swallowed by the pool implementation.
See Also:
PooledObjectFactory.validateObject(org.apache.commons.pool2.PooledObject), ObjectPool.invalidateObject(T)

validateObject

public boolean validateObject(PooledObject<T> p)
This implementation always returns true.

Specified by:
validateObject in interface PooledObjectFactory<T>
Parameters:
p - ignored
Returns:
true

activateObject

public void activateObject(PooledObject<T> p)
                    throws Exception
No-op.

Specified by:
activateObject in interface PooledObjectFactory<T>
Parameters:
p - ignored
Throws:
Exception - if there is a problem activating obj, this exception may be swallowed by the pool.
See Also:
PooledObjectFactory.destroyObject(org.apache.commons.pool2.PooledObject)

passivateObject

public void passivateObject(PooledObject<T> p)
                     throws Exception
No-op.

Specified by:
passivateObject in interface PooledObjectFactory<T>
Parameters:
p - ignored
Throws:
Exception - if there is a problem passivating obj, this exception may be swallowed by the pool.
See Also:
PooledObjectFactory.destroyObject(org.apache.commons.pool2.PooledObject)


Copyright © 2001-2013 The Apache Software Foundation. All Rights Reserved.