Class DTMTreeWalker

java.lang.Object
org.apache.xml.dtm.ref.DTMTreeWalker
Direct Known Subclasses:
TreeWalker2Result

public class DTMTreeWalker extends Object
This 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
    Constructor.
    DTMTreeWalker(ContentHandler contentHandler, DTM dtm)
    Constructor.
  • Method Summary

    Modifier and Type
    Method
    Description
    Get the ContentHandler used for the tree walk.
    void
    Set the ContentHandler used for the tree walk.
    void
    setDTM(DTM dtm)
    Set the DTM to be traversed.
    void
    traverse(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.
    void
    traverse(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.

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • DTMTreeWalker

      public DTMTreeWalker()
      Constructor.
    • DTMTreeWalker

      public DTMTreeWalker(ContentHandler contentHandler, DTM dtm)
      Constructor.
      Parameters:
      contentHandler - The implemention of the contentHandler operation (toXMLString, digest, ...)
  • Method Details

    • setDTM

      public void setDTM(DTM dtm)
      Set the DTM to be traversed.
      Parameters:
      dtm - The Document Table Model to be used.
    • getcontentHandler

      public ContentHandler getcontentHandler()
      Get the ContentHandler used for the tree walk.
      Returns:
      the ContentHandler used for the tree walk
    • setcontentHandler

      public void setcontentHandler(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 SAXException
      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.
      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:
      TransformerException
      SAXException
    • traverse

      public void traverse(int pos, int top) throws SAXException
      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.
      Parameters:
      pos - Node in the tree where to start traversal
      top - Node in the tree where to end traversal. If top==DTM.NULL, run through end of document.
      Throws:
      TransformerException
      SAXException