diff 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
line wrap: on
line diff
--- a/src/org/dancres/blitz/tools/dash/StatsFrame.java	Fri Aug 28 17:23:33 2009 +0100
+++ b/src/org/dancres/blitz/tools/dash/StatsFrame.java	Fri Aug 28 21:01:04 2009 +0100
@@ -24,6 +24,7 @@
 import javax.swing.JScrollPane;
 import javax.swing.JTabbedPane;
 import javax.swing.JTable;
+import javax.swing.JTextArea;
 import javax.swing.JTree;
 import javax.swing.table.TableColumn;
 import javax.swing.table.TableColumnModel;
@@ -52,12 +53,14 @@
     //add for Outrigger views
     private Object _adminProxy;
     private JFrame _frame;
+    private JTextArea _textArea = new JTextArea();
     
     public static final int OPSTATS = 0;
     public static final int INSTANCES = 1;
     public static final int MEMORY = 2;
     public static final int TXNS = 3;
     public static final int BLOCKERS = 4;
+    public static final int RAW = 5;
     
     public StatsFrame(JFrame parent,String title, int mode,Object adminProxy) {
         super(parent,title,false);
@@ -124,6 +127,10 @@
             
         } else if (_mode == MEMORY || _mode == TXNS || _mode == BLOCKERS) {
             tp.add("History", _chart);
+        } else if (_mode == RAW) {
+            _textArea.setLineWrap(true);
+            _textArea.setWrapStyleWord(true);
+            tp.add("Raw", new JScrollPane(_textArea));
         }
         return tp;
     }
@@ -150,7 +157,11 @@
             long txnCounter = 0;
             long blockingReads = 0;
             long blockingTakes = 0;
+
+            StringBuffer myRaw = new StringBuffer();
+
             for (int i = 0; i < stats.length; i++) {
+                myRaw.append(stats[i].toString() +"\n");
                 if (stats[i] instanceof MemoryStat) {
                     MemoryStat ms = (MemoryStat) stats[i];
                     double max = ms.getMaxMemory();
@@ -233,6 +244,8 @@
                 _chart.update(new String[]{"read", "take"},
                 new long[]{blockingReads, blockingTakes});
             }
+            _textArea.setText(myRaw.toString());
+            _textArea.revalidate();
         } catch (Exception ex) {
             closeWin();
             DashBoardFrame.theLogger.log(Level.SEVERE, "Problem in update", ex);