Package gov.usgs.util
Class SAXAdapter
- java.lang.Object
-
- org.xml.sax.helpers.DefaultHandler
-
- gov.usgs.util.SAXAdapter
-
- All Implemented Interfaces:
org.xml.sax.ContentHandler,org.xml.sax.DTDHandler,org.xml.sax.EntityResolver,org.xml.sax.ErrorHandler
- Direct Known Subclasses:
EventAddonParser,ProductTrackerParser,RegionsHandler,URLNotificationParser
public class SAXAdapter extends org.xml.sax.helpers.DefaultHandlerSAXAdapter is a sax handler that accumulates element content, which is a common sax handler task. Users should be cautious because this in some ways removes efficiency gained by handling streaming events, because element content is being buffered. One buffer for each element nesting is maintained, so this works best for shallow documents, whose elements contain little content.
-
-
Constructor Summary
Constructors Constructor Description SAXAdapter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidcharacters(char[] ch, int start, int length)Override DefaultHandler characters.voidendElement(java.lang.String uri, java.lang.String localName, java.lang.String qName)Override DefaultHandler endElement.voidonEndElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, java.lang.String content)SAXAdapter end element handler.voidonStartElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes attributes)SAXAdapter start element handler.java.lang.Exceptionparse(java.io.InputStream xml)Use this handler to parse an input stream.java.lang.Exceptionparse(java.lang.String xml)Use this handler to parse a string.voidstartElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes attributes)Override DefaultHandler startElement.
-
-
-
Method Detail
-
onStartElement
public void onStartElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes attributes) throws org.xml.sax.SAXExceptionSAXAdapter start element handler.- Parameters:
uri- element uri.localName- element localName.qName- element qName.attributes- element attributes.- Throws:
org.xml.sax.SAXException- if there is an error.
-
onEndElement
public void onEndElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, java.lang.String content) throws org.xml.sax.SAXExceptionSAXAdapter end element handler. Content only includes characters that were read from this element, NOT any characters from child elements.- Parameters:
uri- element uri.localName- element localName.qName- element qName.content- element content.- Throws:
org.xml.sax.SAXException- if onEndElement throws a SAXException.
-
startElement
public final void startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes attributes) throws org.xml.sax.SAXExceptionOverride DefaultHandler startElement. Adds a new element content buffer and calls onStartElement.- Specified by:
startElementin interfaceorg.xml.sax.ContentHandler- Overrides:
startElementin classorg.xml.sax.helpers.DefaultHandler- Parameters:
uri- element uri.localName- element localName.qName- element qName.attributes- element attributes.- Throws:
org.xml.sax.SAXException- if onStartElement throws a SAXException.
-
endElement
public final void endElement(java.lang.String uri, java.lang.String localName, java.lang.String qName) throws org.xml.sax.SAXExceptionOverride DefaultHandler endElement. Retrieves element content buffer and passes it to onEndElement.- Specified by:
endElementin interfaceorg.xml.sax.ContentHandler- Overrides:
endElementin classorg.xml.sax.helpers.DefaultHandler- Parameters:
uri- element uri.localName- element localName.qName- element qName.- Throws:
org.xml.sax.SAXException- if onEndElement throws a SAXException.
-
characters
public final void characters(char[] ch, int start, int length) throws org.xml.sax.SAXExceptionOverride DefaultHandler characters. Appends content to current element buffer, or skips if before first element.- Specified by:
charactersin interfaceorg.xml.sax.ContentHandler- Overrides:
charactersin classorg.xml.sax.helpers.DefaultHandler- Parameters:
ch- content.start- position in content to read.length- lenth of content to read.- Throws:
org.xml.sax.SAXException- never.
-
parse
public final java.lang.Exception parse(java.lang.String xml)
Use this handler to parse a string. Wraps string bytes in a ByteArrayInputStream.- Parameters:
xml- string containing xml to parse.- Returns:
- any exception that occurs while parsing, or null if no exceptions occur.
-
parse
public final java.lang.Exception parse(java.io.InputStream xml)
Use this handler to parse an input stream. Uses self as a content and error handler in an XMLReader. If an error occurs, use getException to retrieve the error.- Parameters:
xml- input stream of xml to parse.- Returns:
- any exception that occurs while parsing, or null if no exceptions occur.
-
-