org.htmlparser.util
public class NodeTreeWalker extends Object implements NodeIterator
Depth-first traversal | Breadth-first traversal |
---|---|
Field Summary | |
---|---|
protected Node | mCurrentNode
The current Node element, which will be a child of the root Node, or null. |
protected boolean | mDepthFirst
Whether the tree traversal method used is depth-first (default) or breadth-first. |
protected int | mMaxDepth
The maximum depth (child-parent links) from which this NodeTreeWalker may be removed from the root Node.
|
protected Node | mNextNode
The next Node element after the current Node element.
|
protected Node | mRootNode
The root Node element which defines the scope of the current tree to walk. |
Constructor Summary | |
---|---|
NodeTreeWalker(Node rootNode)
Creates a new instance of NodeTreeWalker using depth-first tree traversal, without limits on how deep it may traverse. | |
NodeTreeWalker(Node rootNode, boolean depthFirst)
Creates a new instance of NodeTreeWalker using the specified type of tree traversal, without limits on how deep it may traverse. | |
NodeTreeWalker(Node rootNode, boolean depthFirst, int maxDepth)
Creates a new instance of NodeTreeWalker using the specified type of tree traversal and maximum depth from the root Node to traverse. |
Method Summary | |
---|---|
Node | getCurrentNode()
Get the Node in the tree that the NodeTreeWalker is current at. |
int | getCurrentNodeDepth()
Get the number of places down that the current Node is from the root Node.
|
int | getMaxDepth()
The maximum depth (number of child-parent links) below the root Node that this NodeTreeWalker may traverse. |
protected Node | getNextNodeBreadthFirst()
Traverses to the next Node from the current Node using breadth-first tree traversal |
protected Node | getNextNodeDepthFirst()
Traverses to the next Node from the current Node using depth-first tree traversal |
Node | getRootNode()
Get the root Node that defines the scope of the tree to traverse. |
boolean | hasMoreNodes()
Returns whether or not there are more nodes available based on the current configuration of this NodeTreeWalker. |
protected void | initRootNode(Node rootNode)
Sets the root Node to be the given Node.
|
boolean | isDepthFirst()
Whether the NodeTreeWalker is currently set to use depth-first or breadth-first tree traversal. |
Node | nextNode()
Traverses to the next Node from the current Node, using either depth-first or breadth-first tree traversal as appropriate. |
void | removeMaxDepthRestriction()
Removes any restrictions in place that prevent this NodeTreeWalker from traversing beyond a certain depth. |
void | reset()
Resets the current position in the tree,
such that calling nextNode() will return the first Node again. |
void | setCurrentNodeAsRootNode()
Sets the current Node as the root Node.
|
void | setDepthFirst(boolean depthFirst)
Sets whether the NodeTreeWalker should use depth-first or breadth-first tree traversal. |
void | setRootNode(Node rootNode)
Sets the specified Node as the root Node.
|
Parameters: rootNode Node The Node to set as the root of the tree.
Throws: NullPointerException if root Node is null.
Parameters: rootNode The Node to set as the root of the tree. depthFirst Whether to use depth-first (true) or breadth-first (false) tree traversal.
Throws: NullPointerException if rootNode is null.
Parameters: rootNode The Node to set as the root of the tree. depthFirst Whether to use depth-first (true) or breadth-first (false) tree traversal. maxDepth The maximum depth from the root Node that this NodeTreeWalker may traverse. This must be > 0 or equal to -1.
Throws: NullPointerException if rootNode is null. IllegalArgumentException maxDepth is not > 0 or equal to -1.
Returns: The current Node.
Returns: The depth the current Node is from the root Node.
Returns: The maximum depth that this NodeTreeWalker can traverse to.
Returns: The next Node from the current Node using breadth-first tree traversal.
Returns: The next Node from the current Node using depth-first tree traversal.
Returns: The root Node.
Returns: True if there are more Nodes available, based on the current configuration, or false otherwise.
Parameters: rootNode The Node to set as the root of the tree.
Throws: NullPointerException if rootNode is null.
Returns: True if depth-first tree-traversal is used, or false if breadth-first tree-traversal is being used.
Returns: The next Node from the current Node.
nextNode()
will return the first Node again.Throws: NullPointerException if the current Node is null (i.e. if the tree traversal has not yet begun).
Parameters: depthFirst Whether to use depth-first (true) or breadth-first (false) tree traversal.
Parameters: rootNode The Node to set as the root of the tree.
Throws: NullPointerException if rootNode is null.
HTML Parser is an open source library released under LGPL. | |