org.apache.avalon.excalibur.pool
Class AbstractPool
java.lang.Object
|
+--org.apache.avalon.framework.logger.AbstractLogEnabled
|
+--org.apache.avalon.excalibur.pool.AbstractPool
- All Implemented Interfaces:
- org.apache.avalon.framework.component.Component, org.apache.avalon.framework.logger.LogEnabled, org.apache.avalon.framework.logger.Loggable, Pool, org.apache.avalon.framework.thread.ThreadSafe
- Direct Known Subclasses:
- DefaultPool
- public abstract class AbstractPool
- extends org.apache.avalon.framework.logger.AbstractLogEnabled
- implements Pool, org.apache.avalon.framework.logger.Loggable, org.apache.avalon.framework.thread.ThreadSafe
This is an Pool
that caches Poolable objects for reuse.
- Since:
- 4.0
- Version:
- CVS $Revision: 1.9 $ $Date: 2002/01/26 16:54:22 $
- Author:
- Berin Loritsch
Methods inherited from class org.apache.avalon.framework.logger.AbstractLogEnabled |
enableLogging, getLogger, setupLogger, setupLogger, setupLogger |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DEFAULT_POOL_SIZE
public static final int DEFAULT_POOL_SIZE
m_factory
protected final ObjectFactory m_factory
m_active
protected java.util.List m_active
m_ready
protected Buffer m_ready
m_mutex
protected Mutex m_mutex
m_initialized
protected boolean m_initialized
m_min
protected int m_min
AbstractPool
public AbstractPool(ObjectFactory factory)
throws java.lang.Exception
- Create an AbstractPool. The pool requires a factory, and can
optionally have a controller.
setLogger
public void setLogger(org.apache.log.Logger logger)
- Specified by:
setLogger
in interface org.apache.avalon.framework.logger.Loggable
initialize
protected void initialize()
throws java.lang.Exception
newPoolable
protected Poolable newPoolable()
throws java.lang.Exception
- This is the method to override when you need to enforce creational
policies.
removePoolable
protected void removePoolable(Poolable poolable)
- This is the method to override when you need to enforce destructional
policies.
size
public final int size()
get
public abstract Poolable get()
throws java.lang.Exception
- Specified by:
get
in interface Pool
put
public abstract void put(Poolable object)
- Specified by:
put
in interface Pool
internalGrow
protected void internalGrow(int amount)
throws java.lang.Exception
internalShrink
protected void internalShrink(int amount)
throws java.lang.Exception
Copyright © 2001 Apache Jakarta Project. All Rights Reserved.