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 ms...@apache.org on 2003/03/26 16:19:24 UTC
cvs commit: jakarta-jmeter/src/core/org/apache/jmeter/threads JMeterThread.java ListenerNotifier.java
mstover1 2003/03/26 07:19:23
Modified: bin jmeter.properties
src/components/org/apache/jmeter/visualizers
GraphVisualizer.java SplineVisualizer.java
StatVisualizer.java TableVisualizer.java
src/core/org/apache/jmeter/engine StandardJMeterEngine.java
src/core/org/apache/jmeter/threads JMeterThread.java
ListenerNotifier.java
Log:
Changing listener notifier to not use a separate thread. Is simpler this way, and somewhat faster. Fixed some synchronization issues in visualizers
Revision Changes Path
1.61 +1 -0 jakarta-jmeter/bin/jmeter.properties
Index: jmeter.properties
===================================================================
RCS file: /home/cvs/jakarta-jmeter/bin/jmeter.properties,v
retrieving revision 1.60
retrieving revision 1.61
diff -u -r1.60 -r1.61
--- jmeter.properties 18 Mar 2003 21:36:01 -0000 1.60
+++ jmeter.properties 26 Mar 2003 15:19:22 -0000 1.61
@@ -78,6 +78,7 @@
log_level.jmeter.protocol.ftp=WARN
log_level.jmeter.protocol.jdbc=WARN
log_level.jmeter.protocol.java=WARN
+log_leve.jmeter.elements.properties=WARN
log_level.jorphan=ERROR
#Log file for log messages.
1.8 +3 -3 jakarta-jmeter/src/components/org/apache/jmeter/visualizers/GraphVisualizer.java
Index: GraphVisualizer.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/components/org/apache/jmeter/visualizers/GraphVisualizer.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- GraphVisualizer.java 7 Feb 2003 04:18:53 -0000 1.7
+++ GraphVisualizer.java 26 Mar 2003 15:19:23 -0000 1.8
@@ -142,7 +142,7 @@
/****************************************
* !ToDo (Method description)
***************************************/
- public void updateGui()
+ public synchronized void updateGui()
{
graph.updateGui();
noSamplesField.setText(Long.toString(model.getSampleCount()));
@@ -159,7 +159,7 @@
*
*@param s !ToDo (Parameter description)
***************************************/
- public void updateGui(Sample s)
+ public synchronized void updateGui(Sample s)
{
// We have received one more sample
graph.updateGui(s);
1.6 +14 -16 jakarta-jmeter/src/components/org/apache/jmeter/visualizers/SplineVisualizer.java
Index: SplineVisualizer.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/components/org/apache/jmeter/visualizers/SplineVisualizer.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- SplineVisualizer.java 3 Feb 2003 14:29:00 -0000 1.5
+++ SplineVisualizer.java 26 Mar 2003 15:19:23 -0000 1.6
@@ -54,7 +54,6 @@
*/
package org.apache.jmeter.visualizers;
-
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
@@ -76,7 +75,6 @@
import org.apache.jmeter.visualizers.gui.AbstractVisualizer;
import org.apache.jorphan.gui.layout.VerticalLayout;
-
/****************************************
* This class implements a statistical analyser that takes samples to process a
* Spline interpolated curve. Currently, it tries to look mostly like the
@@ -86,8 +84,7 @@
*@created $Date$
*@version 0.9.1
***************************************/
-public class SplineVisualizer extends AbstractVisualizer implements ImageVisualizer,
- GraphListener, Clearable
+public class SplineVisualizer extends AbstractVisualizer implements ImageVisualizer, GraphListener, Clearable
{
/****************************************
@@ -276,10 +273,13 @@
public void updateGui()
{
repaint();
- setMinimum(model.getMinimum());
- setMaximum(model.getMaximum());
- setAverage(model.getAverage());
- setIncoming(model.getCurrent());
+ synchronized (this)
+ {
+ setMinimum(model.getMinimum());
+ setMaximum(model.getMaximum());
+ setAverage(model.getAverage());
+ setIncoming(model.getCurrent());
+ }
}
/****************************************
@@ -454,8 +454,7 @@
g.setColor(this.getBackground());
g.fillRect(0, 0, width, height);
g.setColor(WAITING_COLOR);
- g.drawString(JMeterUtils.getResString("spline_visualizer_waitingmessage"),
- (width - 120) / 2, height - (height - 12) / 2);
+ g.drawString(JMeterUtils.getResString("spline_visualizer_waitingmessage"), (width - 120) / 2, height - (height - 12) / 2);
return;
}
@@ -474,7 +473,7 @@
lastHeight = height;
}
- this.plot = model.getDataCurve().getPlots(width, height);// rounds!
+ this.plot = model.getDataCurve().getPlots(width, height); // rounds!
int n = plot.length;
int curY = plot[0];
@@ -488,4 +487,3 @@
}
}
}
-
1.10 +11 -11 jakarta-jmeter/src/components/org/apache/jmeter/visualizers/StatVisualizer.java
Index: StatVisualizer.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/components/org/apache/jmeter/visualizers/StatVisualizer.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- StatVisualizer.java 3 Feb 2003 14:29:00 -0000 1.9
+++ StatVisualizer.java 26 Mar 2003 15:19:23 -0000 1.10
@@ -227,7 +227,7 @@
*
*@param s !ToDo (Parameter description)
***************************************/
- public void updateGui(RunningSample s)
+ public synchronized void updateGui(RunningSample s)
{
myStatTableModel.rowChanged(s.getIndex());
}
1.6 +12 -13 jakarta-jmeter/src/components/org/apache/jmeter/visualizers/TableVisualizer.java
Index: TableVisualizer.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/components/org/apache/jmeter/visualizers/TableVisualizer.java,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- TableVisualizer.java 3 Feb 2003 14:29:00 -0000 1.5
+++ TableVisualizer.java 26 Mar 2003 15:19:23 -0000 1.6
@@ -54,7 +54,6 @@
*/
package org.apache.jmeter.visualizers;
-
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.FlowLayout;
@@ -76,7 +75,6 @@
import org.apache.jmeter.visualizers.gui.AbstractVisualizer;
import org.apache.jorphan.gui.layout.VerticalLayout;
-
/****************************************
* This class implements a statistical analyser that calculates both the average
* and the standard deviation of the sampling process. The samples are displayed
@@ -86,8 +84,7 @@
*@created March 10, 2002
*@version $Revision$
***************************************/
-public class TableVisualizer extends AbstractVisualizer
- implements GraphListener, Clearable
+public class TableVisualizer extends AbstractVisualizer implements GraphListener, Clearable
{
private TableDataModel model = null;
private JTable table = null;
@@ -127,10 +124,15 @@
table.tableChanged(new TableModelEvent(model));
tableScrollPanel.revalidate();
tableScrollPanel.repaint();
- noSamplesField.setText(Long.toString(model.getSampleCount()));
- dataField.setText(Long.toString(model.getCurrentData()));
- averageField.setText(Long.toString(model.getCurrentAverage()));
- deviationField.setText(Long.toString(model.getCurrentDeviation()));
+ updateTextFields();
+ }
+
+ protected synchronized void updateTextFields()
+ {
+ noSamplesField.setText(Long.toString(model.getSampleCount()));
+ dataField.setText(Long.toString(model.getCurrentData()));
+ averageField.setText(Long.toString(model.getCurrentAverage()));
+ deviationField.setText(Long.toString(model.getCurrentDeviation()));
}
/****************************************
@@ -155,10 +157,7 @@
table.tableChanged(new TableModelEvent(model));
tableScrollPanel.revalidate();
tableScrollPanel.repaint();
- noSamplesField.setText(Long.toString(model.getSampleCount()));
- dataField.setText(Long.toString(model.getCurrentData()));
- averageField.setText(Long.toString(model.getCurrentAverage()));
- deviationField.setText(Long.toString(model.getCurrentDeviation()));
+ updateTextFields();
}
/****************************************
1.18 +6 -6 jakarta-jmeter/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java
Index: StandardJMeterEngine.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/engine/StandardJMeterEngine.java,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -r1.17 -r1.18
--- StandardJMeterEngine.java 14 Mar 2003 21:15:36 -0000 1.17
+++ StandardJMeterEngine.java 26 Mar 2003 15:19:23 -0000 1.18
@@ -163,7 +163,7 @@
notifyTestListenersOfStart();
}
notifier = new ListenerNotifier();
- notifier.start();
+ //notifier.start();
while(iter.hasNext())
{
ThreadGroup group = (ThreadGroup)iter.next();
@@ -238,9 +238,9 @@
protected void notifyTestListenersOfEnd()
{
- notifier.stop();
+ //notifier.stop();
Iterator iter = testListeners.getSearchResults().iterator();
- while(!notifier.isStopped())
+ /*while(!notifier.isStopped())
{
try
{
@@ -250,7 +250,7 @@
{
}
log.debug("Waiting for notifier thread to stop");
- }
+ }*/
while(iter.hasNext())
{
if(host == null)
1.19 +3 -3 jakarta-jmeter/src/core/org/apache/jmeter/threads/JMeterThread.java
Index: JMeterThread.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/threads/JMeterThread.java,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -r1.18 -r1.19
--- JMeterThread.java 18 Mar 2003 21:36:03 -0000 1.18
+++ JMeterThread.java 26 Mar 2003 15:19:23 -0000 1.19
@@ -270,7 +270,7 @@
{
SampleEvent event = new SampleEvent(result, (String) controller.getProperty(TestElement.NAME));
compiler.sampleOccurred(event);
- notifier.addLast(event, listeners);
+ notifier.notifyListeners(event, listeners);
}
public void setInitialDelay(int delay)
1.12 +2 -9 jakarta-jmeter/src/core/org/apache/jmeter/threads/ListenerNotifier.java
Index: ListenerNotifier.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/threads/ListenerNotifier.java,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- ListenerNotifier.java 11 Mar 2003 19:04:19 -0000 1.11
+++ ListenerNotifier.java 26 Mar 2003 15:19:23 -0000 1.12
@@ -27,7 +27,7 @@
*
* @see org.apache.jmeter.samplers.SampleListener
*/
-public class ListenerNotifier implements Runnable {
+public class ListenerNotifier {
private static Logger log =
LoggingManager.getLoggerFor(JMeterUtils.ENGINE);
@@ -62,13 +62,6 @@
BufferUtils.synchronizedBuffer(new UnboundedFifoBuffer());
- /**
- * Starts running the ListenerNotifier thread.
- */
- public void start() {
- isStopped = false;
- new Thread(this).start();
- }
/**
* Stops the ListenerNotifier thread. The thread will continue processing
@@ -213,7 +206,7 @@
* This list must not be null and must contain only
* SampleListener elements.
*/
- private void notifyListeners(SampleEvent res, List listeners) {
+ public void notifyListeners(SampleEvent res, List listeners) {
Iterator iter = listeners.iterator();
while (iter.hasNext()) {
((SampleListener) iter.next()).sampleOccurred(res);
---------------------------------------------------------------------
To unsubscribe, e-mail: jmeter-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: jmeter-dev-help@jakarta.apache.org