XMLReaderAdapter
public class XMLReaderAdapter
extends Object implements ContentHandler, Parser
| java.lang.Object | |
| ↳ | org.xml.sax.helpers.XMLReaderAdapter |
Adapt a SAX2 XMLReader as a SAX1 Parser.
This module, both source code and documentation, is in the Public Domain, and comes with NO WARRANTY. See http://www.saxproject.org for further information.
This class wraps a SAX2 XMLReader and makes it act as a SAX1 Parser. The XMLReader must support a true value for the http://xml.org/sax/features/namespace-prefixes property or parsing will fail with a SAXException; if the XMLReader supports a false value for the http://xml.org/sax/features/namespaces property, that will also be used to improve efficiency.
Summary
Public constructors | |
|---|---|
XMLReaderAdapter() Create a new adapter. | |
XMLReaderAdapter(XMLReader xmlReader) Create a new adapter. | |
Public methods | |
|---|---|
void | characters(char[] ch, int start, int length) Adapt a SAX2 characters event. |
void | endDocument() End document event. |
void | endElement(String uri, String localName, String qName) Adapt a SAX2 end element event. |
void | endPrefixMapping(String prefix) Adapt a SAX2 end prefix mapping event. |
void | ignorableWhitespace(char[] ch, int start, int length) Adapt a SAX2 ignorable whitespace event. |
void | parse(InputSource input) Parse the document. |
void | parse(String systemId) Parse the document. |
void | processingInstruction(String target, String data) Adapt a SAX2 processing instruction event. |
void | setDTDHandler(DTDHandler handler) Register the DTD event handler. |
void | setDocumentHandler(DocumentHandler handler) Register the SAX1 document event handler. |
void | setDocumentLocator(Locator locator) Set a document locator. |
void | setEntityResolver(EntityResolver resolver) Register the entity resolver. |
void | setErrorHandler(ErrorHandler handler) Register the error event handler. |
void | setLocale(Locale locale) Set the locale for error reporting. |
void | skippedEntity(String name) Adapt a SAX2 skipped entity event. |
void | startDocument() Start document event. |
void | startElement(String uri, String localName, String qName, Attributes atts) Adapt a SAX2 start element event. |
void | startPrefixMapping(String prefix, String uri) Adapt a SAX2 start prefix mapping event. |
Inherited methods | |
|---|---|
Public constructors
XMLReaderAdapter
public XMLReaderAdapter ()
Create a new adapter.
Use the "org.xml.sax.driver" property to locate the SAX2 driver to embed.
| Throws | |
|---|---|
SAXException | If the embedded driver cannot be instantiated or if the org.xml.sax.driver property is not specified. |
XMLReaderAdapter
public XMLReaderAdapter (XMLReader xmlReader)
Create a new adapter.
Create a new adapter, wrapped around a SAX2 XMLReader. The adapter will make the XMLReader act like a SAX1 Parser.
| Parameters | |
|---|---|
xmlReader | XMLReader: The SAX2 XMLReader to wrap. |
| Throws | |
|---|---|
NullPointerException | If the argument is null. |
Public methods
characters
public void characters (char[] ch, int start, int length)
Adapt a SAX2 characters event.
| Parameters | |
|---|---|
ch | char: An array of characters. |
start | int: The starting position in the array. |
length | int: The number of characters to use. |
| Throws | |
|---|---|
SAXException | The client may raise a processing exception. |
endDocument
public void endDocument ()
End document event.
| Throws | |
|---|---|
SAXException | The client may raise a processing exception. |
See also:
endElement
public void endElement (String uri, String localName, String qName)
Adapt a SAX2 end element event.
| Parameters | |
|---|---|
uri | String: The Namespace URI. |
localName | String: The Namespace local name. |
qName | String: The qualified (prefixed) name. |
| Throws | |
|---|---|
SAXException | The client may raise a processing exception. |
endPrefixMapping
public void endPrefixMapping (String prefix)
Adapt a SAX2 end prefix mapping event.
| Parameters | |
|---|---|
prefix | String: The prefix being mapped. |
See also:
ignorableWhitespace
public void ignorableWhitespace (char[] ch, int start, int length)
Adapt a SAX2 ignorable whitespace event.
| Parameters | |
|---|---|
ch | char: An array of characters. |
start | int: The starting position in the array. |
length | int: The number of characters to use. |
| Throws | |
|---|---|
SAXException | The client may raise a processing exception. |
parse
public void parse (InputSource input)
Parse the document.
This method will throw an exception if the embedded XMLReader does not support the http://xml.org/sax/features/namespace-prefixes property.
| Parameters | |
|---|---|
input | InputSource: An input source for the document. |
| Throws | |
|---|---|
IOException | If there is a problem reading the raw content of the document. |
SAXException | If there is a problem processing the document. |
parse
public void parse (String systemId)
Parse the document.
This method will throw an exception if the embedded XMLReader does not support the http://xml.org/sax/features/namespace-prefixes property.
| Parameters | |
|---|---|
systemId | String: The absolute URL of the document. |
| Throws | |
|---|---|
IOException | If there is a problem reading the raw content of the document. |
SAXException | If there is a problem processing the document. |
processingInstruction
public void processingInstruction (String target, String data)
Adapt a SAX2 processing instruction event.
| Parameters | |
|---|---|
target | String: The processing instruction target. |
data | String: The remainder of the processing instruction |
| Throws | |
|---|---|
SAXException | The client may raise a processing exception. |
setDTDHandler
public void setDTDHandler (DTDHandler handler)
Register the DTD event handler.
| Parameters | |
|---|---|
handler | DTDHandler: The new DTD event handler. |
See also:
setDocumentHandler
public void setDocumentHandler (DocumentHandler handler)
Register the SAX1 document event handler.
Note that the SAX1 document handler has no Namespace support.
| Parameters | |
|---|---|
handler | DocumentHandler: The new SAX1 document event handler. |
setDocumentLocator
public void setDocumentLocator (Locator locator)
Set a document locator.
| Parameters | |
|---|---|
locator | Locator: The document locator. |
setEntityResolver
public void setEntityResolver (EntityResolver resolver)
Register the entity resolver.
| Parameters | |
|---|---|
resolver | EntityResolver: The new resolver. |
See also:
setErrorHandler
public void setErrorHandler (ErrorHandler handler)
Register the error event handler.
| Parameters | |
|---|---|
handler | ErrorHandler: The new error event handler. |
See also:
setLocale
public void setLocale (Locale locale)
Set the locale for error reporting.
This is not supported in SAX2, and will always throw an exception.
| Parameters | |
|---|---|
locale | Locale: the locale for error reporting. |
| Throws | |
|---|---|
SAXException | Thrown unless overridden. |
See also:
skippedEntity
public void skippedEntity (String name)
Adapt a SAX2 skipped entity event.
| Parameters | |
|---|---|
name | String: The name of the skipped entity. |
| Throws | |
|---|---|
SAXException | Throwable by subclasses. |
See also:
startDocument
public void startDocument ()
Start document event.
| Throws | |
|---|---|
SAXException | The client may raise a processing exception. |
See also:
startElement
public void startElement (String uri, String localName, String qName, Attributes atts)
Adapt a SAX2 start element event.
| Parameters | |
|---|---|
uri | String: The Namespace URI. |
localName | String: The Namespace local name. |
qName | String: The qualified (prefixed) name. |
atts | Attributes: The SAX2 attributes. |
| Throws | |
|---|---|
SAXException | The client may raise a processing exception. |
See also:
startPrefixMapping
public void startPrefixMapping (String prefix, String uri)
Adapt a SAX2 start prefix mapping event.
| Parameters | |
|---|---|
prefix | String: The prefix being mapped. |
uri | String: The Namespace URI being mapped to. |