org.apache.jmeter.threads

## Class FindTestElementsUpToRootTraverser

- java.lang.Object
- - org.apache.jmeter.threads.FindTestElementsUpToRootTraverser

- All Implemented Interfaces:
    HashTreeTraverser

      public class FindTestElementsUpToRootTraverser
      extends Object
      implements HashTreeTraverser

  HashTreeTraverser implementation that stores in a Stack all the Test Elements on the path to a particular node.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `FindTestElementsUpToRootTraverser(Object nodeToFind)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addNode(Object node, HashTree subTree)` The tree traverses itself depth-first, calling addNode for each object it encounters as it goes.
    `List<Controller>` | `getControllersToRoot()` Returns all controllers that where in Tree down to nodeToFind in reverse order (from leaf to root)
    `void` | `processPath()` Process path is called when a leaf is reached.
    `void` | `subtractNode()` Indicates traversal has moved up a step, and the visitor should remove the top node from its stack structure.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### FindTestElementsUpToRootTraverser

          public FindTestElementsUpToRootTraverser(Object nodeToFind)

      Parameters:
        `nodeToFind` - Node to find

  - ### Method Detail

    - #### addNode

          public void addNode(Object node,
                              HashTree subTree)

      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:
        `addNode` in interface `HashTreeTraverser`
      Parameters:
        `node` - the node currently encountered
        `subTree` - the HashTree under the node encountered

    - #### subtractNode

          public void subtractNode()

      Indicates 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:
        `subtractNode` in interface `HashTreeTraverser`

    - #### processPath

          public void processPath()

      Process 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 every `HashTreeTraverser.subtractNode()` call. This is a callback method, and should not be called except by a HashTree during traversal.
      Specified by:
        `processPath` in interface `HashTreeTraverser`

    - #### getControllersToRoot

          public List<Controller> getControllersToRoot()

      Returns all controllers that where in Tree down to nodeToFind in reverse order (from leaf to root)
      Returns:
        List of `Controller`

Copyright © 1998-2022 Apache Software Foundation. All Rights Reserved.