public class SingleThreadedPool
extends org.apache.avalon.framework.logger.AbstractLogEnabled
implements org.apache.avalon.excalibur.pool.Pool, org.apache.avalon.framework.activity.Initializable, org.apache.avalon.framework.thread.SingleThreaded, org.apache.avalon.excalibur.pool.Resizable, org.apache.avalon.framework.activity.Disposable
Pool that caches Poolable objects for reuse.| Modifier and Type | Field and Description |
|---|---|
protected org.apache.avalon.excalibur.pool.PoolController |
m_controller |
protected int |
m_count |
protected org.apache.avalon.excalibur.pool.ObjectFactory |
m_factory |
protected int |
m_initial |
protected boolean |
m_initialized |
protected int |
m_maximum |
protected org.apache.avalon.excalibur.pool.Poolable[] |
m_pool |
| Constructor and Description |
|---|
SingleThreadedPool(java.lang.Class clazz,
int initial,
int maximum) |
SingleThreadedPool(org.apache.avalon.excalibur.pool.ObjectFactory factory,
int initial,
int maximum) |
SingleThreadedPool(org.apache.avalon.excalibur.pool.ObjectFactory factory,
org.apache.avalon.excalibur.pool.PoolController controller,
int initial,
int maximum) |
| Modifier and Type | Method and Description |
|---|---|
void |
dispose()
Dispose the pool and decommission any Poolables.
|
void |
fill(int fillSize)
This fills the pool to the size specified in parameter.
|
org.apache.avalon.excalibur.pool.Poolable |
get()
Retrieve an object from pool.
|
int |
getCapacity()
Return the total number of slots in Pool
|
void |
grow(int increase)
This fills the pool by the size specified in parameter.
|
void |
initialize() |
void |
put(org.apache.avalon.excalibur.pool.Poolable poolable)
Place an object in pool.
|
void |
shrink(int decrease)
This shrinks the pool by parameter size.
|
int |
size()
Get the number of used slots in Pool
|
protected boolean m_initialized
protected int m_count
protected org.apache.avalon.excalibur.pool.Poolable[] m_pool
protected org.apache.avalon.excalibur.pool.ObjectFactory m_factory
protected org.apache.avalon.excalibur.pool.PoolController m_controller
protected int m_maximum
protected int m_initial
public SingleThreadedPool(java.lang.Class clazz,
int initial,
int maximum)
throws java.lang.Exception
java.lang.Exceptionpublic SingleThreadedPool(org.apache.avalon.excalibur.pool.ObjectFactory factory,
int initial,
int maximum)
throws java.lang.Exception
java.lang.Exceptionpublic SingleThreadedPool(org.apache.avalon.excalibur.pool.ObjectFactory factory,
org.apache.avalon.excalibur.pool.PoolController controller,
int initial,
int maximum)
throws java.lang.Exception
java.lang.Exceptionpublic void initialize()
throws java.lang.Exception
initialize in interface org.apache.avalon.framework.activity.Initializablejava.lang.Exceptionpublic org.apache.avalon.excalibur.pool.Poolable get()
throws java.lang.Exception
get in interface org.apache.avalon.excalibur.pool.Pooljava.lang.Exceptionpublic void put(org.apache.avalon.excalibur.pool.Poolable poolable)
put in interface org.apache.avalon.excalibur.pool.Poolpoolable - the object to be placed in poolpublic final int getCapacity()
public final int size()
public final void fill(int fillSize)
throws java.lang.Exception
java.lang.Exceptionpublic final void grow(int increase)
grow in interface org.apache.avalon.excalibur.pool.Resizablepublic final void shrink(int decrease)
shrink in interface org.apache.avalon.excalibur.pool.Resizablepublic void dispose()
dispose in interface org.apache.avalon.framework.activity.Disposable