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/18 00:02:57 UTC

svn commit: r519472 - in /jakarta/jmeter/branches/rel-2-2: src/components/org/apache/jmeter/visualizers/TableVisualizer.java src/core/org/apache/jmeter/resources/messages.properties xdocs/changes.xml

Author: sebb
Date: Sat Mar 17 16:02:56 2007
New Revision: 519472

URL: http://svn.apache.org/viewvc?view=rev&rev=519472
Log:
Bug 39693 - View Result Table use icon instead of check box

Modified:
    jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/TableVisualizer.java
    jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/resources/messages.properties
    jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml

Modified: jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/TableVisualizer.java
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/TableVisualizer.java?view=diff&rev=519472&r1=519471&r2=519472
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/TableVisualizer.java (original)
+++ jakarta/jmeter/branches/rel-2-2/src/components/org/apache/jmeter/visualizers/TableVisualizer.java Sat Mar 17 16:02:56 2007
@@ -25,6 +25,7 @@
 import java.text.SimpleDateFormat;
 
 import javax.swing.BorderFactory;
+import javax.swing.ImageIcon;
 import javax.swing.JLabel;
 import javax.swing.JPanel;
 import javax.swing.JScrollPane;
@@ -32,13 +33,18 @@
 import javax.swing.JTextField;
 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;
 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.gui.RightAlignRenderer;
 import org.apache.jorphan.gui.layout.VerticalLayout;
 import org.apache.jorphan.logging.LoggingManager;
 import org.apache.jorphan.reflect.Functor;
@@ -55,6 +61,12 @@
  */
 public class TableVisualizer extends AbstractVisualizer implements Clearable {
 	private static final Logger log = LoggingManager.getLoggerForClass();
+	
+	private static final ImageIcon imageSuccess = JMeterUtils.getImage(
+	        JMeterUtils.getPropDefault("viewResultsTree.success", "icon_success_sml.gif"));
+
+	private static final ImageIcon imageFailure = JMeterUtils.getImage(
+			JMeterUtils.getPropDefault("viewResultsTree.failure", "icon_warning_sml.gif"));
 
 	private final String[] COLUMNS = new String[] {
             JMeterUtils.getResString("table_visualizer_sample_num"), // $NON-NLS-1$
@@ -62,7 +74,7 @@
             JMeterUtils.getResString("table_visualizer_thread_name"),// $NON-NLS-1$
 			JMeterUtils.getResString("sampler_label"),  // $NON-NLS-1$
             JMeterUtils.getResString("table_visualizer_sample_time"), // $NON-NLS-1$
-			JMeterUtils.getResString("success?"),  // $NON-NLS-1$
+			JMeterUtils.getResString("table_visualizer_status"),  // $NON-NLS-1$
             JMeterUtils.getResString("table_visualizer_bytes") }; // $NON-NLS-1$
 
 	private ObjectTableModel model = null;
@@ -85,6 +97,18 @@
 
     private Format format = new SimpleDateFormat("HH:mm:ss.SSS");
     
+	// Column renderers
+	private static final TableCellRenderer[] RENDERERS = 
+		new TableCellRenderer[]{
+		    null, // Count
+		    new RightAlignRenderer(), // Start Time
+		    null, // Thread Name
+		    null, // Label
+		    null, // Sample Time
+		    null, // Status
+		    null, // Bytes
+		};
+
 	/**
 	 * Constructor for the TableVisualizer object.
 	 */
@@ -99,11 +123,11 @@
                 new Functor("getThreadName"), // $NON-NLS-1$
                 new Functor("getLabel"), // $NON-NLS-1$
 				new Functor("getData"), // $NON-NLS-1$
-                new Functor("isSuccess"), // $NON-NLS-1$
+                new SampleSuccessFunctor("isSuccess"), // $NON-NLS-1$
                 new Functor("getBytes") }, // $NON-NLS-1$
                 new Functor[] { null, null, null, null, null, null, null }, 
                 new Class[] { 
-				Long.class, String.class, String.class, String.class, Long.class, Boolean.class, Integer.class });
+				Long.class, String.class, String.class, String.class, Long.class, ImageIcon.class, Integer.class });
 		init();
 	}
 
@@ -169,6 +193,8 @@
 		// Set up the table itself
 		table = new JTable(model);
 		// table.getTableHeader().setReorderingAllowed(false);
+		RendererUtils.applyRenderers(table, RENDERERS);
+
 		tableScrollPanel = new JScrollPane(table);
 		tableScrollPanel.setViewportBorder(BorderFactory.createEmptyBorder(2, 2, 2, 2));
 
@@ -236,5 +262,27 @@
 		// Add the main panel and the graph
 		this.add(mainPanel, BorderLayout.NORTH);
 		this.add(tablePanel, BorderLayout.CENTER);
+	}
+	
+	public class SampleSuccessFunctor extends Functor {
+		public SampleSuccessFunctor(String methodName) {
+			super(methodName);
+		}
+		
+		public Object invoke(Object p_invokee) {
+			Boolean success = (Boolean)super.invoke(p_invokee);
+			
+			if(success != null) {
+				if(success.booleanValue()) {
+					return imageSuccess;
+				}
+				else {
+					return imageFailure;
+				}
+			}
+			else {
+				return null;
+			}
+		}
 	}
 }

Modified: jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/resources/messages.properties
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/resources/messages.properties?view=diff&rev=519472&r1=519471&r2=519472
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/resources/messages.properties (original)
+++ jakarta/jmeter/branches/rel-2-2/src/core/org/apache/jmeter/resources/messages.properties Sat Mar 17 16:02:56 2007
@@ -679,7 +679,6 @@
 string_from_file_file_name=Enter full path to file
 string_from_file_seq_final=Final file sequence number
 string_from_file_seq_start=Start file sequence number
-success?=Success?
 summariser_title=Generate Summary Results
 summary_report=Summary Report
 switch_controller_label=Switch Value
@@ -688,6 +687,7 @@
 table_visualizer_sample_num=Sample #
 table_visualizer_sample_time=Sample Time(ms)
 table_visualizer_start_time=Start Time
+table_visualizer_status=Status
 table_visualizer_thread_name=Thread Name
 tcp_config_title=TCP Sampler Config
 tcp_nodelay=Set NoDelay

Modified: jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml?view=diff&rev=519472&r1=519471&r2=519472
==============================================================================
--- jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml (original)
+++ jakarta/jmeter/branches/rel-2-2/xdocs/changes.xml Sat Mar 17 16:02:56 2007
@@ -122,6 +122,7 @@
 <li>Add standard deviation to Summary Report</li>
 <li>Bug 41873 - Add name to AssertionResult and display AssertionResult in ViewResultsFullVisualizer</li>
 <li>Bug 41876 - Add more options to control what the HTTP Proxy generates</li>
+<li>Bug 39693 - View Result Table use icon instead of check box</li>
 </ul>
 
 <h4>Non-functional improvements:</h4>



---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org