public class ParserAdapter extends Object implements XMLReader, DocumentHandler
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 SAX1 Parser
and makes it act as a SAX2 XMLReader
,
with feature, property, and Namespace support. Note
that it is not possible to report skippedEntity
events, since SAX1 does not make that information available.
This adapter does not test for duplicate Namespace-qualified attribute names.
XMLReaderAdapter
,
XMLReader
,
Parser
Constructor and Description |
---|
ParserAdapter()
Construct a new parser adapter.
|
ParserAdapter(Parser parser)
Construct a new parser adapter.
|
Modifier and Type | Method and Description |
---|---|
void |
characters(char[] ch,
int start,
int length)
Adapter implementation method; do not call.
|
void |
endDocument()
Adapter implementation method; do not call.
|
void |
endElement(String qName)
Adapter implementation method; do not call.
|
ContentHandler |
getContentHandler()
Return the current content handler.
|
DTDHandler |
getDTDHandler()
Return the current DTD handler.
|
EntityResolver |
getEntityResolver()
Return the current entity resolver.
|
ErrorHandler |
getErrorHandler()
Return the current error handler.
|
boolean |
getFeature(String name)
Check a parser feature flag.
|
Object |
getProperty(String name)
Get a parser property.
|
void |
ignorableWhitespace(char[] ch,
int start,
int length)
Adapter implementation method; do not call.
|
void |
parse(InputSource input)
Parse an XML document.
|
void |
parse(String systemId)
Parse an XML document.
|
void |
processingInstruction(String target,
String data)
Adapter implementation method; do not call.
|
void |
setContentHandler(ContentHandler handler)
Set the content handler.
|
void |
setDocumentLocator(Locator locator)
Adapter implementation method; do not call.
|
void |
setDTDHandler(DTDHandler handler)
Set the DTD handler.
|
void |
setEntityResolver(EntityResolver resolver)
Set the entity resolver.
|
void |
setErrorHandler(ErrorHandler handler)
Set the error handler.
|
void |
setFeature(String name,
boolean value)
Set a feature flag for the parser.
|
void |
setProperty(String name,
Object value)
Set a parser property.
|
void |
startDocument()
Adapter implementation method; do not call.
|
void |
startElement(String qName,
AttributeList qAtts)
Adapter implementation method; do not call.
|
public ParserAdapter() throws SAXException
Use the "org.xml.sax.parser" property to locate the embedded SAX1 driver.
SAXException
- If the embedded driver
cannot be instantiated or if the
org.xml.sax.parser property is not specified.public ParserAdapter(Parser parser)
Note that the embedded parser cannot be changed once the adapter is created; to embed a different parser, allocate a new ParserAdapter.
NullPointerException
- If the parser parameter
is null.parser
- The SAX1 parser to embed.public void setFeature(String name, boolean value) throws SAXNotRecognizedException, SAXNotSupportedException
The only features recognized are namespaces and namespace-prefixes.
setFeature
in interface XMLReader
SAXNotRecognizedException
- If the feature
can't be assigned or retrieved.SAXNotSupportedException
- If the feature
can't be assigned that value.name
- The feature name, as a complete URI.value
- The requested feature value.XMLReader.setFeature(java.lang.String, boolean)
public boolean getFeature(String name) throws SAXNotRecognizedException, SAXNotSupportedException
The only features recognized are namespaces and namespace-prefixes.
getFeature
in interface XMLReader
SAXNotRecognizedException
- If the feature
value can't be assigned or retrieved.SAXNotSupportedException
- If the
feature is not currently readable.name
- The feature name, as a complete URI.XMLReader.setFeature(java.lang.String, boolean)
public void setProperty(String name, Object value) throws SAXNotRecognizedException, SAXNotSupportedException
No properties are currently recognized.
setProperty
in interface XMLReader
SAXNotRecognizedException
- If the property
value can't be assigned or retrieved.SAXNotSupportedException
- If the property
can't be assigned that value.name
- The property name.value
- The property value.XMLReader.setProperty(java.lang.String, java.lang.Object)
public Object getProperty(String name) throws SAXNotRecognizedException, SAXNotSupportedException
No properties are currently recognized.
getProperty
in interface XMLReader
SAXNotRecognizedException
- If the property
value can't be assigned or retrieved.SAXNotSupportedException
- If the property
value is not currently readable.name
- The property name.XMLReader.getProperty(java.lang.String)
public void setEntityResolver(EntityResolver resolver)
setEntityResolver
in interface XMLReader
resolver
- The new entity resolver.XMLReader.setEntityResolver(org.xml.sax.EntityResolver)
public EntityResolver getEntityResolver()
getEntityResolver
in interface XMLReader
XMLReader.getEntityResolver()
public void setDTDHandler(DTDHandler handler)
setDTDHandler
in interface XMLReader
handler
- the new DTD handlerXMLReader.setEntityResolver(org.xml.sax.EntityResolver)
public DTDHandler getDTDHandler()
getDTDHandler
in interface XMLReader
XMLReader.getEntityResolver()
public void setContentHandler(ContentHandler handler)
setContentHandler
in interface XMLReader
handler
- the new content handlerXMLReader.setEntityResolver(org.xml.sax.EntityResolver)
public ContentHandler getContentHandler()
getContentHandler
in interface XMLReader
XMLReader.getEntityResolver()
public void setErrorHandler(ErrorHandler handler)
setErrorHandler
in interface XMLReader
handler
- The new error handler.XMLReader.setEntityResolver(org.xml.sax.EntityResolver)
public ErrorHandler getErrorHandler()
getErrorHandler
in interface XMLReader
XMLReader.getEntityResolver()
public void parse(String systemId) throws IOException, SAXException
parse
in interface XMLReader
IOException
- If there is a problem reading
the raw content of the document.SAXException
- If there is a problem
processing the document.systemId
- The absolute URL of the document.parse(org.xml.sax.InputSource)
,
Parser.parse(java.lang.String)
public void parse(InputSource input) throws IOException, SAXException
parse
in interface XMLReader
IOException
- If there is a problem reading
the raw content of the document.SAXException
- If there is a problem
processing the document.input
- An input source for the document.parse(java.lang.String)
,
Parser.parse(org.xml.sax.InputSource)
public void setDocumentLocator(Locator locator)
setDocumentLocator
in interface DocumentHandler
locator
- A document locator.ContentHandler.setDocumentLocator(org.xml.sax.Locator)
public void startDocument() throws SAXException
startDocument
in interface DocumentHandler
SAXException
- The client may raise a
processing exception.DocumentHandler.startDocument()
public void endDocument() throws SAXException
endDocument
in interface DocumentHandler
SAXException
- The client may raise a
processing exception.DocumentHandler.endDocument()
public void startElement(String qName, AttributeList qAtts) throws SAXException
If necessary, perform Namespace processing.
startElement
in interface DocumentHandler
SAXException
- The client may raise a
processing exception.qName
- The qualified (prefixed) name.qAtts
- The XML attribute list (with qnames).DocumentHandler.endElement(java.lang.String)
,
AttributeList
public void endElement(String qName) throws SAXException
endElement
in interface DocumentHandler
SAXException
- The client may raise a
processing exception.qName
- The qualified (prefixed) name.DocumentHandler.endElement(java.lang.String)
public void characters(char[] ch, int start, int length) throws SAXException
characters
in interface DocumentHandler
SAXException
- The client may raise a
processing exception.ch
- An array of characters.start
- The starting position in the array.length
- The number of characters to use.DocumentHandler.characters(char[], int, int)
public void ignorableWhitespace(char[] ch, int start, int length) throws SAXException
ignorableWhitespace
in interface DocumentHandler
SAXException
- The client may raise a
processing exception.ch
- An array of characters.start
- The starting position in the array.length
- The number of characters to use.DocumentHandler.ignorableWhitespace(char[], int, int)
public void processingInstruction(String target, String data) throws SAXException
processingInstruction
in interface DocumentHandler
SAXException
- The client may raise a
processing exception.target
- The processing instruction target.data
- The remainder of the processing instructionDocumentHandler.processingInstruction(java.lang.String, java.lang.String)
aicas GmbH, Karlsruhe, Germany —www.aicas.com
Copyright © 2001-2022 aicas GmbH. All Rights Reserved.