KickJava   Java API By Example, From Geeks To Geeks.

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


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): Romain Rouvoy______________________________________.
24
25 ---------------------------------------------------------------------
26  $Id: ContentControllerContext.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.List JavaDoc;
32 import java.util.Vector JavaDoc;
33
34 import org.objectweb.fractal.api.Component;
35 import org.objectweb.fractal.api.Interface;
36 import org.objectweb.fractal.api.control.ContentController;
37 import org.objectweb.fractal.explorer.FcExplorer;
38 import org.objectweb.util.explorer.api.Context;
39 import org.objectweb.util.explorer.api.Entry;
40 import org.objectweb.util.explorer.core.naming.lib.DefaultEntry;
41
42 /**
43  * ContentController interface navigation context.
44  * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jerome Moroy</a>
45  * @version 0.2
46  */

47 public class ContentControllerContext
48   implements Context
49 {
50     // ==================================================================
51
//
52
// Internal state.
53
//
54
// ==================================================================
55

56     // ==================================================================
57
//
58
// No Constructors.
59
//
60
// ==================================================================
61

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

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

74     /**
75      * Returns an array containing the entries contained by the target context.
76      * @return A new array of entry.
77      */

78     public Entry[] getEntries(Object JavaDoc object) {
79         ContentController cc = (ContentController)object;
80         Object JavaDoc[] ir = cc.getFcInternalInterfaces();
81         Component[] ci = cc.getFcSubComponents();
82         List JavaDoc l = new Vector JavaDoc();
83         int cpt = 0;
84         // List of interfaces.
85
for (int i = 0; i < ir.length; i++) {
86             Interface itf = (Interface) ir[i];
87             l.add(new DefaultEntry(FcExplorer.getName(itf), InterfaceWrapperFactory.singleton.getWrapper(itf)));
88             cpt = cpt + 1 ;
89         }
90         
91         // List of components.
92
for (int i = 0 ; i < ci.length ; i++){
93             l.add(new DefaultEntry(FcExplorer.getName(ci[i]), ci[i]));
94             cpt = cpt + 1 ;
95         }
96         return (Entry[])l.toArray(new Entry[0]);
97     }
98
99 }
100
Popular Tags