Author: sebb Date: Sat Mar 6 17:52:28 2010 New Revision: 919806 URL: http://svn.apache.org/viewvc?rev=919806&view=rev Log: Make private fields final. Rename and rearrange code to make a bit clearer.
Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/engine/TreeCloner.java Modified: jakarta/jmeter/trunk/src/core/org/apache/jmeter/engine/TreeCloner.java URL: http://svn.apache.org/viewvc/jakarta/jmeter/trunk/src/core/org/apache/jmeter/engine/TreeCloner.java?rev=919806&r1=919805&r2=919806&view=diff ============================================================================== --- jakarta/jmeter/trunk/src/core/org/apache/jmeter/engine/TreeCloner.java (original) +++ jakarta/jmeter/trunk/src/core/org/apache/jmeter/engine/TreeCloner.java Sat Mar 6 17:52:28 2010 @@ -28,23 +28,36 @@ public class TreeCloner implements HashTreeTraverser { - private ListedHashTree newTree; + private final ListedHashTree newTree; - private LinkedList<Object> objects = new LinkedList<Object>(); + private final LinkedList<Object> objects = new LinkedList<Object>(); - private boolean forThread = true; + private final boolean honourNoThreadClone; + /** + * Clone the test tree, honouring NoThreadClone markers. + * + */ public TreeCloner() { this(true); } - public TreeCloner(boolean forThread) { + /** + * Clone the test tree. + * + * @param honourNoThreadClone set false to clone NoThreadClone nodes as well + */ + public TreeCloner(boolean honourNoThreadClone) { newTree = new ListedHashTree(); - this.forThread = forThread; + this.honourNoThreadClone = honourNoThreadClone; } public void addNode(Object node, HashTree subTree) { - if ((!forThread || !(node instanceof NoThreadClone)) && (node instanceof TestElement)) { + + if ( (node instanceof TestElement) // Check can cast for clone + // Don't clone NoThreadClone unless honourNoThreadClone == false + && (!honourNoThreadClone || !(node instanceof NoThreadClone)) + ) { node = ((TestElement) node).clone(); newTree.add(objects, node); } else { --------------------------------------------------------------------- To unsubscribe, e-mail: jmeter-dev-unsubscr...@jakarta.apache.org For additional commands, e-mail: jmeter-dev-h...@jakarta.apache.org