Package org.apache.xml.dtm.ref
Class DTMTreeWalker
- java.lang.Object
-
- org.apache.xml.dtm.ref.DTMTreeWalker
-
- Direct Known Subclasses:
TreeWalker2Result
public class DTMTreeWalker extends java.lang.ObjectThis class does a pre-order walk of the DTM tree, calling a ContentHandler interface as it goes. As such, it's more like the Visitor design pattern than like the DOM's TreeWalker. I think normally this class should not be needed, because of DTM#dispatchToEvents.
-
-
Constructor Summary
Constructors Constructor Description DTMTreeWalker()Constructor.DTMTreeWalker(org.xml.sax.ContentHandler contentHandler, DTM dtm)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.xml.sax.ContentHandlergetcontentHandler()Get the ContentHandler used for the tree walk.voidsetcontentHandler(org.xml.sax.ContentHandler ch)Set the ContentHandler used for the tree walk.voidsetDTM(DTM dtm)Set the DTM to be traversed.voidtraverse(int pos)Perform a non-recursive pre-order/post-order traversal, operating as a Visitor. startNode (preorder) and endNode (postorder) are invoked for each node as we traverse over them, with the result that the node is written out to m_contentHandler.voidtraverse(int pos, int top)Perform a non-recursive pre-order/post-order traversal, operating as a Visitor. startNode (preorder) and endNode (postorder) are invoked for each node as we traverse over them, with the result that the node is written out to m_contentHandler.
-
-
-
Constructor Detail
-
DTMTreeWalker
public DTMTreeWalker()
Constructor.
-
DTMTreeWalker
public DTMTreeWalker(org.xml.sax.ContentHandler contentHandler, DTM dtm)Constructor.- Parameters:
contentHandler- The implemention of the contentHandler operation (toXMLString, digest, ...)
-
-
Method Detail
-
setDTM
public void setDTM(DTM dtm)
Set the DTM to be traversed.- Parameters:
dtm- The Document Table Model to be used.
-
getcontentHandler
public org.xml.sax.ContentHandler getcontentHandler()
Get the ContentHandler used for the tree walk.- Returns:
- the ContentHandler used for the tree walk
-
setcontentHandler
public void setcontentHandler(org.xml.sax.ContentHandler ch)
Set the ContentHandler used for the tree walk.- Parameters:
ch- the ContentHandler to be the result of the tree walk.
-
traverse
public void traverse(int pos) throws org.xml.sax.SAXExceptionPerform a non-recursive pre-order/post-order traversal, operating as a Visitor. startNode (preorder) and endNode (postorder) are invoked for each node as we traverse over them, with the result that the node is written out to m_contentHandler.- Parameters:
pos- Node in the tree at which to start (and end) traversal -- in other words, the root of the subtree to traverse over.- Throws:
TransformerExceptionorg.xml.sax.SAXException
-
traverse
public void traverse(int pos, int top) throws org.xml.sax.SAXExceptionPerform a non-recursive pre-order/post-order traversal, operating as a Visitor. startNode (preorder) and endNode (postorder) are invoked for each node as we traverse over them, with the result that the node is written out to m_contentHandler.- Parameters:
pos- Node in the tree where to start traversaltop- Node in the tree where to end traversal. If top==DTM.NULL, run through end of document.- Throws:
TransformerExceptionorg.xml.sax.SAXException
-
-