mstover1 02/05/28 10:30:19
Modified: . build.bat build.xml
src_1/org/apache/jmeter/engine ConvertListeners.java
StandardJMeterEngine.java TreeCloner.java
src_1/org/apache/jmeter/gui GuiPackage.java MainFrame.java
src_1/org/apache/jmeter/gui/action RemoteStart.java
Start.java
src_1/org/apache/jmeter/protocol/java/test SleepTest.java
src_1/org/apache/jmeter/samplers
RemoteSampleListenerImpl.java
src_1/org/apache/jmeter/testelement AbstractTestElement.java
src_1/org/apache/jmeter/threads JMeterThread.java
Added: src_1/org/apache/jmeter/samplers RemoteListenerWrapper.java
RemoteSampleListenerWrapper.java
RemoteTestListenerWrapper.java
Log:
Remote testing working
Revision Changes Path
1.7 +1 -0 jakarta-jmeter/build.bat
Index: build.bat
===================================================================
RCS file: /home/cvs/jakarta-jmeter/build.bat,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- build.bat 28 Apr 2002 16:40:22 -0000 1.6
+++ build.bat 28 May 2002 17:30:18 -0000 1.7
@@ -10,6 +10,7 @@
set PATH=%JAVA_HOME%\bin;%PATH%
for %%i in (".\lib\*.jar") do CALL lcp %%i
+for %%i in (".\ext\*.jar") do CALL lcp %%i
for %%i in (..\jakarta-site2\lib\*.jar) do CALL lcp %%i
1.56 +3 -2 jakarta-jmeter/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/jakarta-jmeter/build.xml,v
retrieving revision 1.55
retrieving revision 1.56
diff -u -r1.55 -r1.56
--- build.xml 23 May 2002 15:47:03 -0000 1.55
+++ build.xml 28 May 2002 17:30:18 -0000 1.56
@@ -15,8 +15,9 @@
<!-- Build classpath -->
<path id="classpath">
- <fileset dir="./lib">
- <include name="**/*.jar"/>
+ <fileset dir=".">
+ <include name="**/lib/*.jar"/>
+ <include name="**/ext/*.jar"/>
</fileset>
<pathelement location="${tools.jar}"/>
</path>
1.2 +27 -1
jakarta-jmeter/src_1/org/apache/jmeter/engine/ConvertListeners.java
Index: ConvertListeners.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/engine/ConvertListeners.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- ConvertListeners.java 23 May 2002 15:47:04 -0000 1.1
+++ ConvertListeners.java 28 May 2002 17:30:18 -0000 1.2
@@ -7,9 +7,13 @@
import org.apache.jmeter.samplers.RemoteSampleListenerImpl;
import org.apache.jmeter.samplers.Remoteable;
import org.apache.jmeter.samplers.SampleListener;
+import org.apache.jmeter.samplers.RemoteListenerWrapper;
+import org.apache.jmeter.samplers.RemoteSampleListenerWrapper;
+import org.apache.jmeter.samplers.RemoteTestListenerWrapper;
import org.apache.jmeter.testelement.TestListener;
import org.apache.jmeter.util.ListedHashTree;
import org.apache.jmeter.util.ListedHashTreeVisitor;
+import org.apache.jmeter.threads.ThreadGroup;
/**
* @author mstover
@@ -23,15 +27,37 @@
* @see ListedHashTreeVisitor#addNode(Object, ListedHashTree)
*/
public void addNode(Object node, ListedHashTree subTree) {
+ if(node instanceof ThreadGroup)
+ {
+ System.out.println("num threads =
"+((ThreadGroup)node).getNumThreads());
+ }
Iterator iter = subTree.list().iterator();
while(iter.hasNext())
{
Object item = iter.next();
+ if(item instanceof ThreadGroup)
+ {
+ System.out.println("num threads =
"+((ThreadGroup)item).getNumThreads());
+ }
if(item instanceof Remoteable && (item instanceof TestListener
|| item instanceof SampleListener))
{
try {
RemoteSampleListener rtl = new
RemoteSampleListenerImpl(item);
- subTree.replace(item,rtl);
+ if(item instanceof TestListener && item
instanceof SampleListener)
+ {
+ RemoteListenerWrapper wrap = new
RemoteListenerWrapper(rtl);
+ subTree.replace(item,wrap);
+ }
+ else if(item instanceof TestListener)
+ {
+ RemoteTestListenerWrapper wrap = new
RemoteTestListenerWrapper(rtl);
+ subTree.replace(item,wrap);
+ }
+ else
+ {
+ RemoteSampleListenerWrapper wrap = new
RemoteSampleListenerWrapper(rtl);
+ subTree.replace(item,wrap);
+ }
} catch(RemoteException e) {
e.printStackTrace();
}
1.7 +13 -47
jakarta-jmeter/src_1/org/apache/jmeter/engine/StandardJMeterEngine.java
Index: StandardJMeterEngine.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/engine/StandardJMeterEngine.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- StandardJMeterEngine.java 23 May 2002 15:47:04 -0000 1.6
+++ StandardJMeterEngine.java 28 May 2002 17:30:18 -0000 1.7
@@ -67,21 +67,22 @@
import org.apache.jmeter.threads.ThreadGroup;
import org.apache.jmeter.util.ListedHashTree;
import org.apache.jmeter.util.SearchByClass;
+import org.apache.jmeter.engine.ConvertListeners;
/************************************************************
* !ToDo (Class description)
*
*@author $Author: mstover1 $
- *@created $Date: 2002/05/23 15:47:04 $
- *@version $Revision: 1.6 $
+ *@created $Date: 2002/05/28 17:30:18 $
+ *@version $Revision: 1.7 $
***********************************************************/
public class StandardJMeterEngine implements JMeterEngine,JMeterThreadMonitor
{
Set allThreads;
boolean running = false;
ListedHashTree test;
- SearchByClass testListeners,remoteTestListeners;
- String host;
+ SearchByClass testListeners;
+ String host = null;
/************************************************************
* !ToDo (Constructor description)
@@ -90,7 +91,7 @@
{
allThreads = new HashSet();
}
-
+
public StandardJMeterEngine(String host)
{
this();
@@ -116,10 +117,8 @@
running = true;
SearchByClass searcher = new SearchByClass(ThreadGroup.class);
testListeners = new SearchByClass(TestListener.class);
- remoteTestListeners = new SearchByClass(RemoteSampleListener.class);
getTestTree().traverse(testListeners);
getTestTree().traverse(searcher);
- getTestTree().traverse(remoteTestListeners);
TestCompiler.initialize();
//for each thread group, generate threads
// hand each thread the sampler controller
@@ -132,8 +131,10 @@
{
ThreadGroup group = (ThreadGroup)iter.next();
threads = new JMeterThread[group.getNumThreads()];
+ System.out.println("number of threads =
"+group.getNumThreads());
for(int i = 0;running && i < threads.length; i++)
{
+ System.out.println("starting a thread:tree list =
"+searcher.getSubTree(group).list());
threads[i] = new
JMeterThread(cloneTree(searcher.getSubTree(group)),this);
threads[i].setInitialDelay((int)(((float)(group.getRampUp() * 1000) /
(float)group.getNumThreads()) *
(float)i));
@@ -145,10 +146,10 @@
}
}
}
-
+
protected void notifyTestListenersOfStart()
{
- System.out.println("notifying test listeners");
+ System.out.println("notifying test listeners:
"+testListeners.getSearchResults().size());
Iterator iter = testListeners.getSearchResults().iterator();
while(iter.hasNext())
{
@@ -161,27 +162,9 @@
((TestListener)iter.next()).testStarted(host);
}
}
-
- iter = remoteTestListeners.getSearchResults().iterator();
- while(iter.hasNext())
- {
- try {
- System.out.println("Notifying a remote listener");
- if(host == null)
- {
-
((RemoteSampleListener)iter.next()).testStarted();
- }
- else
- {
-
((RemoteSampleListener)iter.next()).testStarted(host);
- }
- } catch(RemoteException e) {
- e.printStackTrace();
- }
- }
}
-
-
+
+
protected void notifyTestListenersOfEnd()
{
Iterator iter = testListeners.getSearchResults().iterator();
@@ -196,23 +179,6 @@
((TestListener)iter.next()).testEnded(host);
}
}
-
- iter = remoteTestListeners.getSearchResults().iterator();
- while(iter.hasNext())
- {
- try {
- if(host == null)
- {
-
((RemoteSampleListener)iter.next()).testEnded();
- }
- else
- {
-
((RemoteSampleListener)iter.next()).testEnded(host);
- }
- } catch(RemoteException e) {
- e.printStackTrace();
- }
- }
}
private ListedHashTree cloneTree(ListedHashTree tree)
@@ -233,7 +199,7 @@
running = false;
}
}
-
+
public void threadFinished(JMeterThread thread)
{
allThreads.remove(thread);
1.2 +1 -0 jakarta-jmeter/src_1/org/apache/jmeter/engine/TreeCloner.java
Index: TreeCloner.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/engine/TreeCloner.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- TreeCloner.java 19 Apr 2002 02:31:48 -0000 1.1
+++ TreeCloner.java 28 May 2002 17:30:18 -0000 1.2
@@ -28,6 +28,7 @@
}
public void addNode(Object node,ListedHashTree subTree)
{
+ System.out.println("Cloning object: "+node);
if(node instanceof PerThreadClonable)
{
node = ((PerThreadClonable)node).clone();
1.8 +3 -40 jakarta-jmeter/src_1/org/apache/jmeter/gui/GuiPackage.java
Index: GuiPackage.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/gui/GuiPackage.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- GuiPackage.java 23 May 2002 15:47:04 -0000 1.7
+++ GuiPackage.java 28 May 2002 17:30:18 -0000 1.8
@@ -73,12 +73,11 @@
* @version 1.0
*/
-public class GuiPackage implements TestListener,Remoteable
+public class GuiPackage
{
private static GuiPackage guiPack;
private boolean dirty = false;
- private Set hosts = new HashSet();
private GuiPackage()
{
@@ -99,51 +98,15 @@
}
return guiPack;
}
-
+
public void setDirty(boolean d)
{
dirty = d;
}
-
+
public boolean isDirty()
{
return dirty;
- }
-
- public void testStarted(String host)
- {
- hosts.add(host);
- if("local".equals(host))
- {
- getMainFrame().setRunning(true);
- }
- else
- {
- getMainFrame().setRunning(true,host);
- }
- }
-
- public void testStarted()
- {
- getMainFrame().setRunning(true);
- }
-
- public void testEnded()
- {
- testEnded("local");
- }
-
- public void testEnded(String host)
- {
- hosts.remove(host);
- if(!("local".equals(host)))
- {
- getMainFrame().setRunning(false,host);
- }
- if(hosts.size() == 0)
- {
- getMainFrame().setRunning(false);
- }
}
public void addSubTree(ListedHashTree subTree) throws
IllegalUserActionException
1.8 +46 -6 jakarta-jmeter/src_1/org/apache/jmeter/gui/MainFrame.java
Index: MainFrame.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/gui/MainFrame.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- MainFrame.java 23 May 2002 15:47:04 -0000 1.7
+++ MainFrame.java 28 May 2002 17:30:18 -0000 1.8
@@ -55,6 +55,7 @@
package org.apache.jmeter.gui;
import java.awt.*;
import java.awt.event.*;
+import java.util.*;
import javax.swing.*;
import javax.swing.tree.*;
import org.apache.jmeter.gui.action.ActionRouter;
@@ -63,15 +64,17 @@
import org.apache.jmeter.util.JMeterUtils;
import org.apache.jmeter.gui.action.Start;
import org.apache.jmeter.gui.action.CheckDirty;
+import org.apache.jmeter.testelement.TestListener;
+import org.apache.jmeter.samplers.Remoteable;
/****************************************
* Title: JMeter Description: Copyright: Copyright (c) 2000 Company: Apache
*
*@author Michael Stover
- *@created $Date: 2002/05/23 15:47:04 $
+ *@created $Date: 2002/05/28 17:30:18 $
*@version 1.0
***************************************/
-public class MainFrame extends JFrame
+public class MainFrame extends JFrame implements TestListener,Remoteable
{
JPanel all, mainPanel;
Box toolPanel;
@@ -87,6 +90,7 @@
private boolean running;
int previousDragXLocation = 0;
int previousDragYLocation = 0;
+ private Set hosts = new HashSet();
/****************************************
* !ToDo (Constructor description)
@@ -244,9 +248,45 @@
***************************************/
public void setRunning(boolean newRunning, String host)
{
+ if(newRunning)
+ {
+ hosts.add(host);
+ }
+ else
+ {
+ hosts.remove(host);
+ }
this.menuBar.setRunning(newRunning, host);
}
+ public void testStarted(String host)
+ {
+ runningIndicator.setIcon(runningIcon);
+ menuBar.setRunning(true,host);
+ }
+
+ public void testStarted()
+ {
+ testStarted("local");
+ menuBar.setEnabled(true);
+ }
+
+ public void testEnded()
+ {
+ testEnded("local");
+ menuBar.setEnabled(false);
+ }
+
+ public void testEnded(String host)
+ {
+ hosts.remove(host);
+ if(hosts.size() == 0)
+ {
+ runningIndicator.setIcon(stoppedIcon);
+ }
+ menuBar.setRunning(false,host);
+ }
+
/****************************************
* !ToDo (Method description)
*
@@ -328,9 +368,9 @@
{
treePanel = new JScrollPane(makeTree());
}
-
+
public void drawDraggedComponent(Component dragIcon,int x,int y)
- {
+ {
Dimension size = dragIcon.getPreferredSize();
treePanel.paintImmediately(previousDragXLocation,previousDragYLocation,size.width,size.height);
this.getLayeredPane().setLayer(dragIcon,400);
@@ -363,8 +403,8 @@
* !ToDo (Class description)
*
*@author $Author: mstover1 $
- *@created $Date: 2002/05/23 15:47:04 $
- *@version $Revision: 1.7 $
+ *@created $Date: 2002/05/28 17:30:18 $
+ *@version $Revision: 1.8 $
***************************************/
private class WindowHappenings extends WindowAdapter
{
1.4 +2 -2
jakarta-jmeter/src_1/org/apache/jmeter/gui/action/RemoteStart.java
Index: RemoteStart.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/gui/action/RemoteStart.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- RemoteStart.java 23 May 2002 15:47:04 -0000 1.3
+++ RemoteStart.java 28 May 2002 17:30:18 -0000 1.4
@@ -68,7 +68,7 @@
* Title: Description: Copyright: Copyright (c) 2001 Company:
*
*@author Michael Stover
- *@created $Date: 2002/05/23 15:47:04 $
+ *@created $Date: 2002/05/28 17:30:18 $
*@version 1.0
***************************************/
@@ -149,7 +149,7 @@
GuiPackage gui = GuiPackage.getInstance();
ListedHashTree testTree = gui.getTreeModel().getTestPlan();
convertSubTree(testTree);
- testTree.add(testTree.getArray()[0],gui);
+ testTree.add(testTree.getArray()[0],gui.getMainFrame());
engine.configure(testTree);
engine.runTest();
}
1.7 +1 -1 jakarta-jmeter/src_1/org/apache/jmeter/gui/action/Start.java
Index: Start.java
===================================================================
RCS file: /home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/gui/action/Start.java,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- Start.java 23 May 2002 15:47:04 -0000 1.6
+++ Start.java 28 May 2002 17:30:18 -0000 1.7
@@ -129,7 +129,7 @@
engine = new StandardJMeterEngine();
ListedHashTree testTree = gui.getTreeModel().getTestPlan();
convertSubTree(testTree);
- testTree.add(testTree.getArray()[0],gui);
+ testTree.add(testTree.getArray()[0],gui.getMainFrame());
engine.configure(testTree);
gui.getMainFrame().setRunning(true);
engine.runTest();
1.2 +14 -13
jakarta-jmeter/src_1/org/apache/jmeter/protocol/java/test/SleepTest.java
Index: SleepTest.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/protocol/java/test/SleepTest.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- SleepTest.java 21 May 2002 03:36:44 -0000 1.1
+++ SleepTest.java 28 May 2002 17:30:18 -0000 1.2
@@ -64,8 +64,8 @@
import org.apache.log4j.Category;
/**
- * The <code>SleepTest</code> class is a simple example class for a
- * JMeter Java protocol client. The class implements the
+ * The <code>SleepTest</code> class is a simple example class for a
+ * JMeter Java protocol client. The class implements the
* <code>JavaSamplerClient</code> interface.
*/
@@ -78,8 +78,8 @@
private long sleepMask = 0x3ff;
/**
* Default constructor for <code>SleepTest</code>.
- *
- * {@link org.apache.jmeter.protocol.java.config.JavaConfig JavaConfig}
+ *
+ * {@link org.apache.jmeter.protocol.java.config.JavaConfig JavaConfig}
* uses the default constructor to instantiate an instance of
* the client class.
*/
@@ -89,7 +89,7 @@
/**
* @see JavaSamplerClient#setupTest()
- *
+ *
* setupTest() provides a way to do any initialization that may be required.
*/
public void setupTest(HashMap arguments) {
@@ -99,11 +99,11 @@
Entry entry = (Entry)argsIt.next();
cat.debug(entry.getKey().toString() + "=" +
entry.getValue().toString());
}
-
+
if (arguments.containsKey("SleepTime")) {
setSleepTime(arguments.get("SleepTime"));
}
-
+
if (arguments.containsKey("SleepMask")) {
setSleepMask(arguments.get("SleepMask"));
}
@@ -111,7 +111,7 @@
/**
* @see JavaSamplerClient#teardownTest()
- *
+ *
* teardownTest() provides a way to do any clean-up that may be required.
*/
public void teardownTest(HashMap arguments) {
@@ -125,8 +125,8 @@
/**
* @see JavaSamplerClient#runTest()
- *
- * runTest() is called for each sample. The method returns a
+ *
+ * runTest() is called for each sample. The method returns a
* <code>SampleResult</code> object. The method must calculate
* how long the sample took to execute.
*/
@@ -139,12 +139,12 @@
//
long ct = System.currentTimeMillis();
ct %= getSleepMask();
- //
+ //
// Record sample start time.
//
long start = System.currentTimeMillis();
//
- // Execute the sample. In this case sleep for the
+ // Execute the sample. In this case sleep for the
// specified time.
//
Thread.sleep(getSleepTime() + ct);
@@ -154,6 +154,7 @@
long end = System.currentTimeMillis();
results.setTime(end - start);
results.setSuccessful(true);
+ System.out.println("Sleep Test: time = "+(end-start));
results.setSampleLabel("Sleep Test: time = "+getSleepTime() +
ct);
} catch (Exception e) {
}
@@ -178,7 +179,7 @@
sb.append(Integer.toHexString(hashCode()));
return sb.toString();
}
-
+
private long getSleepTime() {return sleepTime;}
private long getSleepMask() {return sleepMask;}
private void setSleepTime(Object arg) {
1.5 +7 -8
jakarta-jmeter/src_1/org/apache/jmeter/samplers/RemoteSampleListenerImpl.java
Index: RemoteSampleListenerImpl.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/samplers/RemoteSampleListenerImpl.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- RemoteSampleListenerImpl.java 23 May 2002 15:47:06 -0000 1.4
+++ RemoteSampleListenerImpl.java 28 May 2002 17:30:19 -0000 1.5
@@ -25,8 +25,7 @@
* if and wherever such third-party acknowledgments normally appear.
*
* 4. The names "Apache" and "Apache Software Foundation" and
- * "Apache JMeter" must not be used to endorse or promote products
- * derived from this software without prior written permission. For
+ * "Apache JMeter" must not be used to endorse or promote products * derived from
this software without prior written permission. For
* written permission, please contact [EMAIL PROTECTED]
*
* 5. Products derived from this software may not be called "Apache",
@@ -62,8 +61,8 @@
* !ToDo (Class description)
*
*@author $Author: mstover1 $
- *@created $Date: 2002/05/23 15:47:06 $
- *@version $Revision: 1.4 $
+ *@created $Date: 2002/05/28 17:30:19 $
+ *@version $Revision: 1.5 $
***********************************************************/
public class RemoteSampleListenerImpl
extends java.rmi.server.UnicastRemoteObject
@@ -90,7 +89,7 @@
sampleListener = (SampleListener)listener;
}
}
-
+
public void testStarted()
{
System.out.println("remoteSampleListener: testStarted()");
@@ -99,7 +98,7 @@
testListener.testStarted();
}
}
-
+
public void testStarted(String host)
{
System.out.println("remoteSampleListener: testStarted(String)");
@@ -108,7 +107,7 @@
testListener.testStarted(host);
}
}
-
+
public void testEnded()
{
System.out.println("remoteSampleListener: testEnded()");
@@ -117,7 +116,7 @@
testListener.testEnded();
}
}
-
+
public void testEnded(String host)
{
System.out.println("remoteSampleListener: testEnded(String)");
1.1
jakarta-jmeter/src_1/org/apache/jmeter/samplers/RemoteListenerWrapper.java
Index: RemoteListenerWrapper.java
===================================================================
package org.apache.jmeter.samplers;
import java.rmi.RemoteException;
import org.apache.jmeter.testelement.TestListener;
import org.apache.jmeter.testelement.AbstractTestElement;
import java.io.Serializable;
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2001</p>
* <p>Company: </p>
* @author unascribed
* @version 1.0
*/
public class RemoteListenerWrapper extends AbstractTestElement implements
SampleListener,TestListener,Serializable
{
RemoteSampleListener listener;
public RemoteListenerWrapper(RemoteSampleListener l)
{
listener = l;
}
public RemoteListenerWrapper()
{
}
public void testStarted()
{
try
{
listener.testStarted();
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
public void testEnded()
{
try
{
listener.testEnded();
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
public void testStarted(String host)
{
try
{
listener.testStarted(host);
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
public void testEnded(String host)
{
try
{
listener.testEnded(host);
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
public void sampleOccurred(SampleEvent e)
{
try
{
listener.sampleOccurred(e);
}
catch(RemoteException err)
{
err.printStackTrace();
}
}
public void sampleStarted(SampleEvent e)
{
try
{
listener.sampleStarted(e);
}
catch(RemoteException err)
{
err.printStackTrace();
}
}
public void sampleStopped(SampleEvent e)
{
try
{
listener.sampleStopped(e);
}
catch(RemoteException err)
{
err.printStackTrace();
}
}
}
1.1
jakarta-jmeter/src_1/org/apache/jmeter/samplers/RemoteSampleListenerWrapper.java
Index: RemoteSampleListenerWrapper.java
===================================================================
package org.apache.jmeter.samplers;
import java.rmi.RemoteException;
import org.apache.jmeter.testelement.AbstractTestElement;
import java.io.Serializable;
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2001</p>
* <p>Company: </p>
* @author unascribed
* @version 1.0
*/
public class RemoteSampleListenerWrapper extends AbstractTestElement implements
SampleListener,Serializable
{
RemoteSampleListener listener;
public RemoteSampleListenerWrapper(RemoteSampleListener l)
{
listener = l;
}
public RemoteSampleListenerWrapper()
{
}
public void sampleOccurred(SampleEvent e)
{
try
{
listener.sampleOccurred(e);
}
catch(RemoteException err)
{
err.printStackTrace();
}
}
public void sampleStarted(SampleEvent e)
{
try
{
listener.sampleStarted(e);
}
catch(RemoteException err)
{
err.printStackTrace();
}
}
public void sampleStopped(SampleEvent e)
{
try
{
listener.sampleStopped(e);
}
catch(RemoteException err)
{
err.printStackTrace();
}
}
}
1.1
jakarta-jmeter/src_1/org/apache/jmeter/samplers/RemoteTestListenerWrapper.java
Index: RemoteTestListenerWrapper.java
===================================================================
package org.apache.jmeter.samplers;
import org.apache.jmeter.testelement.TestListener;
import org.apache.jmeter.testelement.AbstractTestElement;
import java.io.Serializable;
/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2001</p>
* <p>Company: </p>
* @author unascribed
* @version 1.0
*/
public class RemoteTestListenerWrapper extends AbstractTestElement implements
TestListener,Serializable
{
RemoteSampleListener listener;
public RemoteTestListenerWrapper()
{
}
public RemoteTestListenerWrapper(RemoteSampleListener l)
{
listener = l;
}
public void testStarted()
{
try
{
listener.testStarted();
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
public void testEnded()
{
try
{
listener.testEnded();
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
public void testStarted(String host)
{
try
{
listener.testStarted(host);
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
public void testEnded(String host)
{
try
{
listener.testEnded(host);
}
catch (Exception ex)
{
ex.printStackTrace();
}
}
}
1.8 +6 -5
jakarta-jmeter/src_1/org/apache/jmeter/testelement/AbstractTestElement.java
Index: AbstractTestElement.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/testelement/AbstractTestElement.java,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -r1.7 -r1.8
--- AbstractTestElement.java 23 May 2002 15:47:06 -0000 1.7
+++ AbstractTestElement.java 28 May 2002 17:30:19 -0000 1.8
@@ -1,16 +1,17 @@
package org.apache.jmeter.testelement;
import java.lang.reflect.*;
import java.util.*;
+import java.io.Serializable;
/****************************************
* Title: JMeter Description: Copyright: Copyright (c) 2000 Company: Apache
*
*@author Michael Stover
- *@created $Date: 2002/05/23 15:47:06 $
+ *@created $Date: 2002/05/28 17:30:19 $
*@version 1.0
***************************************/
-public abstract class AbstractTestElement implements TestElement
+public abstract class AbstractTestElement implements TestElement,Serializable
{
private Map testInfo = new HashMap();
@@ -39,7 +40,7 @@
{
testInfo.remove(key);
}
-
+
public boolean equals(Object o)
{
if(o instanceof AbstractTestElement)
@@ -139,7 +140,7 @@
newObject.setProperty(key,cloneCollection(value));
} catch(Exception e) {
e.printStackTrace();
- }
+ }
}
else
{
@@ -166,7 +167,7 @@
val = cloneCollection(val);
} catch(Exception e) {
continue;
- }
+ }
}
newColl.add(val);
}
1.10 +7 -5 jakarta-jmeter/src_1/org/apache/jmeter/threads/JMeterThread.java
Index: JMeterThread.java
===================================================================
RCS file:
/home/cvs/jakarta-jmeter/src_1/org/apache/jmeter/threads/JMeterThread.java,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- JMeterThread.java 23 May 2002 15:47:07 -0000 1.9
+++ JMeterThread.java 28 May 2002 17:30:19 -0000 1.10
@@ -70,8 +70,8 @@
* timing, add listeners for sampling events and to stop the sampling process.
*
*@author $Author: mstover1 $
- *@created $Date: 2002/05/23 15:47:07 $
- *@version $Revision: 1.9 $
+ *@created $Date: 2002/05/28 17:30:19 $
+ *@version $Revision: 1.10 $
***************************************/
public class JMeterThread implements Runnable, java.io.Serializable {
static Map samplers = new HashMap();
@@ -92,7 +92,7 @@
compiler = new TestCompiler(testTree);
controller = (Controller) testTree.getArray()[0];
}
-
+
public void setThreadName(String threadName)
{
this.threadName = threadName;
@@ -133,7 +133,7 @@
Iterator iter = assertions.iterator();
while (iter.hasNext()) {
AssertionResult assertion =
((Assertion)iter.next()).getResult(result);
- result.setSuccessful(result.isSuccessful() &&
+ result.setSuccessful(result.isSuccessful() &&
!(assertion.isError() ||
assertion.isFailure()));
result.addAssertionResult(assertion);
}
@@ -156,7 +156,9 @@
new SampleEvent(result, (String)
controller.getProperty(TestElement.NAME));
Iterator iter = listeners.iterator();
while (iter.hasNext()) {
- SampleListener item = (SampleListener) iter.next();
+ SampleListener lis = (SampleListener)iter.next();
+ System.out.println("notifying listener: "+lis);
+ SampleListener item = lis;
item.sampleOccurred(event);
}
}
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>