Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.xml.sax.helpers
Class ParserAdapter

    java.lang.Object
      |
      +--org.xml.sax.helpers.ParserAdapter

All Implemented Interfaces:
  DocumentHandler, XMLReader

public class ParserAdapter
extends java.lang.Object
implements XMLReader, DocumentHandler

Adapt a SAX1 Parser as a SAX2 XMLReader.

> This module, both source code and documentation, is in the Public Domain, and comes with NO WARRANTY.

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.

Note that this is not the class shipped with SAX 2.0.1; this class takes into account the presence of AccessControllers in J2EE 1.4. It also throws NullPointerExceptions when setters are called with null parameters; the 2.0.1 version does not exhibit this behaviour.

Since:
  SAX 2.0
Version:
  2.0
Author:
  David Megginson, sax@megginson.com
See Also:
  `XMLReaderAdapter`, `XMLReader`, `Parser`

Constructor Summary
`ParserAdapter()` Construct a new parser adapter.
`ParserAdapter(Parser parser)` Construct a new parser adapter.

Method Summary
`void` | `characters(char[] ch, int start, int length)` Adapt a SAX1 characters event.
`void` | `endDocument()` Adapt a SAX1 end document event.
`void` | `endElement(java.lang.String qName)` Adapt a SAX1 end element event.
`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(java.lang.String name)` Check a parser feature.
`java.lang.Object` | `getProperty(java.lang.String name)` Get a parser property.
`void` | `ignorableWhitespace(char[] ch, int start, int length)` Adapt a SAX1 ignorable whitespace event.
`void` | `parse(InputSource input)` Parse an XML document.
`void` | `parse(java.lang.String systemId)` Parse an XML document.
`void` | `processingInstruction(java.lang.String target, java.lang.String data)` Adapt a SAX1 processing instruction event.
`void` | `setContentHandler(ContentHandler handler)` Set the content handler.
`void` | `setDocumentLocator(Locator locator)` Adapt a SAX1 document locator event.
`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(java.lang.String name, boolean state)` Set a feature for the parser.
`void` | `setProperty(java.lang.String name, java.lang.Object value)` Set a parser property.
`void` | `startDocument()` Adapt a SAX1 start document event.
`void` | `startElement(java.lang.String qName, AttributeList qAtts)` Adapt a SAX1 startElement event.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ParserAdapter

    public ParserAdapter()
                  throws SAXException

  Construct a new parser adapter.

  Use the "org.xml.sax.parser" property to locate the embedded SAX1 driver.

  Throws:
    `SAXException` - If the embedded driver cannot be instantiated or if the org.xml.sax.parser property is not specified.

### ParserAdapter

    public ParserAdapter(Parser parser)

  Construct a new parser adapter.

  Note that the embedded parser cannot be changed once the adapter is created; to embed a different parser, allocate a new ParserAdapter.

  Parameters:
    `parser` - The SAX1 parser to embed.
  Throws:
    `java.lang.NullPointerException` - If the parser parameter is null.

Method Detail

### setFeature

    public void setFeature(java.lang.String name,
                           boolean state)
                    throws SAXNotRecognizedException,
                           SAXNotSupportedException

  Set a feature for the parser.

  The only features supported are namespaces and namespace-prefixes.

  Specified by:
    `setFeature` in interface `XMLReader`
  Parameters:
    `name` - The feature name, as a complete URI.
    `state` - The requested feature state.
  Throws:
    `SAXNotRecognizedException` - If the feature name is not known.
    `SAXNotSupportedException` - If the feature state is not supported.
  See Also:
    `XMLReader.setFeature(java.lang.String, boolean)`

### getFeature

    public boolean getFeature(java.lang.String name)
                       throws SAXNotRecognizedException,
                              SAXNotSupportedException

  Check a parser feature.

  The only features supported are namespaces and namespace-prefixes.

  Specified by:
    `getFeature` in interface `XMLReader`
  Parameters:
    `name` - The feature name, as a complete URI.
  Returns:
    The current feature state.
  Throws:
    `SAXNotRecognizedException` - If the feature name is not known.
    `SAXNotSupportedException` - If querying the feature state is not supported.
  See Also:
    `XMLReader.setFeature(java.lang.String, boolean)`

### setProperty

    public void setProperty(java.lang.String name,
                            java.lang.Object value)
                     throws SAXNotRecognizedException,
                            SAXNotSupportedException

  Set a parser property.

  No special properties are currently supported.

  Specified by:
    `setProperty` in interface `XMLReader`
  Parameters:
    `name` - The property name.
    `value` - The property value.
  Throws:
    `SAXNotRecognizedException` - If the feature name is not known.
    `SAXNotSupportedException` - If the feature state is not supported.
  See Also:
    `XMLReader.setProperty(java.lang.String, java.lang.Object)`

### getProperty

    public java.lang.Object getProperty(java.lang.String name)
                                 throws SAXNotRecognizedException,
                                        SAXNotSupportedException

  Get a parser property.

  No special properties are currently supported.

  Specified by:
    `getProperty` in interface `XMLReader`
  Parameters:
    `name` - The property name.
  Returns:
    The property value.
  Throws:
    `SAXNotRecognizedException` - If the feature name is not known.
    `SAXNotSupportedException` - If the feature state is not supported.
  See Also:
    `XMLReader.getProperty(java.lang.String)`

### setEntityResolver

    public void setEntityResolver(EntityResolver resolver)

  Set the entity resolver.
  Specified by:
    `setEntityResolver` in interface `XMLReader`
  Parameters:
    `resolver` - The new entity resolver.
  Throws:
    `java.lang.NullPointerException` - If the entity resolver parameter is null.
  See Also:
    `XMLReader.setEntityResolver(org.xml.sax.EntityResolver)`

### getEntityResolver

    public EntityResolver getEntityResolver()

  Return the current entity resolver.
  Specified by:
    `getEntityResolver` in interface `XMLReader`
  Returns:
    The current entity resolver, or null if none was supplied.
  See Also:
    `XMLReader.getEntityResolver()`

### setDTDHandler

    public void setDTDHandler(DTDHandler handler)

  Set the DTD handler.
  Specified by:
    `setDTDHandler` in interface `XMLReader`
  Parameters:
    `resolver` - The new DTD handler.
  Throws:
    `java.lang.NullPointerException` - If the DTD handler parameter is null.
  See Also:
    `XMLReader.setEntityResolver(org.xml.sax.EntityResolver)`

### getDTDHandler

    public DTDHandler getDTDHandler()

  Return the current DTD handler.
  Specified by:
    `getDTDHandler` in interface `XMLReader`
  Returns:
    The current DTD handler, or null if none was supplied.
  See Also:
    `XMLReader.getEntityResolver()`

### setContentHandler

    public void setContentHandler(ContentHandler handler)

  Set the content handler.
  Specified by:
    `setContentHandler` in interface `XMLReader`
  Parameters:
    `resolver` - The new content handler.
  Throws:
    `java.lang.NullPointerException` - If the content handler parameter is null.
  See Also:
    `XMLReader.setEntityResolver(org.xml.sax.EntityResolver)`

### getContentHandler

    public ContentHandler getContentHandler()

  Return the current content handler.
  Specified by:
    `getContentHandler` in interface `XMLReader`
  Returns:
    The current content handler, or null if none was supplied.
  See Also:
    `XMLReader.getEntityResolver()`

### setErrorHandler

    public void setErrorHandler(ErrorHandler handler)

  Set the error handler.
  Specified by:
    `setErrorHandler` in interface `XMLReader`
  Parameters:
    `resolver` - The new error handler.
  Throws:
    `java.lang.NullPointerException` - If the error handler parameter is null.
  See Also:
    `XMLReader.setEntityResolver(org.xml.sax.EntityResolver)`

### getErrorHandler

    public ErrorHandler getErrorHandler()

  Return the current error handler.
  Specified by:
    `getErrorHandler` in interface `XMLReader`
  Returns:
    The current error handler, or null if none was supplied.
  See Also:
    `XMLReader.getEntityResolver()`

### parse

    public void parse(java.lang.String systemId)
               throws java.io.IOException,
                      SAXException

  Parse an XML document.
  Specified by:
    `parse` in interface `XMLReader`
  Parameters:
    `systemId` - The absolute URL of the document.
  Throws:
    `java.io.IOException` - If there is a problem reading the raw content of the document.
    `SAXException` - If there is a problem processing the document.
  See Also:
    `parse(org.xml.sax.InputSource)`, `Parser.parse(java.lang.String)`

### parse

    public void parse(InputSource input)
               throws java.io.IOException,
                      SAXException

  Parse an XML document.
  Specified by:
    `parse` in interface `XMLReader`
  Parameters:
    `input` - An input source for the document.
  Throws:
    `java.io.IOException` - If there is a problem reading the raw content of the document.
    `SAXException` - If there is a problem processing the document.
  See Also:
    `parse(java.lang.String)`, `Parser.parse(org.xml.sax.InputSource)`

### setDocumentLocator

    public void setDocumentLocator(Locator locator)

  Adapt a SAX1 document locator event.
  Specified by:
    `setDocumentLocator` in interface `DocumentHandler`
  Parameters:
    `locator` - A document locator.
  See Also:
    `ContentHandler.setDocumentLocator(org.xml.sax.Locator)`

### startDocument

    public void startDocument()
                       throws SAXException

  Adapt a SAX1 start document event.
  Specified by:
    `startDocument` in interface `DocumentHandler`
  Throws:
    `SAXException` - The client may raise a processing exception.
  See Also:
    `DocumentHandler.startDocument()`

### endDocument

    public void endDocument()
                     throws SAXException

  Adapt a SAX1 end document event.
  Specified by:
    `endDocument` in interface `DocumentHandler`
  Throws:
    `SAXException` - The client may raise a processing exception.
  See Also:
    `DocumentHandler.endDocument()`

### startElement

    public void startElement(java.lang.String qName,
                             AttributeList qAtts)
                      throws SAXException

  Adapt a SAX1 startElement event.

  If necessary, perform Namespace processing.

  Specified by:
    `startElement` in interface `DocumentHandler`
  Parameters:
    `qName` - The qualified (prefixed) name.
    `qAtts` - The XML 1.0 attribute list (with qnames).

### endElement

    public void endElement(java.lang.String qName)
                    throws SAXException

  Adapt a SAX1 end element event.
  Specified by:
    `endElement` in interface `DocumentHandler`
  Parameters:
    `qName` - The qualified (prefixed) name.
  Throws:
    `SAXException` - The client may raise a processing exception.
  See Also:
    `DocumentHandler.endElement(java.lang.String)`

### characters

    public void characters(char[] ch,
                           int start,
                           int length)
                    throws SAXException

  Adapt a SAX1 characters event.
  Specified by:
    `characters` in interface `DocumentHandler`
  Parameters:
    `ch` - An array of characters.
    `start` - The starting position in the array.
    `length` - The number of characters to use.
  Throws:
    `SAXException` - The client may raise a processing exception.
  See Also:
    `DocumentHandler.characters(char[], int, int)`

### ignorableWhitespace

    public void ignorableWhitespace(char[] ch,
                                    int start,
                                    int length)
                             throws SAXException

  Adapt a SAX1 ignorable whitespace event.
  Specified by:
    `ignorableWhitespace` in interface `DocumentHandler`
  Parameters:
    `ch` - An array of characters.
    `start` - The starting position in the array.
    `length` - The number of characters to use.
  Throws:
    `SAXException` - The client may raise a processing exception.
  See Also:
    `DocumentHandler.ignorableWhitespace(char[], int, int)`

### processingInstruction

    public void processingInstruction(java.lang.String target,
                                      java.lang.String data)
                               throws SAXException

  Adapt a SAX1 processing instruction event.
  Specified by:
    `processingInstruction` in interface `DocumentHandler`
  Parameters:
    `target` - The processing instruction target.
    `data` - The remainder of the processing instruction
  Throws:
    `SAXException` - The client may raise a processing exception.
  See Also:
    `DocumentHandler.processingInstruction(java.lang.String, java.lang.String)`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 1999-2003 Apache XML Project. All Rights Reserved.