View Javadoc

1   /*
2    * Copyright (C) The DNA Group. All rights reserved.
3    *
4    * This software is published under the terms of the DNA
5    * Software License version 1.1, a copy of which has been included
6    * with this distribution in the LICENSE.txt file.
7    */
8   package org.codehaus.dna;
9   
10  /***
11   * Components should implement this interface if they need to
12   * be initialize resources at startup or deallocate resources
13   * during shutdown.
14   *
15   * <p>If the {@link #initialize()} method is invoked upon a
16   * component then the container must invoke the
17   * {@link #dispose()} even if the {@link #initialize()} throws
18   * an Exception.</p>
19   *
20   * @version $Revision: 1.2 $ $Date: 2004/05/01 09:51:48 $
21   */
22  public interface Active
23  {
24      /***
25       * Initialialize the component.
26       * This method gives the component the ability to
27       * perform processing or allocate any resources
28       * before the component becomes operational.
29       *
30       * @throws Exception if unable to initialize component.
31       */
32      void initialize()
33          throws Exception;
34  
35      /***
36       * Dispose the component.
37       * This method gives the component the ability to
38       * perform processing or deallocate any resources
39       * before the component is destroyed.
40       *
41       * @throws Exception if unable to dispose component.
42       */
43      void dispose()
44          throws Exception;
45  }