You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jmeter-dev@jakarta.apache.org by se...@apache.org on 2007/03/02 22:15:14 UTC
svn commit: r513956 -
/jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/SummaryReport.java
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: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org