org.apache.avalon.excalibur.component
Class PoolableComponentHandler

java.lang.Object
  |
  +--org.apache.avalon.framework.logger.AbstractLoggable
        |
        +--org.apache.avalon.excalibur.component.ComponentHandler
              |
              +--org.apache.avalon.excalibur.component.PoolableComponentHandler
All Implemented Interfaces:
Disposable, Initializable, Loggable

public class PoolableComponentHandler
extends ComponentHandler

The PoolableComponentHandler to make sure components are initialized and destroyed correctly.

Version:
CVS $Revision: 1.4 $ $Date: 2001/06/02 06:07:32 $
Author:
Berin Loritsch

Constructor Summary
protected PoolableComponentHandler(java.lang.Class componentClass, Configuration config, ComponentManager manager, Context context, RoleManager roles)
          Create a ComponentHandler that takes care of hiding the details of whether a Component is ThreadSafe, Poolable, or SingleThreaded.
 
Method Summary
 void dispose()
          Dispose of the ComponentHandler and any associated Pools and Factories.
 Component get()
          Get a reference of the desired Component
 void initialize()
          Initialize the ComponentHandler.
 void put(Component component)
          Return a reference of the desired Component
 void setLogger(org.apache.log.Logger logger)
          Sets the logger that the ComponentHandler will use.
 
Methods inherited from class org.apache.avalon.excalibur.component.ComponentHandler
getComponentHandler, getComponentHandler
 
Methods inherited from class org.apache.avalon.framework.logger.AbstractLoggable
getLogger, setupLogger, setupLogger, setupLogger
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PoolableComponentHandler

protected PoolableComponentHandler(java.lang.Class componentClass,
                                   Configuration config,
                                   ComponentManager manager,
                                   Context context,
                                   RoleManager roles)
                            throws java.lang.Exception
Create a ComponentHandler that takes care of hiding the details of whether a Component is ThreadSafe, Poolable, or SingleThreaded. It falls back to SingleThreaded if not specified.
Method Detail

setLogger

public void setLogger(org.apache.log.Logger logger)
Sets the logger that the ComponentHandler will use.
Overrides:
setLogger in class AbstractLoggable
Following copied from class: org.apache.avalon.framework.logger.AbstractLoggable
Parameters:
logger - the logger

initialize

public void initialize()
Initialize the ComponentHandler.
Following copied from interface: org.apache.avalon.framework.activity.Initializable
Throws:
java.lang.Exception - if an error occurs

get

public Component get()
              throws java.lang.Exception
Get a reference of the desired Component
Overrides:
get in class ComponentHandler

put

public void put(Component component)
Return a reference of the desired Component
Overrides:
put in class ComponentHandler

dispose

public void dispose()
Dispose of the ComponentHandler and any associated Pools and Factories.


Copyright © 2001 Apache Jakarta Project. All Rights Reserved.