Mercurial > hg > blitz_condensed
comparison src/org/dancres/blitz/tools/dash/StatsFrame.java @ 23:28c84687bdb8
Add an additional option on Dashboard to display full stats as raw strings.
author | Dan Creswell <dan.creswell@gmail.com> |
---|---|
date | Fri, 28 Aug 2009 21:01:04 +0100 |
parents | 3dc0c5604566 |
children |
comparison
equal
deleted
inserted
replaced
22:b7e52953b7a6 | 23:28c84687bdb8 |
---|---|
22 import javax.swing.JOptionPane; | 22 import javax.swing.JOptionPane; |
23 import javax.swing.JPanel; | 23 import javax.swing.JPanel; |
24 import javax.swing.JScrollPane; | 24 import javax.swing.JScrollPane; |
25 import javax.swing.JTabbedPane; | 25 import javax.swing.JTabbedPane; |
26 import javax.swing.JTable; | 26 import javax.swing.JTable; |
27 import javax.swing.JTextArea; | |
27 import javax.swing.JTree; | 28 import javax.swing.JTree; |
28 import javax.swing.table.TableColumn; | 29 import javax.swing.table.TableColumn; |
29 import javax.swing.table.TableColumnModel; | 30 import javax.swing.table.TableColumnModel; |
30 import javax.swing.table.DefaultTableCellRenderer; | 31 import javax.swing.table.DefaultTableCellRenderer; |
31 import javax.swing.tree.DefaultMutableTreeNode; | 32 import javax.swing.tree.DefaultMutableTreeNode; |
50 //added for FieldsStats | 51 //added for FieldsStats |
51 private TypeTreeView _treeTypeView=new TypeTreeView(); | 52 private TypeTreeView _treeTypeView=new TypeTreeView(); |
52 //add for Outrigger views | 53 //add for Outrigger views |
53 private Object _adminProxy; | 54 private Object _adminProxy; |
54 private JFrame _frame; | 55 private JFrame _frame; |
56 private JTextArea _textArea = new JTextArea(); | |
55 | 57 |
56 public static final int OPSTATS = 0; | 58 public static final int OPSTATS = 0; |
57 public static final int INSTANCES = 1; | 59 public static final int INSTANCES = 1; |
58 public static final int MEMORY = 2; | 60 public static final int MEMORY = 2; |
59 public static final int TXNS = 3; | 61 public static final int TXNS = 3; |
60 public static final int BLOCKERS = 4; | 62 public static final int BLOCKERS = 4; |
63 public static final int RAW = 5; | |
61 | 64 |
62 public StatsFrame(JFrame parent,String title, int mode,Object adminProxy) { | 65 public StatsFrame(JFrame parent,String title, int mode,Object adminProxy) { |
63 super(parent,title,false); | 66 super(parent,title,false); |
64 _adminProxy=adminProxy; | 67 _adminProxy=adminProxy; |
65 init(parent,title,mode); | 68 init(parent,title,mode); |
122 tp.add("History", _chart); | 125 tp.add("History", _chart); |
123 tp.add("Entry browser",new OutriggerViewer(this,(com.sun.jini.outrigger.JavaSpaceAdmin)_adminProxy)); | 126 tp.add("Entry browser",new OutriggerViewer(this,(com.sun.jini.outrigger.JavaSpaceAdmin)_adminProxy)); |
124 | 127 |
125 } else if (_mode == MEMORY || _mode == TXNS || _mode == BLOCKERS) { | 128 } else if (_mode == MEMORY || _mode == TXNS || _mode == BLOCKERS) { |
126 tp.add("History", _chart); | 129 tp.add("History", _chart); |
130 } else if (_mode == RAW) { | |
131 _textArea.setLineWrap(true); | |
132 _textArea.setWrapStyleWord(true); | |
133 tp.add("Raw", new JScrollPane(_textArea)); | |
127 } | 134 } |
128 return tp; | 135 return tp; |
129 } | 136 } |
130 private JComponent createStatusBar() { | 137 private JComponent createStatusBar() { |
131 _status = new JLabel(); | 138 _status = new JLabel(); |
148 long instanceCounter = 0; | 155 long instanceCounter = 0; |
149 double memoryUsed = 0; | 156 double memoryUsed = 0; |
150 long txnCounter = 0; | 157 long txnCounter = 0; |
151 long blockingReads = 0; | 158 long blockingReads = 0; |
152 long blockingTakes = 0; | 159 long blockingTakes = 0; |
160 | |
161 StringBuffer myRaw = new StringBuffer(); | |
162 | |
153 for (int i = 0; i < stats.length; i++) { | 163 for (int i = 0; i < stats.length; i++) { |
164 myRaw.append(stats[i].toString() +"\n"); | |
154 if (stats[i] instanceof MemoryStat) { | 165 if (stats[i] instanceof MemoryStat) { |
155 MemoryStat ms = (MemoryStat) stats[i]; | 166 MemoryStat ms = (MemoryStat) stats[i]; |
156 double max = ms.getMaxMemory(); | 167 double max = ms.getMaxMemory(); |
157 double used = ms.getCurrentMemory(); | 168 double used = ms.getCurrentMemory(); |
158 | 169 |
231 new long[]{txnCounter}); | 242 new long[]{txnCounter}); |
232 } else if (_mode == BLOCKERS) { | 243 } else if (_mode == BLOCKERS) { |
233 _chart.update(new String[]{"read", "take"}, | 244 _chart.update(new String[]{"read", "take"}, |
234 new long[]{blockingReads, blockingTakes}); | 245 new long[]{blockingReads, blockingTakes}); |
235 } | 246 } |
247 _textArea.setText(myRaw.toString()); | |
248 _textArea.revalidate(); | |
236 } catch (Exception ex) { | 249 } catch (Exception ex) { |
237 closeWin(); | 250 closeWin(); |
238 DashBoardFrame.theLogger.log(Level.SEVERE, "Problem in update", ex); | 251 DashBoardFrame.theLogger.log(Level.SEVERE, "Problem in update", ex); |
239 } | 252 } |
240 return true; | 253 return true; |