KickJava   Java API By Example, From Geeks To Geeks.

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


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: ComponentTypeTable.java,v 1.2 2004/04/28 15:04:14 moroy Exp $
27  ====================================================================*/

28
29 package org.objectweb.util.browser.plugins.fractal.panel;
30
31 import org.objectweb.fractal.api.type.ComponentType;
32 import org.objectweb.fractal.api.type.InterfaceType;
33 import org.objectweb.util.browser.api.Table;
34 import org.objectweb.util.browser.api.TreeView;
35
36 /**
37  * Displays the interface of the component type.
38  *
39  * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jerome Moroy</a>
40  *
41  * @version 0.1
42  */

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

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

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

64     /**
65      * The type can be "Client", "Server" or "Controller"
66      */

67     protected String JavaDoc getType(InterfaceType itfType){
68         if(itfType.getFcItfName().endsWith("-controller")){
69             return "Controller";
70         }
71         return itfType.isFcClientItf()?"Client":"Server";
72     }
73     
74     /**
75      * Fills one row
76      */

77     protected Object JavaDoc[] getValues(InterfaceType itfType){
78         Object JavaDoc[] row = new Object JavaDoc[5];
79         row[0] = itfType.getFcItfName();
80         row[1] = itfType.getFcItfSignature();
81         row[2] = getType(itfType);
82         row[3] = itfType.isFcCollectionItf()?"Collection":"Single";
83         row[4] = itfType.isFcOptionalItf()?"Optional":"Mandatory";
84         return row;
85     }
86     
87     //==================================================================
88
//
89
// Public methods for Table interface.
90
//
91
//==================================================================
92

93     /**
94      * Overriding methods
95      * @see org.objectweb.util.browser.api.Table#getHeaders()
96      */

97     public String JavaDoc[] getHeaders(TreeView treeView) {
98         return new String JavaDoc[] {"Name","Signature","Type","Cardinality","Contingency"};
99     }
100     
101     /**
102      * Overriding methods
103      * @see org.objectweb.util.browser.api.Table#getRows(org.objectweb.util.browser.api.TreeView)
104      */

105     public Object JavaDoc[][] getRows(TreeView treeView) {
106         ComponentType ct = (ComponentType)treeView.getSelectedObject();
107         InterfaceType[] objects = ct.getFcInterfaceTypes();
108         Object JavaDoc[][] values = new Object JavaDoc[objects.length][5];
109         int j = 0;
110         for (int i = 0; i < objects.length; i++)
111             values[j++] = getValues(objects[i]);
112         return values;
113     }
114 }
115
Popular Tags