KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > fractal > explorer > context > DefaultFractalContext


1 /*====================================================================
2  
3  Objectweb Browser framework
4  Copyright (C) 2000-2004 INRIA & USTL - LIFL - GOAL
5  Contact: openccm@objectweb.org
6  
7  This library is free software; you can redistribute it and/or
8  modify it under the terms of the GNU Lesser General Public
9  License as published by the Free Software Foundation; either
10  version 2.1 of the License, or any later version.
11  
12  This library is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  Lesser General Public License for more details.
16  
17  You should have received a copy of the GNU Lesser General Public
18  License along with this library; if not, write to the Free Software
19  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
20  USA
21  
22  Initial developer(s): Jerome Moroy.
23  Contributor(s): ______________________________________.
24  
25  ---------------------------------------------------------------------
26  $Id: DefaultFractalContext.java,v 1.3 2004/11/15 16:44:24 moroy Exp $
27  ====================================================================*/

28
29 package org.objectweb.fractal.explorer.context;
30
31 import org.objectweb.fractal.api.NoSuchInterfaceException;
32 import org.objectweb.fractal.api.control.LifeCycleController;
33 import org.objectweb.fractal.explorer.FcExplorer;
34 import org.objectweb.fractal.explorer.api.FractalContext;
35 import org.objectweb.util.explorer.api.Context;
36 import org.objectweb.util.explorer.api.Entry;
37
38 /**
39  * Basic implementation of a Fractal context.
40  * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jerome Moroy</a>
41  * @version 0.2
42  */

43 public abstract class DefaultFractalContext
44            implements Context,
45                       FractalContext
46 {
47     
48     //==================================================================
49
//
50
// No internal state.
51
//
52
//==================================================================
53

54     protected Object JavaDoc object_ = null;
55     
56     //==================================================================
57
//
58
// No constructor.
59
//
60
//==================================================================
61

62     //==================================================================
63
//
64
// Internal methods.
65
//
66
//==================================================================
67

68     //==================================================================
69
//
70
// Public methods for Context interface.
71
//
72
//==================================================================
73

74     /**
75      * Overriding methods
76      * @see org.objectweb.util.browser.api.Context#getEntries()
77      */

78     public Entry[] getEntries(Object JavaDoc object) {
79         object_ = object;
80         LifeCycleController lcc = null;
81         try {
82              lcc = FcExplorer.getLifeCycleController(FcExplorer.getComponent(object));
83         } catch (NoSuchInterfaceException e2) {
84             try {
85                 return getStartedEntries();
86             } catch (Exception JavaDoc e1) {
87                 return getStoppedEntries();
88             }
89         }
90         if (lcc.getFcState().equals(LifeCycleController.STARTED))
91             return getStartedEntries();
92         else
93             return getStoppedEntries();
94     }
95     
96     //==================================================================
97
//
98
// Public methods for FractalContext interface.
99
//
100
//==================================================================
101

102     /**
103      * Called when the Fractal component is started.
104      * @return An array of entries contained into the Context.
105      */

106     public abstract Entry[] getStartedEntries() ;
107     
108     /**
109      * Called when the Fractal component is stopped.
110      * @return An array of entries contained into the Context.
111      */

112     public Entry[] getStoppedEntries() {
113         return new Entry[0];
114     }
115     
116 }
Popular Tags