nu.validator.saxtree
Class TreeParser

java.lang.Object
  extended by nu.validator.saxtree.TreeParser
All Implemented Interfaces:
Locator

public final class TreeParser
extends Object
implements Locator

A tree visitor that replays a tree as SAX events.

Version:
$Id: TreeParser.java 367 2008-07-02 18:27:22Z hsivonen $
Author:
hsivonen

Field Summary
private  ContentHandler contentHandler
          The content handler.
private  LexicalHandler lexicalHandler
          The lexical handler.
private  Locator locatorDelegate
          The current locator.
 
Constructor Summary
TreeParser(ContentHandler contentHandler, LexicalHandler lexicalHandler)
          The constructor.
 
Method Summary
(package private)  void characters(char[] ch, int start, int length, Locator locator)
           
(package private)  void comment(char[] ch, int start, int length, Locator locator)
           
(package private)  void endCDATA(Locator locator)
           
(package private)  void endDocument(Locator locator)
           
(package private)  void endDTD(Locator locator)
           
(package private)  void endElement(String uri, String localName, String qName, Locator locator)
           
(package private)  void endEntity(String name, Locator locator)
           
(package private)  void endPrefixMapping(String prefix, Locator locator)
           
 int getColumnNumber()
           
 int getLineNumber()
           
 String getPublicId()
           
 String getSystemId()
           
(package private)  void ignorableWhitespace(char[] ch, int start, int length, Locator locator)
           
 void parse(Node node)
          Causes SAX events for the tree rooted at the argument to be emitted.
(package private)  void processingInstruction(String target, String data, Locator locator)
           
(package private)  void skippedEntity(String name, Locator locator)
           
(package private)  void startCDATA(Locator locator)
           
(package private)  void startDocument(Locator locator)
           
(package private)  void startDTD(String name, String publicId, String systemId, Locator locator)
           
(package private)  void startElement(String uri, String localName, String qName, Attributes atts, Locator locator)
           
(package private)  void startEntity(String name, Locator locator)
           
(package private)  void startPrefixMapping(String prefix, String uri, Locator locator)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

contentHandler

private final ContentHandler contentHandler
The content handler.


lexicalHandler

private final LexicalHandler lexicalHandler
The lexical handler.


locatorDelegate

private Locator locatorDelegate
The current locator.

Constructor Detail

TreeParser

public TreeParser(ContentHandler contentHandler,
                  LexicalHandler lexicalHandler)
The constructor.

Parameters:
contentHandler - must not be null
lexicalHandler - may be null
Method Detail

parse

public void parse(Node node)
           throws SAXException
Causes SAX events for the tree rooted at the argument to be emitted. startDocument() and endDocument() are only emitted for a Document node.

Parameters:
node - the root
Throws:
SAXException

characters

void characters(char[] ch,
                int start,
                int length,
                Locator locator)
          throws SAXException
Throws:
SAXException
See Also:
ContentHandler.characters(char[], int, int)

endDocument

void endDocument(Locator locator)
           throws SAXException
Throws:
SAXException
See Also:
ContentHandler.endDocument()

endElement

void endElement(String uri,
                String localName,
                String qName,
                Locator locator)
          throws SAXException
Throws:
SAXException
See Also:
ContentHandler.endElement(java.lang.String, java.lang.String, java.lang.String)

endPrefixMapping

void endPrefixMapping(String prefix,
                      Locator locator)
                throws SAXException
Throws:
SAXException
See Also:
ContentHandler.endPrefixMapping(java.lang.String)

ignorableWhitespace

void ignorableWhitespace(char[] ch,
                         int start,
                         int length,
                         Locator locator)
                   throws SAXException
Throws:
SAXException
See Also:
ContentHandler.ignorableWhitespace(char[], int, int)

processingInstruction

void processingInstruction(String target,
                           String data,
                           Locator locator)
                     throws SAXException
Throws:
SAXException
See Also:
ContentHandler.processingInstruction(java.lang.String, java.lang.String)

skippedEntity

void skippedEntity(String name,
                   Locator locator)
             throws SAXException
Throws:
SAXException
See Also:
ContentHandler.skippedEntity(java.lang.String)

startDocument

void startDocument(Locator locator)
             throws SAXException
Throws:
SAXException
See Also:
ContentHandler.startDocument()

startElement

void startElement(String uri,
                  String localName,
                  String qName,
                  Attributes atts,
                  Locator locator)
            throws SAXException
Throws:
SAXException
See Also:
ContentHandler.startElement(java.lang.String, java.lang.String, java.lang.String, org.xml.sax.Attributes)

startPrefixMapping

void startPrefixMapping(String prefix,
                        String uri,
                        Locator locator)
                  throws SAXException
Throws:
SAXException
See Also:
ContentHandler.startPrefixMapping(java.lang.String, java.lang.String)

comment

void comment(char[] ch,
             int start,
             int length,
             Locator locator)
       throws SAXException
Throws:
SAXException
See Also:
LexicalHandler.comment(char[], int, int)

endCDATA

void endCDATA(Locator locator)
        throws SAXException
Throws:
SAXException
See Also:
LexicalHandler.endCDATA()

endDTD

void endDTD(Locator locator)
      throws SAXException
Throws:
SAXException
See Also:
LexicalHandler.endDTD()

endEntity

void endEntity(String name,
               Locator locator)
         throws SAXException
Throws:
SAXException
See Also:
LexicalHandler.endEntity(java.lang.String)

startCDATA

void startCDATA(Locator locator)
          throws SAXException
Throws:
SAXException
See Also:
LexicalHandler.startCDATA()

startDTD

void startDTD(String name,
              String publicId,
              String systemId,
              Locator locator)
        throws SAXException
Throws:
SAXException
See Also:
LexicalHandler.startDTD(java.lang.String, java.lang.String, java.lang.String)

startEntity

void startEntity(String name,
                 Locator locator)
           throws SAXException
Throws:
SAXException
See Also:
LexicalHandler.startEntity(java.lang.String)

getColumnNumber

public int getColumnNumber()
Specified by:
getColumnNumber in interface Locator
See Also:
Locator.getColumnNumber()

getLineNumber

public int getLineNumber()
Specified by:
getLineNumber in interface Locator
See Also:
Locator.getLineNumber()

getPublicId

public String getPublicId()
Specified by:
getPublicId in interface Locator
See Also:
Locator.getPublicId()

getSystemId

public String getSystemId()
Specified by:
getSystemId in interface Locator
See Also:
Locator.getSystemId()