KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > sf > panoptes > view > swing > configurator > OperationTableModel


1 /*
2  * Created on Feb 14, 2004
3  *
4  */

5 package net.sf.panoptes.view.swing.configurator;
6
7 import javax.management.MBeanOperationInfo JavaDoc;
8 import javax.management.MBeanParameterInfo JavaDoc;
9 import javax.swing.table.AbstractTableModel JavaDoc;
10
11 import net.sf.panoptes.component.jmx.model.MBeanWrapper;
12
13 /**
14  * @author Dag Liodden
15  * @version 0.1
16  */

17 public class OperationTableModel extends AbstractTableModel JavaDoc {
18
19     private MBeanWrapper mbean;
20
21     public OperationTableModel(MBeanWrapper wrapper) {
22         this.mbean = wrapper;
23     }
24     
25     public void setMBean(MBeanWrapper mbean) {
26         this.mbean = mbean;
27     }
28     
29     public int getColumnCount() {
30         return 4;
31     }
32
33     public boolean isCellEditable(int rowIndex, int columnIndex) {
34         return columnIndex == 3;
35     }
36
37     public int getRowCount() {
38         if (mbean == null)
39             return 0;
40         else
41             return mbean.getOperations().length;
42     }
43
44     public String JavaDoc getColumnName(int columnIndex) {
45         switch (columnIndex) {
46             case 0 :
47                 return "Name";
48             case 1 :
49                 return "Parameters";
50             case 2 :
51                 return "Return type";
52             case 3 :
53                 return "";
54             default :
55                 return "Uknown column";
56         }
57
58     }
59
60     public Object JavaDoc getValueAt(int rowIndex, int columnIndex) {
61         MBeanOperationInfo JavaDoc op = mbean.getOperations()[rowIndex];
62         switch (columnIndex) {
63             case 0 :
64                 return op.getName();
65             case 1 :
66                 MBeanParameterInfo JavaDoc[] params = op.getSignature();
67                 StringBuffer JavaDoc s = new StringBuffer JavaDoc();
68                 if (params.length == 0)
69                     s = new StringBuffer JavaDoc("void");
70                 else
71                     for (int j = 0; j < params.length; j++) {
72                         s.append(params[j].getType() + ", ");
73                     }
74                 return s.toString();
75
76             case 2 :
77                 return op.getReturnType();
78             case 3 :
79                 return op;
80             default :
81                 return "Unknown column";
82         }
83     }
84
85 }
86
87
Popular Tags