info.aduna.xml
Class SimpleSAXParser

java.lang.Object
  extended by info.aduna.xml.SimpleSAXParser

public class SimpleSAXParser
extends Object

An XML parser that generates "simple" SAX-like events from a limited subset of XML documents. The SimpleSAXParser can parse simple XML documents; it doesn't support processing instructions or elements that contain both sub-element and character data; character data is only supported in the "leaves" of the XML element tree.

Example:

Parsing the following XML:

 <?xml version='1.0' encoding='UTF-8'?>
 <xml-doc>
   <foo a="1" b="2&amp;3"/>
   <bar>Hello World!</bar>
 </xml-doc>

will result in the following method calls to the SimpleSAXListener:

 startDocument()
 startTag("xml-doc", emptyMap, "")

 startTag("foo", a_b_Map, "")
 endTag("foo")

 startTag("bar", emptyMap, "Hello World!")
 endTag("bar")

 endTag("xml-doc")
 endDocument()
 


Constructor Summary
SimpleSAXParser()
          Creates a new SimpleSAXParser that will try to create a new XMLReader using info.aduna.xml.XMLReaderFactory for parsing the XML.
SimpleSAXParser(XMLReader xmlReader)
          Creates a new SimpleSAXParser that will use the supplied XMLReader for parsing the XML.
 
Method Summary
 SimpleSAXListener getListener()
          Gets the listener that currently will receive any events from this parser.
 boolean isPreserveWhitespace()
          Checks whether leading and trailing whitespace characters in text elements are preserved.
 void parse(File file)
          Parses the content of the supplied File as XML.
 void parse(InputStream in)
          Parses the content of the supplied InputStream as XML.
 void parse(Reader reader)
          Parses the content of the supplied Reader as XML.
 void setListener(SimpleSAXListener listener)
          Sets the (new) listener that should receive any events from this parser.
 void setPreserveWhitespace(boolean preserveWhitespace)
          Sets whether leading and trailing whitespace characters in text elements should be preserved.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SimpleSAXParser

public SimpleSAXParser(XMLReader xmlReader)
Creates a new SimpleSAXParser that will use the supplied XMLReader for parsing the XML. One must set a SimpleSAXListener on this object before calling one of the parse() methods.

Parameters:
xmlReader - The XMLReader to use for parsing.
See Also:
setListener(info.aduna.xml.SimpleSAXListener)

SimpleSAXParser

public SimpleSAXParser()
                throws SAXException
Creates a new SimpleSAXParser that will try to create a new XMLReader using info.aduna.xml.XMLReaderFactory for parsing the XML. One must set a SimpleSAXListener on this object before calling one of the parse() methods.

Throws:
SAXException - If the SimpleSAXParser was unable to create an XMLReader.
See Also:
setListener(info.aduna.xml.SimpleSAXListener), XMLReader, XMLReaderFactory
Method Detail

setListener

public void setListener(SimpleSAXListener listener)
Sets the (new) listener that should receive any events from this parser. This listener will replace any previously set listener.

Parameters:
listener - The (new) listener for events from this parser.

getListener

public SimpleSAXListener getListener()
Gets the listener that currently will receive any events from this parser.

Returns:
The listener for events from this parser.

setPreserveWhitespace

public void setPreserveWhitespace(boolean preserveWhitespace)
Sets whether leading and trailing whitespace characters in text elements should be preserved. Such whitespace characters are discarded by default.


isPreserveWhitespace

public boolean isPreserveWhitespace()
Checks whether leading and trailing whitespace characters in text elements are preserved. Defaults to false.


parse

public void parse(File file)
           throws SAXException,
                  IOException
Parses the content of the supplied File as XML.

Parameters:
file - The file containing the XML to parse.
Throws:
SAXException
IOException

parse

public void parse(InputStream in)
           throws SAXException,
                  IOException
Parses the content of the supplied InputStream as XML.

Parameters:
in - An InputStream containing XML data.
Throws:
SAXException
IOException

parse

public void parse(Reader reader)
           throws SAXException,
                  IOException
Parses the content of the supplied Reader as XML.

Parameters:
reader - A Reader containing XML data.
Throws:
SAXException
IOException


Copyright © 2010 Aduna. All Rights Reserved.