KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > util > browser > plugins > fractal > panel > InternalComponentsTable


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: InternalComponentsTable.java,v 1.1 2004/04/20 16:37:27 moroy Exp $
27  ====================================================================*/

28
29 package org.objectweb.util.browser.plugins.fractal.panel;
30
31 import org.objectweb.fractal.api.Component;
32 import org.objectweb.fractal.api.control.ContentController;
33 import org.objectweb.util.browser.api.Table;
34 import org.objectweb.util.browser.api.TreeView;
35 import org.objectweb.util.browser.core.naming.DefaultEntry;
36 import org.objectweb.util.browser.core.naming.DefaultName;
37 import org.objectweb.util.browser.plugins.fractal.FcBrowser;
38
39 /**
40  * Displays the internal components of a component.
41  * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jerome Moroy</a>
42  * @version 0.1
43  */

44 public class InternalComponentsTable
45   implements Table
46 {
47     //==================================================================
48
//
49
// Internal states.
50
//
51
//==================================================================
52

53     //==================================================================
54
//
55
// No constructor.
56
//
57
//==================================================================
58

59     // ==================================================================
60
//
61
// Internal methods.
62
//
63
// ==================================================================
64

65     
66     /**
67      * Provides the ContentController for the given tree view.
68      */

69     protected ContentController provideContentController(TreeView treeView){
70         return (ContentController)treeView.getSelectedObject();
71     }
72     
73     //==================================================================
74
//
75
// Public methods for Table interface.
76
//
77
//==================================================================
78

79     /**
80      * Overriding methods
81      * @see org.objectweb.util.browser.api.Table#getHeaders()
82      */

83     public String JavaDoc[] getHeaders(TreeView treeView) {
84         return new String JavaDoc[] {"Components"};
85     }
86     
87     /**
88      * Overriding methods
89      * @see org.objectweb.util.browser.api.Table#getRows(org.objectweb.util.browser.api.TreeView)
90      */

91     public Object JavaDoc[][] getRows(TreeView treeView) {
92         ContentController cc = provideContentController(treeView);
93         Component[] components = cc.getFcSubComponents();
94         Object JavaDoc[][] values = new Object JavaDoc[components.length][1];
95         for (int i = 0 ; i < components.length ; i++){
96             values[i] = new Object JavaDoc[]{ new DefaultEntry(components[i],
97                                                        new DefaultName(FcBrowser.getName(components[i])))};
98         }
99         return values;
100     }
101 }
102
Popular Tags