You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@avalon.apache.org by mc...@apache.org on 2002/07/26 18:33:20 UTC

cvs commit: jakarta-avalon-excalibur/assembly/src/java/org/apache/excalibur/merlin/extension PhaseManager.java package.html

mcconnell    2002/07/26 09:33:19

  Added:       assembly/src/java/org/apache/excalibur/merlin/extension
                        PhaseManager.java package.html
  Log:
  initial lifecycle extension structure
  
  Revision  Changes    Path
  1.1                  jakarta-avalon-excalibur/assembly/src/java/org/apache/excalibur/merlin/extension/PhaseManager.java
  
  Index: PhaseManager.java
  ===================================================================
  /*
  * Copyright (C) The Apache Software Foundation. All rights reserved.
  *
  * This software is published under the terms of the Apache Software License
  * version 1.1, a copy of which has been included with this distribution in
  * the LICENSE.txt file.
  */
  package org.apache.excalibur.merlin.extension;
  
  import org.apache.avalon.framework.context.Context;
  
  /**
   * <code>PhaseExtension</code> interface. This interface defines the methods that
   * a container can invoke on a phase handler.
   *
   * @author <a href="mailto:mcconnell@apache.org">Stephen McConnell</a>
   * @author <a href="mailto:crafterm@apache.org">Marcus Crafter</a>
   * @version CVS $Revision: 1.1 $ $Date: 2002/07/26 16:33:19 $
   */
  public interface PhaseManager
  {
      /**
       * Create, called when the given component is being 
       * instantiated.
       *
       * @param component a <code>Component</code> instance
       * @param context a <code>Context</code> instance
       * @exception Exception if an error occurs
       */
      void create( Object component, Context context )
          throws Exception;
  
      /**
       * Destroy, called when the given component is being
       * decomissioned.
       *
       * @param component a <code>Component</code> instance
       * @param context a <code>Context</code> instance
       * @exception Exception if an error occurs
       */
      void destroy( Object component, Context context )
          throws Exception;
  
      /**
       * Access, called when the given component is being
       * accessed (ie. via lookup() or select()).
       *
       * @param component a <code>Component</code> instance
       * @param context a <code>Context</code> instance
       * @exception Exception if an error occurs
       */
      void access( Object component, Context context )
          throws Exception;
  
      /**
       * Release, called when the given component is being
       * released (ie. by a CM or CS).
       *
       * @param component a <code>Component</code> instance
       * @param context a <code>Context</code> instance
       * @exception Exception if an error occurs
       */
      void release( Object component, Context context )
          throws Exception;
  }
  
  
  
  1.1                  jakarta-avalon-excalibur/assembly/src/java/org/apache/excalibur/merlin/extension/package.html
  
  Index: package.html
  ===================================================================
  <body>
  Interfaces and classes supporting the addition of lifecycle extensions to
  a container.
  </body>
  
  
  

--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>