Package org.apache.jmeter.engine
Class TreeCloner
java.lang.Object
org.apache.jmeter.engine.TreeCloner
- All Implemented Interfaces:
 HashTreeTraverser
- Direct Known Subclasses:
 TreeClonerForValidation,TreeClonerNoTimer
Clones the test tree,  skipping test elements that implement 
NoThreadClone by default.- 
Constructor Summary
ConstructorsConstructorDescriptionClone the test tree, honouring NoThreadClone markers.TreeCloner(boolean honourNoThreadClone) Clone the test tree. - 
Method Summary
Modifier and TypeMethodDescriptionfinal voidThe tree traverses itself depth-first, calling addNode for each object it encounters as it goes.protected ObjectaddNodeToTree(Object node) voidProcess path is called when a leaf is reached.voidIndicates traversal has moved up a step, and the visitor should remove the top node from its stack structure. 
- 
Constructor Details
- 
TreeCloner
public TreeCloner()Clone the test tree, honouring NoThreadClone markers. - 
TreeCloner
public TreeCloner(boolean honourNoThreadClone) Clone the test tree.- Parameters:
 honourNoThreadClone- set false to clone NoThreadClone nodes as well
 
 - 
 - 
Method Details
- 
addNode
The tree traverses itself depth-first, calling addNode for each object it encounters as it goes. This is a callback method, and should not be called except by a HashTree during traversal.- Specified by:
 addNodein interfaceHashTreeTraverser- Parameters:
 node- the node currently encounteredsubTree- the HashTree under the node encountered
 - 
addNodeToTree
- Parameters:
 node- Node to add to tree or not- Returns:
 - Object node (clone or not)
 
 - 
subtractNode
public void subtractNode()Description copied from interface:HashTreeTraverserIndicates traversal has moved up a step, and the visitor should remove the top node from its stack structure. This is a callback method, and should not be called except by a HashTree during traversal.- Specified by:
 subtractNodein interfaceHashTreeTraverser
 - 
getClonedTree
 - 
processPath
public void processPath()Description copied from interface:HashTreeTraverserProcess path is called when a leaf is reached. If a visitor wishes to generate Lists of path elements to each leaf, it should keep a Stack data structure of nodes passed to it with addNode, and removing top items for everyHashTreeTraverser.subtractNode()call. This is a callback method, and should not be called except by a HashTree during traversal.- Specified by:
 processPathin interfaceHashTreeTraverser
 
 -