org.apache.commons.pool
public interface ObjectPool
ObjectPool
defines a trivially simple pooling interface. The only
required methods are borrowObject
and returnObject
.
Example of use:
Object obj = null; try { obj = pool.borrowObject(); //...use the object... } catch(Exception e) { //...handle any exceptions... } finally { // make sure the object is returned to the pool if(null != obj) { pool.returnObject(obj); } } |
BaseObjectPool
for a simple base implementation.Modifier and Type | Method and Description |
---|---|
void |
addObject()
Create an object using my
factory or other
implementation dependent mechanism, and place it into the pool. |
Object |
borrowObject()
Obtain an instance from my pool.
|
void |
clear()
Clears any objects sitting idle in the pool, releasing any
associated resources (optional operation).
|
void |
close()
Close this pool, and free any resources associated with it.
|
int |
getNumActive()
Return the number of instances
currently borrowed from my pool
(optional operation).
|
int |
getNumIdle()
Return the number of instances
currently idle in my pool (optional operation).
|
void |
invalidateObject(Object obj)
Invalidates an object from the pool
By contract, obj MUST have been obtained
using
borrowObject
or a related method as defined in an implementation
or sub-interface. |
void |
returnObject(Object obj)
Return an instance to my pool.
|
void |
setFactory(PoolableObjectFactory factory)
Sets the
factory I use
to create new instances (optional operation). |
void addObject() throws Exception
factory
or other
implementation dependent mechanism, and place it into the pool.
addObject() is useful for "pre-loading" a pool with idle objects.
(Optional operation).Exception
Object borrowObject() throws Exception
returnObject
or a related method as defined in an implementation
or sub-interface.
The behaviour of this method when the pool has been exhausted is not specified (although it may be specified by implementations).
Exception
void clear() throws Exception, UnsupportedOperationException
UnsupportedOperationException
- if this implementation does not support the operationException
void close() throws Exception
Exception
int getNumActive() throws UnsupportedOperationException
UnsupportedOperationException
- if this implementation does not support the operationint getNumIdle() throws UnsupportedOperationException
borrowed
without creating any new instances.UnsupportedOperationException
- if this implementation does not support the operationvoid invalidateObject(Object obj) throws Exception
borrowObject
or a related method as defined in an implementation
or sub-interface.
This method should be used when an object that has been borrowed
is determined (due to an exception or other problem) to be invalid.
If the connection should be validated before or after borrowing,
then the PoolableObjectFactory.validateObject(java.lang.Object)
method should be
used instead.
void returnObject(Object obj) throws Exception
borrowObject
or a related method as defined in an implementation
or sub-interface.void setFactory(PoolableObjectFactory factory) throws IllegalStateException, UnsupportedOperationException
factory
I use
to create new instances (optional operation).factory
- the PoolableObjectFactory
I use to create new instances.IllegalStateException
- when the factory cannot be set at this timeUnsupportedOperationException
- if this implementation does not support the operationCopyright © 2001-2003 Apache Software Foundation. Documenation generated June 28 2015.