You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jmeter.apache.org by mi...@apache.org on 2014/07/24 15:03:54 UTC
svn commit: r1613102 - in /jmeter/trunk:
src/components/org/apache/jmeter/visualizers/RespTimeGraphVisualizer.java
src/components/org/apache/jmeter/visualizers/StatGraphProperties.java
xdocs/changes.xml xdocs/usermanual/component_reference.xml
Author: milamber
Date: Thu Jul 24 13:03:53 2014
New Revision: 1613102
URL: http://svn.apache.org/r1613102
Log:
Adds the ability for the Response Time Graph listener to save/restore format settings in/from the jmx file.
Bugzilla Id: 56769
Modified:
jmeter/trunk/src/components/org/apache/jmeter/visualizers/RespTimeGraphVisualizer.java
jmeter/trunk/src/components/org/apache/jmeter/visualizers/StatGraphProperties.java
jmeter/trunk/xdocs/changes.xml
jmeter/trunk/xdocs/usermanual/component_reference.xml
Modified: jmeter/trunk/src/components/org/apache/jmeter/visualizers/RespTimeGraphVisualizer.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/components/org/apache/jmeter/visualizers/RespTimeGraphVisualizer.java?rev=1613102&r1=1613101&r2=1613102&view=diff
==============================================================================
--- jmeter/trunk/src/components/org/apache/jmeter/visualizers/RespTimeGraphVisualizer.java (original)
+++ jmeter/trunk/src/components/org/apache/jmeter/visualizers/RespTimeGraphVisualizer.java Thu Jul 24 13:03:53 2014
@@ -63,6 +63,7 @@ import org.apache.jmeter.gui.util.FilePa
import org.apache.jmeter.gui.util.VerticalPanel;
import org.apache.jmeter.samplers.Clearable;
import org.apache.jmeter.samplers.SampleResult;
+import org.apache.jmeter.testelement.TestElement;
import org.apache.jmeter.util.JMeterUtils;
import org.apache.jmeter.visualizers.gui.AbstractVisualizer;
import org.apache.jmeter.visualizers.utils.Colors;
@@ -80,6 +81,86 @@ public class RespTimeGraphVisualizer ext
private final Font FONT_SMALL = new Font("SansSerif", Font.PLAIN, 10);
+ //+ JMX property names; do not change
+
+ public static final String INTERVAL = "RespTimeGraph.interval"; // $NON-NLS-1$
+
+ public static final String SERIES_SELECTION = "RespTimeGraph.seriesselection"; // $NON-NLS-1$
+
+ public static final String SERIES_SELECTION_MATCH_LABEL = "RespTimeGraph.seriesselectionmatchlabel"; // $NON-NLS-1$
+
+ public static final String SERIES_SELECTION_CASE_SENSITIVE = "RespTimeGraph.seriesselectioncasesensitive"; // $NON-NLS-1$
+
+ public static final String SERIES_SELECTION_REGEXP = "RespTimeGraph.seriesselectionregexp"; // $NON-NLS-1$
+
+ public static final String GRAPH_TITLE = "RespTimeGraph.graphtitle"; // $NON-NLS-1$
+
+ public static final String GRAPH_TITLE_FONT_NAME = "RespTimeGraph.graphtitlefontname"; // $NON-NLS-1$
+
+ public static final String GRAPH_TITLE_FONT_SIZE = "RespTimeGraph.graphtitlefondsize"; // $NON-NLS-1$
+
+ public static final String GRAPH_TITLE_FONT_STYLE = "RespTimeGraph.graphtitlefontstyle"; // $NON-NLS-1$
+
+ public static final String LINE_STROKE_WIDTH = "RespTimeGraph.linestrockwidth"; // $NON-NLS-1$
+
+ public static final String LINE_SHAPE_POINT = "RespTimeGraph.lineshapepoint"; // $NON-NLS-1$
+
+ public static final String GRAPH_SIZE_DYNAMIC = "RespTimeGraph.graphsizedynamic"; // $NON-NLS-1$
+
+ public static final String GRAPH_SIZE_WIDTH = "RespTimeGraph.graphsizewidth"; // $NON-NLS-1$
+
+ public static final String GRAPH_SIZE_HEIGHT = "RespTimeGraph.graphsizeheight"; // $NON-NLS-1$
+
+ public static final String XAXIS_TIME_FORMAT = "RespTimeGraph.xaxistimeformat"; // $NON-NLS-1$
+
+ public static final String YAXIS_SCALE_MAX_VALUE = "RespTimeGraph.yaxisscalemaxvalue"; // $NON-NLS-1$
+
+ public static final String YAXIS_INCREMENT_SCALE = "RespTimeGraph.yaxisscaleincrement"; // $NON-NLS-1$
+
+ public static final String YAXIS_NUMBER_GROUPING = "RespTimeGraph.yaxisnumbergrouping"; // $NON-NLS-1$
+
+ public static final String LEGEND_PLACEMENT = "RespTimeGraph.legendplacement"; // $NON-NLS-1$
+
+ public static final String LEGEND_FONT = "RespTimeGraph.legendfont"; // $NON-NLS-1$
+
+ public static final String LEGEND_SIZE = "RespTimeGraph.legendsize"; // $NON-NLS-1$
+
+ public static final String LEGEND_STYLE = "RespTimeGraph.legendstyle"; // $NON-NLS-1$
+
+ //- JMX property names
+
+ public static final int DEFAULT_INTERVAL = 10000; // in milli-seconds // TODO: properties?
+
+ public static final boolean DEFAULT_SERIES_SELECTION = false;
+
+ public static final boolean DEFAULT_CASE_SENSITIVE = false;
+
+ public static final boolean DEFAULT_REGEXP = true;
+
+ public static final int DEFAULT_TITLE_FONT_NAME = 0; // default: sans serif
+
+ public static final int DEFAULT_TITLE_FONT_SIZE = 6; // default: 16
+
+ public static final int DEFAULT_TITLE_FONT_STYLE = 1; // default: bold
+
+ public static final int DEFAULT_STROKE_WIDTH_LIST = 4; // default: 3.0f
+
+ public static final int DEFAULT_LINE_SHAPE_POINT = 0; // default: circle
+
+ public static final boolean DEFAULT_DYNAMIC_GRAPH_SIZE = true; // default: true
+
+ public static final String DEFAULT_XAXIS_TIME_FORMAT = "HH:mm:ss"; // $NON-NLS-1$
+
+ public static final boolean DEFAULT_NUMBER_SHOW_GROUPING = true;
+
+ public static final int DEFAULT_LEGEND_PLACEMENT = 0; // default: bottom
+
+ public static final int DEFAULT_LEGEND_FONT = 0; // default: sans serif
+
+ public static final int DEFAULT_LEGEND_SIZE = 2; // default: 10
+
+ public static final int DEFAULT_LEGEND_STYLE = 0; // default: normal
+
/**
* Lock used to protect list update
*/
@@ -103,10 +184,8 @@ public class RespTimeGraphVisualizer ext
private static final int DEFAULT_HEIGTH = 300;
- private static final int INTERVAL_DEFAULT = 10000; // in milli-seconds // TODO: properties?
-
- private int intervalValue = INTERVAL_DEFAULT;
-
+ private int intervalValue = DEFAULT_INTERVAL;
+
private final JLabeledTextField intervalField =
new JLabeledTextField(JMeterUtils.getResString("graph_resp_time_interval_label"), 7); //$NON-NLS-1$
@@ -146,7 +225,8 @@ public class RespTimeGraphVisualizer ext
private final JComboBox strokeWidthList = new JComboBox(StatGraphProperties.strokeWidth);
- private final JCheckBox numberShowGrouping = new JCheckBox(JMeterUtils.getResString("aggregate_graph_number_grouping"), true); // Default checked // $NON-NLS-1$
+ private final JCheckBox numberShowGrouping = new JCheckBox(JMeterUtils.getResString("aggregate_graph_number_grouping"), // $NON-NLS-1$
+ DEFAULT_NUMBER_SHOW_GROUPING); // Default checked
private final JButton syncWithName =
new JButton(JMeterUtils.getResString("aggregate_graph_sync_with_name")); //$NON-NLS-1$
@@ -447,25 +527,10 @@ public class RespTimeGraphVisualizer ext
} else if (eventSource == syncWithName) {
graphTitle.setText(namePanel.getName());
} else if (eventSource == dynamicGraphSize) {
- // if use dynamic graph size is checked, we disable the dimension fields
- if (dynamicGraphSize.isSelected()) {
- graphWidth.setEnabled(false);
- graphHeight.setEnabled(false);
- } else {
- graphWidth.setEnabled(true);
- graphHeight.setEnabled(true);
- }
+ enableDynamicGraph(dynamicGraphSize.isSelected());
} else if (eventSource == samplerSelection) {
- if (samplerSelection.isSelected()) {
- samplerMatchLabel.setEnabled(true);
- applyFilterBtn.setEnabled(true);
- caseChkBox.setEnabled(true);
- regexpChkBox.setEnabled(true);
- } else {
- samplerMatchLabel.setEnabled(false);
- applyFilterBtn.setEnabled(false);
- caseChkBox.setEnabled(false);
- regexpChkBox.setEnabled(false);
+ enableSamplerSelection(samplerSelection.isSelected());
+ if (!samplerSelection.isSelected()) {
// Force reload data
forceReloadData = true;
}
@@ -534,6 +599,97 @@ public class RespTimeGraphVisualizer ext
return this;
}
+ @Override
+ public void configure(TestElement te) {
+ super.configure(te);
+ intervalField.setText(te.getPropertyAsString(INTERVAL, String.valueOf(DEFAULT_INTERVAL)));
+ samplerSelection.setSelected(te.getPropertyAsBoolean(SERIES_SELECTION, DEFAULT_SERIES_SELECTION));
+ samplerMatchLabel.setText(te.getPropertyAsString(SERIES_SELECTION_MATCH_LABEL, "")); //$NON-NLS-1$
+ caseChkBox.setSelected(te.getPropertyAsBoolean(SERIES_SELECTION_CASE_SENSITIVE, DEFAULT_CASE_SENSITIVE));
+ regexpChkBox.setSelected(te.getPropertyAsBoolean(SERIES_SELECTION_REGEXP, DEFAULT_REGEXP));
+ graphTitle.setText(te.getPropertyAsString(GRAPH_TITLE, "")); //$NON-NLS-1$
+ titleFontNameList.setSelectedIndex(te.getPropertyAsInt(GRAPH_TITLE_FONT_NAME, DEFAULT_TITLE_FONT_NAME));
+ titleFontSizeList.setSelectedIndex(te.getPropertyAsInt(GRAPH_TITLE_FONT_SIZE, DEFAULT_TITLE_FONT_SIZE));
+ titleFontStyleList.setSelectedIndex(te.getPropertyAsInt(GRAPH_TITLE_FONT_STYLE, DEFAULT_TITLE_FONT_STYLE));
+ strokeWidthList.setSelectedIndex(te.getPropertyAsInt(LINE_STROKE_WIDTH, DEFAULT_STROKE_WIDTH_LIST));
+ pointShapeLine.setSelectedIndex(te.getPropertyAsInt(LINE_SHAPE_POINT, DEFAULT_LINE_SHAPE_POINT));
+ dynamicGraphSize.setSelected(te.getPropertyAsBoolean(GRAPH_SIZE_DYNAMIC, DEFAULT_DYNAMIC_GRAPH_SIZE));
+ graphWidth.setText(te.getPropertyAsString(GRAPH_SIZE_WIDTH, "")); //$NON-NLS-1$
+ graphHeight.setText(te.getPropertyAsString(GRAPH_SIZE_HEIGHT, "")); //$NON-NLS-1$
+ xAxisTimeFormat.setText(te.getPropertyAsString(XAXIS_TIME_FORMAT, DEFAULT_XAXIS_TIME_FORMAT));
+ maxValueYAxisLabel.setText(te.getPropertyAsString(YAXIS_SCALE_MAX_VALUE, "")); //$NON-NLS-1$
+ incrScaleYAxis.setText(te.getPropertyAsString(YAXIS_INCREMENT_SCALE, "")); //$NON-NLS-1$
+ numberShowGrouping.setSelected(te.getPropertyAsBoolean(YAXIS_NUMBER_GROUPING, DEFAULT_NUMBER_SHOW_GROUPING));
+ legendPlacementList.setSelectedIndex(te.getPropertyAsInt(LEGEND_PLACEMENT, DEFAULT_LEGEND_PLACEMENT));
+ fontNameList.setSelectedIndex(te.getPropertyAsInt(LEGEND_FONT, DEFAULT_LEGEND_FONT));
+ fontSizeList.setSelectedIndex(te.getPropertyAsInt(LEGEND_SIZE, DEFAULT_LEGEND_SIZE));
+ fontStyleList.setSelectedIndex(te.getPropertyAsInt(LEGEND_STYLE, DEFAULT_LEGEND_STYLE));
+
+ enableSamplerSelection(samplerSelection.isSelected());
+ enableDynamicGraph(dynamicGraphSize.isSelected());
+ }
+
+ @Override
+ public void modifyTestElement(TestElement te) {
+ super.modifyTestElement(te);
+ te.setProperty(INTERVAL, intervalField.getText(), String.valueOf(DEFAULT_INTERVAL));
+ te.setProperty(SERIES_SELECTION, samplerSelection.isSelected(), DEFAULT_SERIES_SELECTION);
+ te.setProperty(SERIES_SELECTION_MATCH_LABEL, samplerMatchLabel.getText(), ""); //$NON-NLS-1$
+ te.setProperty(SERIES_SELECTION_CASE_SENSITIVE, caseChkBox.isSelected(), DEFAULT_CASE_SENSITIVE);
+ te.setProperty(SERIES_SELECTION_REGEXP, regexpChkBox.isSelected(), DEFAULT_REGEXP);
+ te.setProperty(GRAPH_TITLE, graphTitle.getText(), ""); //$NON-NLS-1$
+ te.setProperty(GRAPH_TITLE_FONT_NAME, titleFontNameList.getSelectedIndex(), DEFAULT_TITLE_FONT_NAME);
+ te.setProperty(GRAPH_TITLE_FONT_SIZE, titleFontSizeList.getSelectedIndex(), DEFAULT_TITLE_FONT_SIZE);
+ te.setProperty(GRAPH_TITLE_FONT_STYLE, titleFontStyleList.getSelectedIndex(), DEFAULT_TITLE_FONT_STYLE);
+ te.setProperty(LINE_STROKE_WIDTH, strokeWidthList.getSelectedIndex(), DEFAULT_STROKE_WIDTH_LIST);
+ te.setProperty(LINE_SHAPE_POINT, pointShapeLine.getSelectedIndex(), DEFAULT_LINE_SHAPE_POINT);
+ te.setProperty(GRAPH_SIZE_DYNAMIC, dynamicGraphSize.isSelected(), DEFAULT_DYNAMIC_GRAPH_SIZE);
+ te.setProperty(GRAPH_SIZE_WIDTH, graphWidth.getText(), ""); //$NON-NLS-1$
+ te.setProperty(GRAPH_SIZE_HEIGHT, graphHeight.getText(), ""); //$NON-NLS-1$
+ te.setProperty(XAXIS_TIME_FORMAT, xAxisTimeFormat.getText(), DEFAULT_XAXIS_TIME_FORMAT);
+ te.setProperty(YAXIS_SCALE_MAX_VALUE, maxValueYAxisLabel.getText(), ""); //$NON-NLS-1$
+ te.setProperty(YAXIS_INCREMENT_SCALE, incrScaleYAxis.getText(), ""); //$NON-NLS-1$
+ te.setProperty(YAXIS_NUMBER_GROUPING, numberShowGrouping.isSelected(), DEFAULT_NUMBER_SHOW_GROUPING);
+ te.setProperty(LEGEND_PLACEMENT, legendPlacementList.getSelectedIndex(), DEFAULT_LEGEND_PLACEMENT);
+ te.setProperty(LEGEND_FONT, fontNameList.getSelectedIndex(), DEFAULT_LEGEND_FONT);
+ te.setProperty(LEGEND_SIZE, fontSizeList.getSelectedIndex(), DEFAULT_LEGEND_SIZE);
+ te.setProperty(LEGEND_STYLE, fontStyleList.getSelectedIndex(), DEFAULT_LEGEND_STYLE);
+
+ // Update sub-element visibility and data reload if need
+ enableSamplerSelection(samplerSelection.isSelected());
+ enableDynamicGraph(dynamicGraphSize.isSelected());
+ }
+
+ /**
+ * Implements JMeterGUIComponent.clearGui
+ */
+ @Override
+ public void clearGui() {
+ super.clearGui();
+ intervalField.setText(String.valueOf(DEFAULT_INTERVAL));
+ samplerSelection.setSelected(DEFAULT_SERIES_SELECTION);
+ samplerMatchLabel.setText( ""); //$NON-NLS-1$
+ caseChkBox.setSelected(DEFAULT_CASE_SENSITIVE);
+ regexpChkBox.setSelected(DEFAULT_REGEXP);
+ graphTitle.setText(""); //$NON-NLS-1$
+ titleFontNameList.setSelectedIndex(DEFAULT_TITLE_FONT_NAME);
+ titleFontSizeList.setSelectedIndex(DEFAULT_TITLE_FONT_SIZE);
+ titleFontStyleList.setSelectedIndex(DEFAULT_TITLE_FONT_STYLE);
+ strokeWidthList.setSelectedIndex(DEFAULT_STROKE_WIDTH_LIST);
+ pointShapeLine.setSelectedIndex(DEFAULT_LINE_SHAPE_POINT);
+ dynamicGraphSize.setSelected(DEFAULT_DYNAMIC_GRAPH_SIZE);
+ graphWidth.setText(""); //$NON-NLS-1$
+ graphHeight.setText(""); //$NON-NLS-1$
+ xAxisTimeFormat.setText(DEFAULT_XAXIS_TIME_FORMAT);
+ maxValueYAxisLabel.setText(""); //$NON-NLS-1$
+ incrScaleYAxis.setText(""); //$NON-NLS-1$
+ numberShowGrouping.setSelected(DEFAULT_NUMBER_SHOW_GROUPING);
+ legendPlacementList.setSelectedIndex(DEFAULT_LEGEND_PLACEMENT);
+ fontNameList.setSelectedIndex(DEFAULT_LEGEND_FONT);
+ fontSizeList.setSelectedIndex(DEFAULT_LEGEND_SIZE);
+ fontStyleList.setSelectedIndex(DEFAULT_LEGEND_STYLE);
+ }
+
private JPanel createGraphActionsPane() {
JPanel buttonPanel = new JPanel(new BorderLayout());
JPanel displayPane = new JPanel();
@@ -598,7 +754,7 @@ public class RespTimeGraphVisualizer ext
JPanel intervalPane = new JPanel();
intervalPane.setLayout(new FlowLayout(FlowLayout.LEFT, 0, 0));
- intervalField.setText(String.valueOf(INTERVAL_DEFAULT));
+ intervalField.setText(String.valueOf(DEFAULT_INTERVAL));
intervalPane.add(intervalField);
// Button
@@ -652,13 +808,13 @@ public class RespTimeGraphVisualizer ext
titleStylePane.setLayout(new FlowLayout(FlowLayout.LEFT, 0, 5));
titleStylePane.add(GuiUtils.createLabelCombo(JMeterUtils.getResString("aggregate_graph_font"), //$NON-NLS-1$
titleFontNameList));
- titleFontNameList.setSelectedIndex(0); // default: sans serif
+ titleFontNameList.setSelectedIndex(DEFAULT_TITLE_FONT_NAME);
titleStylePane.add(GuiUtils.createLabelCombo(JMeterUtils.getResString("aggregate_graph_size"), //$NON-NLS-1$
titleFontSizeList));
- titleFontSizeList.setSelectedItem(StatGraphProperties.fontSize[6]); // default: 16
+ titleFontSizeList.setSelectedItem(StatGraphProperties.fontSize[DEFAULT_TITLE_FONT_SIZE]);
titleStylePane.add(GuiUtils.createLabelCombo(JMeterUtils.getResString("aggregate_graph_style"), //$NON-NLS-1$
titleFontStyleList));
- titleFontStyleList.setSelectedItem(JMeterUtils.getResString("fontstyle.bold")); // $NON-NLS-1$ // default: bold
+ titleFontStyleList.setSelectedIndex(DEFAULT_TITLE_FONT_STYLE);
JPanel titlePane = new JPanel(new BorderLayout());
titlePane.setBorder(BorderFactory.createTitledBorder(BorderFactory.createEtchedBorder(),
@@ -676,10 +832,10 @@ public class RespTimeGraphVisualizer ext
JMeterUtils.getResString("graph_resp_time_settings_line"))); // $NON-NLS-1$
lineStylePane.add(GuiUtils.createLabelCombo(JMeterUtils.getResString("graph_resp_time_stroke_width"), //$NON-NLS-1$
strokeWidthList));
- strokeWidthList.setSelectedItem(StatGraphProperties.strokeWidth[4]); // default: 3.0f
+ strokeWidthList.setSelectedItem(StatGraphProperties.strokeWidth[DEFAULT_STROKE_WIDTH_LIST]);
lineStylePane.add(GuiUtils.createLabelCombo(JMeterUtils.getResString("graph_resp_time_shape_label"), //$NON-NLS-1$
pointShapeLine));
- pointShapeLine.setSelectedIndex(0); // default: circle
+ pointShapeLine.setSelectedIndex(DEFAULT_LINE_SHAPE_POINT);
return lineStylePane;
}
@@ -691,7 +847,7 @@ public class RespTimeGraphVisualizer ext
JMeterUtils.getResString("aggregate_graph_dimension"))); // $NON-NLS-1$
dimensionPane.add(dynamicGraphSize);
- dynamicGraphSize.setSelected(true); // default option
+ dynamicGraphSize.setSelected(DEFAULT_DYNAMIC_GRAPH_SIZE);
graphWidth.setEnabled(false);
graphHeight.setEnabled(false);
dynamicGraphSize.addActionListener(this);
@@ -712,7 +868,7 @@ public class RespTimeGraphVisualizer ext
xAxisPane.setBorder(BorderFactory.createTitledBorder(
BorderFactory.createEtchedBorder(),
JMeterUtils.getResString("aggregate_graph_xaxis_group"))); // $NON-NLS-1$
- xAxisTimeFormat.setText("HH:mm:ss"); // $NON-NLS-1$
+ xAxisTimeFormat.setText(DEFAULT_XAXIS_TIME_FORMAT); // $NON-NLS-1$
xAxisPane.add(xAxisTimeFormat);
return xAxisPane;
}
@@ -746,16 +902,16 @@ public class RespTimeGraphVisualizer ext
legendPanel.add(GuiUtils.createLabelCombo(JMeterUtils.getResString("aggregate_graph_legend_placement"), //$NON-NLS-1$
legendPlacementList));
- legendPlacementList.setSelectedItem(JMeterUtils.getResString("aggregate_graph_legend.placement.bottom")); //$NON-NLS-1$ default: bottom
+ legendPlacementList.setSelectedIndex(DEFAULT_LEGEND_PLACEMENT);
legendPanel.add(GuiUtils.createLabelCombo(JMeterUtils.getResString("aggregate_graph_font"), //$NON-NLS-1$
fontNameList));
- fontNameList.setSelectedIndex(0); // default: sans serif
+ fontNameList.setSelectedIndex(DEFAULT_LEGEND_FONT);
legendPanel.add(GuiUtils.createLabelCombo(JMeterUtils.getResString("aggregate_graph_size"), //$NON-NLS-1$
fontSizeList));
- fontSizeList.setSelectedItem(StatGraphProperties.fontSize[2]); // default: 10
+ fontSizeList.setSelectedItem(StatGraphProperties.fontSize[DEFAULT_LEGEND_SIZE]);
legendPanel.add(GuiUtils.createLabelCombo(JMeterUtils.getResString("aggregate_graph_style"), //$NON-NLS-1$
fontStyleList));
- fontStyleList.setSelectedItem(JMeterUtils.getResString("fontstyle.normal")); //$NON-NLS-1$ default: normal
+ fontStyleList.setSelectedIndex(DEFAULT_LEGEND_STYLE);
return legendPanel;
}
@@ -781,4 +937,29 @@ public class RespTimeGraphVisualizer ext
}
return pattern;
}
+
+ private void enableDynamicGraph(boolean enable) {
+ // if use dynamic graph size is checked, we disable the dimension fields
+ if (enable) {
+ graphWidth.setEnabled(false);
+ graphHeight.setEnabled(false);
+ } else {
+ graphWidth.setEnabled(true);
+ graphHeight.setEnabled(true);
+ }
+ }
+
+ private void enableSamplerSelection(boolean enable) {
+ if (enable) {
+ samplerMatchLabel.setEnabled(true);
+ applyFilterBtn.setEnabled(true);
+ caseChkBox.setEnabled(true);
+ regexpChkBox.setEnabled(true);
+ } else {
+ samplerMatchLabel.setEnabled(false);
+ applyFilterBtn.setEnabled(false);
+ caseChkBox.setEnabled(false);
+ regexpChkBox.setEnabled(false);
+ }
+ }
}
Modified: jmeter/trunk/src/components/org/apache/jmeter/visualizers/StatGraphProperties.java
URL: http://svn.apache.org/viewvc/jmeter/trunk/src/components/org/apache/jmeter/visualizers/StatGraphProperties.java?rev=1613102&r1=1613101&r2=1613102&view=diff
==============================================================================
--- jmeter/trunk/src/components/org/apache/jmeter/visualizers/StatGraphProperties.java (original)
+++ jmeter/trunk/src/components/org/apache/jmeter/visualizers/StatGraphProperties.java Thu Jul 24 13:03:53 2014
@@ -21,7 +21,6 @@ package org.apache.jmeter.visualizers;
import java.awt.Font;
import java.awt.Shape;
-import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
@@ -36,7 +35,7 @@ public class StatGraphProperties {
public static final String[] strokeWidth = { "1.0f", "1.5f", "2.0f", "2.5f", "3.0f", "3.5f", "4.0f", "4.5f", "5.0f", "5.5f", "6.0f", "6.5f"};
public static Map<String, String> getFontNameMap() {
- Map<String, String> fontNameMap = new HashMap<String, String>(2);
+ Map<String, String> fontNameMap = new LinkedHashMap<String, String>(2);
fontNameMap.put(JMeterUtils.getResString("font.sansserif"), "SansSerif"); //$NON-NLS-1$ //$NON-NLS-1$
fontNameMap.put(JMeterUtils.getResString("font.serif"), "Serif"); //$NON-NLS-1$
return fontNameMap;
@@ -44,7 +43,7 @@ public class StatGraphProperties {
@SuppressWarnings("boxing")
public static Map<String, Integer> getFontStyleMap() {
- Map<String, Integer> fontStyleMap = new HashMap<String, Integer>(3);
+ Map<String, Integer> fontStyleMap = new LinkedHashMap<String, Integer>(3);
fontStyleMap.put(JMeterUtils.getResString("fontstyle.normal"), Font.PLAIN); //$NON-NLS-1$
fontStyleMap.put(JMeterUtils.getResString("fontstyle.bold"), Font.BOLD); //$NON-NLS-1$
fontStyleMap.put(JMeterUtils.getResString("fontstyle.italic"), Font.ITALIC); //$NON-NLS-1$
@@ -53,7 +52,7 @@ public class StatGraphProperties {
@SuppressWarnings("boxing")
public static Map<String, Integer> getPlacementNameMap() {
- Map<String, Integer> placementNameMap = new HashMap<String, Integer>(4);
+ Map<String, Integer> placementNameMap = new LinkedHashMap<String, Integer>(4);
placementNameMap.put(JMeterUtils.getResString("aggregate_graph_legend.placement.bottom"), LegendAreaProperties.BOTTOM); //$NON-NLS-1$
placementNameMap.put(JMeterUtils.getResString("aggregate_graph_legend.placement.right"), LegendAreaProperties.RIGHT); //$NON-NLS-1$
placementNameMap.put(JMeterUtils.getResString("aggregate_graph_legend.placement.left"), LegendAreaProperties.LEFT); //$NON-NLS-1$
Modified: jmeter/trunk/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/jmeter/trunk/xdocs/changes.xml?rev=1613102&r1=1613101&r2=1613102&view=diff
==============================================================================
--- jmeter/trunk/xdocs/changes.xml (original)
+++ jmeter/trunk/xdocs/changes.xml Thu Jul 24 13:03:53 2014
@@ -187,10 +187,10 @@ A workaround is to use a Java 7 update 4
<h3>HTTP Samplers and Test Script Recorder</h3>
<ul>
-<li><bugzilla>55959</bugzilla> - improve error message when Test Script Recorder fails due to I/O problem</li>
-<li><bugzilla>52013</bugzilla> - Test Script Recorder's Child View Results Tree does not take into account Test Script Recorder excluded/included URLs. Based on report and analysis of James Liang</li>
+<li><bugzilla>55959</bugzilla> - Improve error message when Test Script Recorder fails due to I/O problem</li>
+<li><bugzilla>52013</bugzilla> - Test Script Recorder's Child View Results Tree does not take into account Test Script Recorder excluded/included URLs. Based on report and analysis of James Liang</li>
<li><bugzilla>56119</bugzilla> - File uploads fail every other attempt using timers. Enable idle timeouts for servers that don't send Keep-Alive headers.</li>
-<li><bugzilla>56272</bugzilla> - MirrorServer should support query parameters for status and redirects</li>
+<li><bugzilla>56272</bugzilla> - MirrorServer should support query parameters for status and redirects</li>
</ul>
<h3>Other samplers</h3>
@@ -210,6 +210,7 @@ A workaround is to use a Java 7 update 4
<ul>
<li><bugzilla>56228</bugzilla> - View Results Tree : Improve ergonomy by changing placement of Renderers and allowing custom ordering</li>
<li><bugzilla>56349</bugzilla> - "summary" is a bad name for a Generate Summary Results component, documentation clarified</li>
+<li><bugzilla>56769</bugzilla> - Adds the ability for the Response Time Graph listener to save/restore format settings in/from the jmx file</li>
</ul>
<h3>Timers, Assertions, Config, Pre- & Post-Processors</h3>
Modified: jmeter/trunk/xdocs/usermanual/component_reference.xml
URL: http://svn.apache.org/viewvc/jmeter/trunk/xdocs/usermanual/component_reference.xml?rev=1613102&r1=1613101&r2=1613102&view=diff
==============================================================================
--- jmeter/trunk/xdocs/usermanual/component_reference.xml (original)
+++ jmeter/trunk/xdocs/usermanual/component_reference.xml Thu Jul 24 13:03:53 2014
@@ -3043,7 +3043,7 @@ If many samples exist for the same times
<figure width="919" height="481" image="response_time_graph_settings.png">Response time graph settings</figure>
</p>
</div>
-<p><i>Please note: All this parameters <b>aren't</b> saved in JMeter jmx script.</i></p>
+<p><i>Please note: All this parameters are saved in JMeter .jmx file.</i></p>
<properties>
<property name="Interval (ms)" required="Yes">The time in milli-seconds for X axis interval. Samples are grouped according to this value.
Before display the graph, click on <b>Apply interval</b> button to refresh internal data.</property>