org.apache.xerces.dom

Class NodeIteratorImpl

Implemented Interfaces:
org.w3c.dom.traversal.NodeIterator

public class NodeIteratorImpl
extends java.lang.Object
implements org.w3c.dom.traversal.NodeIterator

DefaultNodeIterator implements a NodeIterator, which iterates a DOM tree in the expected depth first way.

The whatToShow and filter functionality is implemented as expected.

This class also has method removeNode to enable iterator "fix-up" on DOM remove. It is expected that the DOM implementation call removeNode right before the actual DOM transformation. If not called by the DOM, the client could call it before doing the removal.

Version:
$Id: NodeIteratorImpl.java 320096 2004-10-05 17:12:51Z mrglavas $

Constructor Summary

NodeIteratorImpl(DocumentImpl document, org.w3c.dom.Node root, int whatToShow, org.w3c.dom.traversal.NodeFilter nodeFilter, boolean entityReferenceExpansion)
Public constructor

Method Summary

void
detach()
boolean
getExpandEntityReferences()
Return whether children entity references are included in the iterator.
org.w3c.dom.traversal.NodeFilter
getFilter()
Return the filter
org.w3c.dom.Node
getRoot()
int
getWhatToShow()
Return the whatToShow value
org.w3c.dom.Node
nextNode()
Return the next Node in the Iterator.
org.w3c.dom.Node
previousNode()
Return the previous Node in the Iterator.
void
removeNode(org.w3c.dom.Node node)
Fix-up the iterator on a remove.

Constructor Details

NodeIteratorImpl

public NodeIteratorImpl(DocumentImpl document,
                        org.w3c.dom.Node root,
                        int whatToShow,
                        org.w3c.dom.traversal.NodeFilter nodeFilter,
                        boolean entityReferenceExpansion)
Public constructor

Method Details

detach

public void detach()
Specified by:
detach in interface org.w3c.dom.traversal.NodeIterator

getExpandEntityReferences

public boolean getExpandEntityReferences()
Return whether children entity references are included in the iterator.
Specified by:
getExpandEntityReferences in interface org.w3c.dom.traversal.NodeIterator

getFilter

public org.w3c.dom.traversal.NodeFilter getFilter()
Return the filter
Specified by:
getFilter in interface org.w3c.dom.traversal.NodeIterator

getRoot

public org.w3c.dom.Node getRoot()
Specified by:
getRoot in interface org.w3c.dom.traversal.NodeIterator

getWhatToShow

public int getWhatToShow()
Return the whatToShow value
Specified by:
getWhatToShow in interface org.w3c.dom.traversal.NodeIterator

nextNode

public org.w3c.dom.Node nextNode()
Return the next Node in the Iterator. The node is the next node in depth-first order which also passes the filter, and whatToShow. If there is no next node which passes these criteria, then return null.
Specified by:
nextNode in interface org.w3c.dom.traversal.NodeIterator

previousNode

public org.w3c.dom.Node previousNode()
Return the previous Node in the Iterator. The node is the next node in _backwards_ depth-first order which also passes the filter, and whatToShow.
Specified by:
previousNode in interface org.w3c.dom.traversal.NodeIterator

removeNode

public void removeNode(org.w3c.dom.Node node)
Fix-up the iterator on a remove. Called by DOM or otherwise, before an actual DOM remove.

Copyright B) 1999-2006 The Apache Software Foundation. All Rights Reserved.