|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||
java.lang.Objectorg.apache.commons.pool.BaseObjectPool
org.apache.commons.pool.impl.StackObjectPool
A simple, Stack-based ObjectPool implementation.
Given a PoolableObjectFactory, this class will maintain
a simple pool of instances. A finite number of "sleeping"
or idle instances is enforced, but when the pool is
empty, new instances are created to support the new load.
Hence this class places no limit on the number of "active"
instances created by the pool, but is quite useful for
re-using Objects without introducing
artificial limits.
| Constructor Summary | |
StackObjectPool()
Create a new pool using no factory. |
|
StackObjectPool(int maxIdle)
Create a new pool using no factory. |
|
StackObjectPool(int maxIdle,
int initIdleCapacity)
Create a new pool using no factory. |
|
StackObjectPool(PoolableObjectFactory factory)
Create a new StackObjectPool using the specified factory to create new instances. |
|
StackObjectPool(PoolableObjectFactory factory,
int maxIdle)
Create a new SimpleObjectPool using the specified factory to create new instances, capping the number of "sleeping" instances to max |
|
StackObjectPool(PoolableObjectFactory factory,
int maxIdle,
int initIdleCapacity)
Create a new SimpleObjectPool using the specified factory to create new instances, capping the number of "sleeping" instances to max, and initially allocating a container capable of containing at least init instances. |
|
| Method Summary | |
void |
addObject()
Create an object, 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). |
| Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public StackObjectPool()
returnObject(java.lang.Object)
before they can be borrowed.
public StackObjectPool(int maxIdle)
returnObject(java.lang.Object)
before they can be borrowed.
maxIdle - cap on the number of "sleeping" instances in the pool
public StackObjectPool(int maxIdle,
int initIdleCapacity)
returnObject(java.lang.Object)
before they can be borrowed.
maxIdle - cap on the number of "sleeping" instances in the poolinitIdleCapacity - initial size of the pool (this specifies the size of the container,
it does not cause the pool to be pre-populated.)public StackObjectPool(PoolableObjectFactory factory)
factory - the PoolableObjectFactory used to populate the pool
public StackObjectPool(PoolableObjectFactory factory,
int maxIdle)
factory - the PoolableObjectFactory used to populate the poolmaxIdle - cap on the number of "sleeping" instances in the pool
public StackObjectPool(PoolableObjectFactory factory,
int maxIdle,
int initIdleCapacity)
factory - the PoolableObjectFactory used to populate the poolmaxIdle - cap on the number of "sleeping" instances in the poolinitIdleCapacity - initial size of the pool (this specifies the size of the container,
it does not cause the pool to be pre-populated.)| Method Detail |
public void addObject()
throws Exception
addObject in interface ObjectPooladdObject in class BaseObjectPoolException
public Object borrowObject()
throws Exception
ObjectPoolreturnObject
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).
borrowObject in interface ObjectPoolborrowObject in class BaseObjectPoolExceptionpublic void clear()
ObjectPool
clear in interface ObjectPoolclear in class BaseObjectPool
public void close()
throws Exception
ObjectPool
close in interface ObjectPoolclose in class BaseObjectPoolExceptionpublic int getNumActive()
ObjectPool
getNumActive in interface ObjectPoolgetNumActive in class BaseObjectPoolpublic int getNumIdle()
ObjectPoolborrowed
without creating any new instances.
getNumIdle in interface ObjectPoolgetNumIdle in class BaseObjectPool
public void invalidateObject(Object obj)
throws Exception
ObjectPoolborrowObject
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.
invalidateObject in interface ObjectPoolinvalidateObject in class BaseObjectPoolException
public void returnObject(Object obj)
throws Exception
ObjectPoolborrowObject
or a related method as defined in an implementation
or sub-interface.
returnObject in interface ObjectPoolreturnObject in class BaseObjectPoolException
public void setFactory(PoolableObjectFactory factory)
throws IllegalStateException
ObjectPoolfactory I use
to create new instances (optional operation).
setFactory in interface ObjectPoolsetFactory in class BaseObjectPoolIllegalStateException
|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||