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

Reply via email to