KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > util > explorer > parser > lib > RootManager


1 /*====================================================================
2
3 Objectweb Explorer Framework
4 Copyright (C) 2000-2005 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, Philippe Merle.
23 Contributor(s): ______________________________________.
24
25 ====================================================================
26 $Id: RootManager.java,v 1.2 2005/07/06 15:36:00 moroy Exp $
27 ====================================================================*/

28
29 package org.objectweb.util.explorer.parser.lib;
30
31 import org.objectweb.fractal.api.NoSuchInterfaceException;
32 import org.objectweb.util.explorer.core.common.api.ExplorerConstants;
33 import org.objectweb.util.explorer.core.common.lib.BindingFeature;
34 import org.objectweb.util.explorer.core.role.api.RoleProvider;
35 import org.objectweb.util.explorer.explorerConfig.Root;
36 import org.objectweb.util.explorer.explorerConfig.beans.ExplorerBean;
37 import org.objectweb.util.explorer.parser.api.ExplorerParser;
38 import org.objectweb.util.explorer.parser.api.RoleParser;
39 import org.objectweb.util.explorer.property.api.PropertyFeeder;
40
41 /**
42  * This component manages the "root" XML element.
43  *
44  * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jérôme Moroy</a>,
45  * <a HREF="mailto:Philippe.Merle@lifl.fr">Philippe Merle</a>.
46  *
47  * @version 0.1
48  */

49 public class RootManager
50      extends BindingFeature
51   implements ExplorerParser, RoleParser
52 {
53
54     //==================================================================
55
//
56
// Internal States.
57
//
58
// ==================================================================
59

60     // ==================================================================
61
//
62
// Constructors.
63
//
64
// ==================================================================
65

66     // ==================================================================
67
//
68
// No internal method.
69
//
70
// ==================================================================
71

72     protected void parseRootElement(String JavaDoc roleId, Root root){
73         if(root!=null && root.getCode()!=null){
74             try {
75                 ((PropertyFeeder)lookupFc(PropertyFeeder.PROPERTY_FEEDER)).feed(ExplorerConstants.ROOT_PROPERTY, roleId, ParserUtils.getCodeDescription(root.getCode()));
76             } catch (NoSuchInterfaceException e) {
77                 e.printStackTrace();
78             }
79         }
80     }
81     
82     // ==================================================================
83
//
84
// Public methods for BindingFeature class.
85
//
86
// ==================================================================
87

88     /* (non-Javadoc)
89      * @see org.objectweb.util.explorer.core.common.lib.BindingFeature#clientFc()
90      */

91     public String JavaDoc[] clientFc() {
92         return new String JavaDoc[]{PropertyFeeder.PROPERTY_FEEDER};
93     }
94
95     // ==================================================================
96
//
97
// Public methods for ExplorerParser interface.
98
//
99
// ==================================================================
100

101     /* (non-Javadoc)
102      * @see org.objectweb.util.explorer.parser.api.ExplorerParser#parseExplorer(org.objectweb.util.explorer.explorerConfig.beans.ExplorerBean)
103      */

104     public void parseExplorer(ExplorerBean explorer) {
105         parseRootElement(RoleProvider.DEFAULT_ROLE, explorer.getRoot());
106     }
107     
108     // ==================================================================
109
//
110
// Public methods for RoleParser interface.
111
//
112
// ==================================================================
113

114     /* (non-Javadoc)
115      * @see org.objectweb.util.explorer.parser.api.RoleParser#parseRole(org.objectweb.util.explorer.explorerConfig.Role)
116      */

117     public void parseRole(org.objectweb.util.explorer.explorerConfig.Role role) {
118         parseRootElement(role.getId(),role.getRoot());
119     }
120 }
121
Popular Tags