mstover1 2002/08/21 09:09:35 Modified: src/core/org/apache/jmeter/engine StandardJMeterEngine.java src/core/org/apache/jmeter/gui/tree JMeterTreeModel.java src/functions/org/apache/jmeter/functions RegexFunction.java Log: Fixed problem with the "-l" option in running JMeter in non-gui mode. Revision Changes Path 1.3 +27 -3 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.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- StandardJMeterEngine.java 16 Aug 2002 21:10:20 -0000 1.2 +++ StandardJMeterEngine.java 21 Aug 2002 16:09:35 -0000 1.3 @@ -58,9 +58,12 @@ import java.io.StringWriter; import java.util.HashSet; import java.util.Iterator; +import java.util.LinkedList; +import java.util.List; import java.util.Set; import org.apache.jmeter.reporters.ResultCollector; +import org.apache.jmeter.testelement.TestElement; import org.apache.jmeter.testelement.TestListener; import org.apache.jmeter.testelement.TestPlan; import org.apache.jmeter.threads.JMeterThread; @@ -130,6 +133,8 @@ System.out.println("Running the test!"); running = true; compileTree(); + List testLevelElements = new LinkedList(getTestTree().list(getTestTree().getArray()[0])); + removeThreadGroups(testLevelElements); SearchByClass searcher = new SearchByClass(ThreadGroup.class); testListeners = new SearchByClass(TestListener.class); setMode(); @@ -151,7 +156,9 @@ threads = new JMeterThread[group.getNumThreads()]; for(int i = 0;running && i < threads.length; i++) { - threads[i] = new JMeterThread(cloneTree(searcher.getSubTree(group)),this); + ListedHashTree threadGroupTree = searcher.getSubTree(group); + threadGroupTree.add(group,testLevelElements); + threads[i] = new JMeterThread(cloneTree(threadGroupTree),this); threads[i].setInitialDelay((int)(((float)(group.getRampUp() * 1000) / (float)group.getNumThreads()) * (float)i)); threads[i].setThreadName(group.getName()+"-"+(i+1)); @@ -169,6 +176,23 @@ PrintWriter writer = new PrintWriter(string); err.printStackTrace(writer); throw new JMeterEngineException(string.toString()); + } + } + + private void removeThreadGroups(List elements) + { + Iterator iter = elements.iterator(); + while(iter.hasNext()) + { + Object item = iter.next(); + if(item instanceof ThreadGroup) + { + iter.remove(); + } + else if(!(item instanceof TestElement)) + { + iter.remove(); + } } } 1.2 +1 -5 jakarta-jmeter/src/core/org/apache/jmeter/gui/tree/JMeterTreeModel.java Index: JMeterTreeModel.java =================================================================== RCS file: /home/cvs/jakarta-jmeter/src/core/org/apache/jmeter/gui/tree/JMeterTreeModel.java,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- JMeterTreeModel.java 11 Aug 2002 19:24:44 -0000 1.1 +++ JMeterTreeModel.java 21 Aug 2002 16:09:35 -0000 1.2 @@ -144,10 +144,6 @@ public JMeterTreeNode addComponent(Object component, JMeterTreeNode node) throws IllegalUserActionException { - if((node.getUserObject() instanceof TestPlanGui) && !(component instanceof ThreadGroupGui)) - { - throw new IllegalUserActionException("Only ThreadGroups can be added to Test Plan nodes"); - } if(node.getUserObject() instanceof AbstractConfigGui) { throw new IllegalUserActionException("This node cannot hold sub-elements"); 1.3 +0 -2 jakarta-jmeter/src/functions/org/apache/jmeter/functions/RegexFunction.java Index: RegexFunction.java =================================================================== RCS file: /home/cvs/jakarta-jmeter/src/functions/org/apache/jmeter/functions/RegexFunction.java,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- RegexFunction.java 16 Aug 2002 21:10:21 -0000 1.2 +++ RegexFunction.java 21 Aug 2002 16:09:35 -0000 1.3 @@ -109,7 +109,6 @@ } else if(valueIndex.equals(RAND)) { - System.out.println("Number of matches = "+collectAllMatches.size()); MatchResult result = (MatchResult)collectAllMatches.get( rand.nextInt(collectAllMatches.size())); return generateResult(result); @@ -182,7 +181,6 @@ if(tk.hasNext()) { valueIndex = (String)tk.next(); - System.out.println("Value index = "+valueIndex); } if(tk.hasNext()) {
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>