KickJava   Java API By Example, From Geeks To Geeks.

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


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: ArchitectRootContext.java,v 1.3 2004/11/15 16:44:24 moroy Exp $
27  ====================================================================*/

28
29 package org.objectweb.fractal.explorer.context;
30
31 import java.util.Vector JavaDoc;
32
33 import org.objectweb.fractal.adl.ADLException;
34 import org.objectweb.fractal.adl.FactoryFactory;
35 import org.objectweb.util.explorer.api.RootContext;
36 import org.objectweb.util.explorer.api.RootEntry;
37 import org.objectweb.util.explorer.core.common.api.ContextContainer;
38 import org.objectweb.util.explorer.core.common.lib.DefaultContextContainer;
39 import org.objectweb.util.explorer.core.root.lib.DefaultRootEntry;
40
41 /**
42  * The context adds features to manage Fractal application such as
43  * the fractal factory. This factory allows one to create new instance
44  * of fractal definition.
45  *
46  * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jerome Moroy</a>
47  * @version 0.1
48  */

49 public class ArchitectRootContext
50   implements RootContext
51 {
52     
53     // ==================================================================
54
//
55
// No internal state.
56
//
57
// ==================================================================
58

59     /** context container for the root node. */
60     protected static ContextContainer cc_ = null;
61     
62     // ==================================================================
63
//
64
// static block.
65
//
66
// ==================================================================
67

68     // Initializes the ContextContainer.
69
static {
70         cc_ = new DefaultContextContainer();
71         cc_.addEntry("type-factory", new TypeContainer());
72         cc_.addEntry("component-factory", new TemplateContainer());
73     }
74     
75     // ==================================================================
76
//
77
// No Constructors.
78
//
79
// ==================================================================
80

81     // ==================================================================
82
//
83
// No internal methods.
84
//
85
// ==================================================================
86

87     // ==================================================================
88
//
89
// Public methods for interface Context.
90
//
91
// ==================================================================
92

93     /**
94      * Returns an array containing the entries contained by the target context.
95      * @return A new array of entry.
96      */

97     public RootEntry[] getEntries(){
98         Vector JavaDoc values = new Vector JavaDoc();
99         try {
100             values.add(new DefaultRootEntry("Fractal-factory", new FactoryWrapper(FactoryFactory.getFactory(FactoryFactory.FRACTAL_BACKEND)),0));
101         } catch (ADLException e) {
102             System.out.println("[" + getClass().getName() + "] Exception: " + e.getMessage());
103         }
104         values.add(new DefaultRootEntry("Fractal-container",cc_,1));
105         return (RootEntry[])values.toArray(new RootEntry[0]);
106     }
107     
108 }
Popular Tags