org.apache.avalon.activation.appliance.impl
Class AbstractAppliance

java.lang.Object
  extended byorg.apache.avalon.framework.logger.AbstractLogEnabled
      extended byorg.apache.avalon.activation.appliance.impl.AbstractAppliance
All Implemented Interfaces:
Appliance, Deployable, Disposable, Home, LogEnabled
Direct Known Subclasses:
AbstractBlock, DefaultAppliance

public abstract class AbstractAppliance
extends AbstractLogEnabled
implements Appliance, Disposable

An Appliance is the basic tool merlin wraps around a component to provide support for lifecycle and lifestyle management. Different implementations of Appliance can be plugged into the merlin system to allow merlin to manage a variety of components. The name appliance is used to call up an association with a kitchen utility like a microwave. Merlin acts as a chef in his kitchen, and uses various appliances to "cook up" various components as the restaurant customers (which can be other components or systems on the other end on the planet) ask for them. An appliance manages the establishment of a component type relative to a deployment criteria. Once established, an appliance provides support for the deployment of component instances on request. An appliance is responsible for component lifestyle and lifecycle management during the deployment and decommission cycles.

Version:
$Revision: 1.2 $ $Date: 2003/10/18 00:34:19 $
Author:
Avalon Development Team

Field Summary
 
Fields inherited from interface org.apache.avalon.activation.appliance.Appliance
MBEAN_SERVER_KEY
 
Constructor Summary
AbstractAppliance(Logger logger, Model model)
           
 
Method Summary
 void dispose()
           
 Model getModel()
          Return the model backing the appliance.
 boolean isEnabled()
          Test is this appliance is enabled.
 String toString()
           
 
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, wait, wait, wait
 
Methods inherited from interface org.apache.avalon.activation.appliance.Deployable
decommission, deploy
 
Methods inherited from interface org.apache.avalon.activation.appliance.Home
release, resolve
 

Constructor Detail

AbstractAppliance

public AbstractAppliance(Logger logger,
                         Model model)
Method Detail

getModel

public Model getModel()
Return the model backing the appliance.

Specified by:
getModel in interface Appliance
Returns:
the type that the appliance is managing

isEnabled

public boolean isEnabled()
Test is this appliance is enabled. An appliance is enabled unless explicitly disabled by an assembly directive, or implicity disabled as a result of an assembly failure.

Specified by:
isEnabled in interface Appliance
Returns:
TRUE if the appliance is enabled.

dispose

public void dispose()
Specified by:
dispose in interface Disposable

toString

public String toString()


Copyright © Apache Software Foundation. All Rights Reserved.