|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.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 max)
Create a new pool using no factory. |
|
StackObjectPool(int max,
int init)
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 max)
Create a new SimpleObjectPool using the specified factory to create new instances, capping the number of "sleeping" instances to max |
|
StackObjectPool(PoolableObjectFactory factory,
int max,
int init)
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 | |
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 |
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 max)
returnObject(java.lang.Object)
before they can be borrowed
.
public StackObjectPool(int max, int init)
returnObject(java.lang.Object)
before they can be borrowed
.
public StackObjectPool(PoolableObjectFactory factory)
factory
- the PoolableObjectFactory
used to populate the poolpublic StackObjectPool(PoolableObjectFactory factory, int max)
factory
- the PoolableObjectFactory
used to populate the poolmax
- cap on the number of "sleeping" instances in the poolpublic StackObjectPool(PoolableObjectFactory factory, int max, int init)
factory
- the PoolableObjectFactory
used to populate the poolmax
- cap on the number of "sleeping" instances in the poolinit
- 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 Object borrowObject() throws Exception
ObjectPool
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).
borrowObject
in interface ObjectPool
borrowObject
in class BaseObjectPool
Exception
public void clear()
ObjectPool
clear
in interface ObjectPool
clear
in class BaseObjectPool
public void close() throws Exception
ObjectPool
close
in interface ObjectPool
close
in class BaseObjectPool
Exception
public int getNumActive()
ObjectPool
getNumActive
in interface ObjectPool
getNumActive
in class BaseObjectPool
public int getNumIdle()
ObjectPool
borrowed
without creating any new instances.
getNumIdle
in interface ObjectPool
getNumIdle
in class BaseObjectPool
public void returnObject(Object obj) throws Exception
ObjectPool
borrowObject
or a related method as defined in an implementation
or sub-interface.
returnObject
in interface ObjectPool
returnObject
in class BaseObjectPool
obj
- a borrowed
instance to be returned.
Exception
public void setFactory(PoolableObjectFactory factory) throws IllegalStateException
ObjectPool
factory
I use
to create new instances (optional operation).
setFactory
in interface ObjectPool
setFactory
in class BaseObjectPool
factory
- the PoolableObjectFactory
I use to create new instances.
IllegalStateException
- when the factory cannot be set at this time
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |