org.apache.avalon.excalibur.component
Class DefaultComponentPool

java.lang.Object
  |
  +--org.apache.avalon.framework.logger.AbstractLogEnabled
        |
        +--org.apache.avalon.excalibur.pool.AbstractPool
              |
              +--org.apache.avalon.excalibur.pool.DefaultPool
                    |
                    +--org.apache.avalon.excalibur.pool.SoftResourceLimitingPool
                          |
                          +--org.apache.avalon.excalibur.component.DefaultComponentPool
All Implemented Interfaces:
org.apache.avalon.framework.component.Component, org.apache.avalon.framework.activity.Disposable, org.apache.avalon.framework.activity.Initializable, org.apache.avalon.framework.logger.LogEnabled, org.apache.avalon.framework.logger.Loggable, Pool, Resizable, org.apache.avalon.framework.thread.ThreadSafe

public class DefaultComponentPool
extends SoftResourceLimitingPool
implements org.apache.avalon.framework.activity.Initializable

This is the implementation of Pool for Avalon Components that is thread safe. For Component Management, we need soft resource limiting due to the possibility of spikes in demand. This pool will destroy all unnecessary Components when they are no longer needed.

Since:
4.0
Version:
CVS $Revision: 1.3 $ $Date: 2001/12/11 09:53:27 $
Author:
Berin Loritsch, Giacomo Pati

Fields inherited from class org.apache.avalon.excalibur.pool.DefaultPool
m_controller, m_disposed, m_max, m_min, m_quickFail
 
Fields inherited from class org.apache.avalon.excalibur.pool.AbstractPool
DEFAULT_POOL_SIZE, m_active, m_factory, m_initialized, m_mutex, m_ready
 
Constructor Summary
DefaultComponentPool(ObjectFactory factory)
          Initialize the Pool with an ObjectFactory.
DefaultComponentPool(ObjectFactory factory, PoolController controller, int minimumPoolSize, int maximumPoolSIze)
          Initialized the Pool with an alternative management infrastructure.
 
Methods inherited from class org.apache.avalon.excalibur.pool.SoftResourceLimitingPool
grow, initialize, shrink
 
Methods inherited from class org.apache.avalon.excalibur.pool.DefaultPool
dispose, get, put
 
Methods inherited from class org.apache.avalon.excalibur.pool.AbstractPool
internalGrow, internalShrink, newPoolable, removePoolable, setLogger, size
 
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
 
Methods inherited from interface org.apache.avalon.framework.activity.Initializable
initialize
 

Constructor Detail

DefaultComponentPool

public DefaultComponentPool(ObjectFactory factory)
                     throws java.lang.Exception
Initialize the Pool with an ObjectFactory.

DefaultComponentPool

public DefaultComponentPool(ObjectFactory factory,
                            PoolController controller,
                            int minimumPoolSize,
                            int maximumPoolSIze)
                     throws java.lang.Exception
Initialized the Pool with an alternative management infrastructure.


Copyright © 2001 Apache Jakarta Project. All Rights Reserved.