Author: sebb
Date: Fri Mar  2 13:15:13 2007
New Revision: 513956

URL: http://svn.apache.org/viewvc?view=rev&rev=513956
Log:
Use new ObjectTableModel constructor;
add testFunctors() - unit test hook
Apply local renderers instead of relying on Calculator routines

Modified:
    
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/SummaryReport.java

Modified: 
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/SummaryReport.java
URL: 
http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/SummaryReport.java?view=diff&rev=513956&r1=513955&r2=513956
==============================================================================
--- 
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/SummaryReport.java
 (original)
+++ 
jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/SummaryReport.java
 Fri Mar  2 13:15:13 2007
@@ -30,6 +30,7 @@
 import javax.swing.JTable;
 import javax.swing.border.Border;
 import javax.swing.border.EmptyBorder;
+import javax.swing.table.TableCellRenderer;
 
 import org.apache.jmeter.samplers.Clearable;
 import org.apache.jmeter.samplers.SampleResult;
@@ -37,7 +38,10 @@
 import org.apache.jmeter.util.Calculator;
 import org.apache.jmeter.util.JMeterUtils;
 import org.apache.jmeter.visualizers.gui.AbstractVisualizer;
+import org.apache.jorphan.gui.NumberRenderer;
 import org.apache.jorphan.gui.ObjectTableModel;
+import org.apache.jorphan.gui.RateRenderer;
+import org.apache.jorphan.gui.RendererUtils;
 import org.apache.jorphan.reflect.Functor;
 
 /**
@@ -68,19 +72,34 @@
 
        Map tableRows = Collections.synchronizedMap(new HashMap());
 
-       public SummaryReport() {
+       // Column renderers
+       private static final TableCellRenderer[] RENDERERS = 
+               new TableCellRenderer[]{
+                   null, // Label
+                   null, // count
+                   null, // Mean
+                   null, // Min
+                   null, // Max
+                   new NumberRenderer("#0.00%"), // Error %age
+                   new RateRenderer("#.0"),      // Throughpur
+                   new NumberRenderer("#0.00"),  // kB/sec
+                   new NumberRenderer("#.0"),    // avg. pageSize
+               };
+
+    public SummaryReport() {
                super();
-               model = new ObjectTableModel(COLUMNS, 
+               model = new ObjectTableModel(COLUMNS,
+                               Calculator.class,// All rows have this class
                 new Functor[] { 
-                    new Functor("getLabel"),   //$NON-NLS-1$
-                    new Functor("getCount"),  //$NON-NLS-1$
-                               new Functor("getMeanAsNumber"),   //$NON-NLS-1$
-                    new Functor("getMin"),  //$NON-NLS-1$
-                    new Functor("getMax"),   //$NON-NLS-1$
-                    new Functor("getErrorPercentageString"),   //$NON-NLS-1$
-                    new Functor("getRateString"),  //$NON-NLS-1$
-                               new Functor("getKBPerSecondString"),   
//$NON-NLS-1$
-                    new Functor("getPageSizeString"),   //$NON-NLS-1$
+                    new Functor("getLabel"),              //$NON-NLS-1$
+                    new Functor("getCount"),              //$NON-NLS-1$
+                               new Functor("getMeanAsNumber"),       
//$NON-NLS-1$
+                    new Functor("getMin"),                //$NON-NLS-1$
+                    new Functor("getMax"),                //$NON-NLS-1$
+                    new Functor("getErrorPercentage"),    //$NON-NLS-1$
+                    new Functor("getRate"),               //$NON-NLS-1$
+                               new Functor("getKBPerSecond"),        
//$NON-NLS-1$
+                    new Functor("getPageSize"),           //$NON-NLS-1$
                 },
                 new Functor[] { null, null, null, null, null, null, null, null 
, null }, 
                 new Class[] { String.class, Long.class, Long.class, Long.class,
@@ -88,7 +107,12 @@
                clear();
                init();
        }
-
+    
+       public static boolean testFunctors(){
+               SummaryReport instance = new SummaryReport();
+               return instance.model.checkFunctors(null);
+       }
+       
        public String getLabelResource() {
                return "summary_report";  //$NON-NLS-1$
        }
@@ -145,6 +169,7 @@
 
                myJTable = new JTable(model);
                myJTable.setPreferredScrollableViewportSize(new Dimension(500, 
70));
+               RendererUtils.applyRenderers(myJTable, RENDERERS);
                myScrollPane = new JScrollPane(myJTable);
                this.add(mainPanel, BorderLayout.NORTH);
                this.add(myScrollPane, BorderLayout.CENTER);



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to