View Javadoc

1   /*
2   * The contents of this file are subject to the BT "ZEUS" Open Source 
3   * Licence (L77741), Version 1.0 (the "Licence"); you may not use this file 
4   * except in compliance with the Licence. You may obtain a copy of the Licence
5   * from $ZEUS_INSTALL/licence.html or alternatively from
6   * http://www.labs.bt.com/projects/agents/zeus/licence.htm
7   * 
8   * Except as stated in Clause 7 of the Licence, software distributed under the
9   * Licence is distributed WITHOUT WARRANTY OF ANY KIND, either express or 
10  * implied. See the Licence for the specific language governing rights and 
11  * limitations under the Licence.
12  * 
13  * The Original Code is within the package zeus.*.
14  * The Initial Developer of the Original Code is British Telecommunications
15  * public limited company, whose registered office is at 81 Newgate Street, 
16  * London, EC1A 7AJ, England. Portions created by British Telecommunications 
17  * public limited company are Copyright 1996-9. All Rights Reserved.
18  * 
19  * THIS NOTICE MUST BE INCLUDED ON ANY COPY OF THIS FILE
20  */
21  
22  
23  
24  package zeus.agentviewer.resources;
25  
26  import javax.swing.table.*;
27  import java.util.*;
28  import zeus.concepts.*;
29  
30  
31  public class FactAttributesTableModel  extends AbstractTableModel {
32  
33        private String   ATTRIBUTE = "Attribute";
34        private String   VALUE     = "Value";
35  
36        private String[] header = {ATTRIBUTE,VALUE};
37        private Fact   fact ;
38        ResourceTableModel factModel;
39  //------------------------------------------------------------------------------
40        public FactAttributesTableModel(ResourceTableModel factModel){
41            this.fact = null;
42            this.factModel = factModel;
43  
44        }
45  //------------------------------------------------------------------------------
46         public int getRowCount() {
47            if (fact == null)
48             return 0;
49            else
50             return fact.listAttributes().length;
51         }
52  //------------------------------------------------------------------------------
53         public int getColumnCount(){
54             return header.length;
55         }
56  //------------------------------------------------------------------------------
57         public boolean isCellEditable(int row, int col) {
58            //return  (col == 1);
59            return false;
60         }
61  
62  //------------------------------------------------------------------------------
63  /*
64         public void setValueAt(Object value, int row, int col) {
65             if (value == null) return;
66  
67             String aValue = ((String) value).trim();
68             if (aValue.length() == 0) return;
69  
70             String attribute = (String) getValueAt(row,0);
71  
72             fact.setValue(attribute,aValue);
73             factModel.resDB.modifyFact(fact);
74         }
75  */
76  //------------------------------------------------------------------------------
77         public Object getValueAt(int row, int col) {
78  
79               if (getColumnName(col).equals(ATTRIBUTE))
80                return (fact.listAttributes())[row];
81               else if (getColumnName(col).equals(VALUE))
82                return (fact.listValues())[row];
83               else
84                return  new String("Error in AttributesTableModel at getValueAt");
85         }
86  //------------------------------------------------------------------------------
87         public String getColumnName(int col) {
88              return  header[col];
89         }
90  //------------------------------------------------------------------------------
91         public void setFact(Fact fact){
92              this.fact = fact;
93              fireTableDataChanged();
94         }
95  //------------------------------------------------------------------------------
96  
97  
98  
99  
100 }