Interface NodeIterator
public interface NodeIterator
NodeIterators are used to step through a set of nodes, e.g.
the set of nodes in a NodeList, the document subtree
governed by a particular Node, the results of a query, or
any other set of nodes. The set of nodes to be iterated is determined by
the implementation of the NodeIterator. DOM Level 2
specifies a single NodeIterator implementation for
document-order traversal of a document subtree. Instances of these
NodeIterators are created by calling
DocumentTraversal.createNodeIterator().
See also the Document Object Model (DOM) Level 2 Traversal and Range Specification.
- Since:
- 9, DOM Level 2
-
Method Summary
Modifier and TypeMethodDescriptionvoiddetach()Detaches theNodeIteratorfrom the set which it iterated over, releasing any computational resources and placing theNodeIteratorin the INVALID state.booleanThe value of this flag determines whether the children of entity reference nodes are visible to theNodeIterator.TheNodeFilterused to screen nodes.getRoot()The root node of theNodeIterator, as specified when it was created.intThis attribute determines which node types are presented via theNodeIterator.nextNode()Returns the next node in the set and advances the position of theNodeIteratorin the set.Returns the previous node in the set and moves the position of theNodeIteratorbackwards in the set.
-
Method Details
-
getRoot
Node getRoot()The root node of theNodeIterator, as specified when it was created. -
getWhatToShow
int getWhatToShow()This attribute determines which node types are presented via theNodeIterator. The available set of constants is defined in theNodeFilterinterface. Nodes not accepted bywhatToShowwill be skipped, but their children may still be considered. Note that this skip takes precedence over the filter, if any. -
getFilter
NodeFilter getFilter()TheNodeFilterused to screen nodes. -
getExpandEntityReferences
boolean getExpandEntityReferences()The value of this flag determines whether the children of entity reference nodes are visible to theNodeIterator. If false, these children and their descendants will be rejected. Note that this rejection takes precedence overwhatToShowand the filter. Also note that this is currently the only situation whereNodeIteratorsmay reject a complete subtree rather than skipping individual nodes.
To produce a view of the document that has entity references expanded and does not expose the entity reference node itself, use thewhatToShowflags to hide the entity reference node and setexpandEntityReferencesto true when creating theNodeIterator. To produce a view of the document that has entity reference nodes but no entity expansion, use thewhatToShowflags to show the entity reference node and setexpandEntityReferencesto false. -
nextNode
Returns the next node in the set and advances the position of theNodeIteratorin the set. After aNodeIteratoris created, the first call tonextNode()returns the first node in the set.- Returns:
- The next
Nodein the set being iterated over, ornullif there are no more members in that set. - Throws:
DOMException- INVALID_STATE_ERR: Raised if this method is called after thedetachmethod was invoked.
-
previousNode
Returns the previous node in the set and moves the position of theNodeIteratorbackwards in the set.- Returns:
- The previous
Nodein the set being iterated over, ornullif there are no more members in that set. - Throws:
DOMException- INVALID_STATE_ERR: Raised if this method is called after thedetachmethod was invoked.
-
detach
void detach()Detaches theNodeIteratorfrom the set which it iterated over, releasing any computational resources and placing theNodeIteratorin the INVALID state. Afterdetachhas been invoked, calls tonextNodeorpreviousNodewill raise the exception INVALID_STATE_ERR.
-