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 2006/03/15 03:38:43 UTC

svn commit: r385953 - in /jakarta/jmeter/branches/rel-2-1: src/core/org/apache/jmeter/JMeter.java xdocs/changes.xml

Author: sebb
Date: Tue Mar 14 18:38:40 2006
New Revision: 385953

URL: http://svn.apache.org/viewcvs?rev=385953&view=rev
Log:
Bug 38681 - Include controller now works in non-GUI mode

Modified:
    jakarta/jmeter/branches/rel-2-1/src/core/org/apache/jmeter/JMeter.java
    jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml

Modified: jakarta/jmeter/branches/rel-2-1/src/core/org/apache/jmeter/JMeter.java
URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/src/core/org/apache/jmeter/JMeter.java?rev=385953&r1=385952&r2=385953&view=diff
==============================================================================
--- jakarta/jmeter/branches/rel-2-1/src/core/org/apache/jmeter/JMeter.java (original)
+++ jakarta/jmeter/branches/rel-2-1/src/core/org/apache/jmeter/JMeter.java Tue Mar 14 18:38:40 2006
@@ -38,6 +38,7 @@
 import org.apache.commons.cli.avalon.CLOptionDescriptor;
 import org.apache.commons.cli.avalon.CLUtil;
 import org.apache.jmeter.config.gui.AbstractConfigGui;
+import org.apache.jmeter.control.ReplaceableController;
 import org.apache.jmeter.control.gui.AbstractControllerGui;
 import org.apache.jmeter.control.gui.TestPlanGui;
 import org.apache.jmeter.control.gui.WorkBenchGui;
@@ -55,8 +56,6 @@
 import org.apache.jmeter.gui.tree.JMeterTreeModel;
 import org.apache.jmeter.plugin.JMeterPlugin;
 import org.apache.jmeter.plugin.PluginManager;
-// import org.apache.jmeter.processor.gui.AbstractPostProcessorGui;
-// import org.apache.jmeter.processor.gui.AbstractPreProcessorGui;
 import org.apache.jmeter.reporters.ResultCollector;
 import org.apache.jmeter.reporters.Summariser;
 import org.apache.jmeter.samplers.Remoteable;
@@ -529,31 +528,23 @@
 					tp.setFunctionalMode(tp.isFunctionalMode());
 					tp.setSerialized(tp.isSerialized());
 				}
-				// TODO handle ReplaceableControllers
-				// if (item instanceof ReplaceableController)
-				// {
-				// System.out.println("Replaceable "+item.getClass().getName());
-				// HashTree subTree = tree.getTree(item);
-				//
-				// if (subTree != null)
-				// {
-				// ReplaceableController rc =
-				// (ReplaceableController) item;//.createTestElement();
-				// rc.replace(subTree);
-				// convertSubTree(subTree);
-				// tree.replace(item, rc.getReplacement());
-				// }
-				// }
-				// else
-				{
-					// System.out.println("NonReplaceable
-					// "+item.getClass().getName());
-					convertSubTree(tree.getTree(item));
-					// TestElement testElement = item.createTestElement();
-					// tree.replace(item, testElement);
-				}
-			} else {
-				// System.out.println("Disabled "+item.getClass().getName());
+                // TODO: this is a bit of a hack, but seems to work for the Include Controller
+				if (item instanceof ReplaceableController) {
+                    // HACK: force the controller to load its tree
+                     ReplaceableController rc = (ReplaceableController) item.clone();
+                     HashTree subTree = tree.getTree(item);
+    				 if (subTree != null) {
+                         HashTree replacementTree = rc.getReplacementSubTree();
+                         convertSubTree(replacementTree);
+                         tree.replace(item,rc);
+                         tree.set(rc,replacementTree);
+                     } else {
+    					convertSubTree(tree.getTree(item));
+    				 }
+                } else {
+                    convertSubTree(tree.getTree(item));                    
+                } // ReplaceableController
+			} else {// disabled
 				tree.remove(item);
 			}
 		}

Modified: jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml
URL: http://svn.apache.org/viewcvs/jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml?rev=385953&r1=385952&r2=385953&view=diff
==============================================================================
--- jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml (original)
+++ jakarta/jmeter/branches/rel-2-1/xdocs/changes.xml Tue Mar 14 18:38:40 2006
@@ -85,6 +85,7 @@
 <li>Bug 38748 - JDBC DataSourceElement fails with remote testing</li>
 <li>Bug 38902 - sometimes -1 seems to be returned unnecessarily for response code</li>
 <li>Bug 38840 - make XML Assertion thread-safe</li>
+<li>Bug 38681 - Include controller now works in non-GUI mode</li>
 </ul>	
 	
 <h4>Other changes</h4>



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