org.apache.xerces.jaxp
Class SAXParserImpl

java.lang.Object
  extended by javax.xml.parsers.SAXParser
      extended by org.apache.xerces.jaxp.SAXParserImpl
All Implemented Interfaces:
JAXPConstants, PSVIProvider

public class SAXParserImpl
extends SAXParser
implements JAXPConstants, PSVIProvider

This is the implementation specific class for the javax.xml.parsers.SAXParser.

Version:
$Id: SAXParserImpl.java 520058 2007-03-19 19:33:53Z mrglavas $
Author:
Rajiv Mordani, Edwin Goei

Nested Class Summary
static class SAXParserImpl.JAXPSAXParser
          Extension of SAXParser.
 
Field Summary
 
Fields inherited from interface org.apache.xerces.jaxp.JAXPConstants
JAXP_SCHEMA_LANGUAGE, JAXP_SCHEMA_SOURCE, W3C_XML_SCHEMA
 
Method Summary
 AttributePSVI getAttributePSVI(int index)
          Provides AttributePSVI given the index of an attribute information item in the current element's attribute list.
 AttributePSVI getAttributePSVIByName(java.lang.String uri, java.lang.String localname)
          Provides AttributePSVI given the namespace name and the local name of an attribute information item in the current element's attribute list.
 ElementPSVI getElementPSVI()
          Provides the post schema validation item for the current element information item.
 Parser getParser()
          Returns the SAX parser that is encapsultated by the implementation of this class.
 java.lang.Object getProperty(java.lang.String name)
          returns the particular property requested for in the underlying implementation of org.xml.sax.XMLReader.
 Schema getSchema()
          Get a reference to the the Schema being used by the XML processor.
 XMLReader getXMLReader()
          Returns the XMLReader that is encapsulated by the implementation of this class.
 boolean isNamespaceAware()
          Indicates whether or not this parser is configured to understand namespaces.
 boolean isValidating()
          Indicates whether or not this parser is configured to validate XML documents.
 boolean isXIncludeAware()
          Gets the XInclude processing mode for this parser
 void parse(InputSource is, DefaultHandler dh)
          Parse the content given InputSource as XML using the specified DefaultHandler.
 void parse(InputSource is, HandlerBase hb)
          Parse the content given InputSource as XML using the specified HandlerBase.
 void reset()
          Reset this SAXParser to its original configuration.
 void setProperty(java.lang.String name, java.lang.Object value)
          Sets the particular property in the underlying implementation of org.xml.sax.XMLReader.
 
Methods inherited from class javax.xml.parsers.SAXParser
parse, parse, parse, parse, parse, parse, parse, parse
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getParser

public Parser getParser()
                 throws SAXException
Description copied from class: SAXParser
Returns the SAX parser that is encapsultated by the implementation of this class.

Specified by:
getParser in class SAXParser
Returns:
The SAX parser that is encapsultated by the implementation of this class.
Throws:
SAXException - If any SAX errors occur during processing.

getXMLReader

public XMLReader getXMLReader()
Returns the XMLReader that is encapsulated by the implementation of this class.

Specified by:
getXMLReader in class SAXParser
Returns:
The XMLReader that is encapsulated by the implementation of this class.

isNamespaceAware

public boolean isNamespaceAware()
Description copied from class: SAXParser
Indicates whether or not this parser is configured to understand namespaces.

Specified by:
isNamespaceAware in class SAXParser
Returns:
true if this parser is configured to understand namespaces; false otherwise.

isValidating

public boolean isValidating()
Description copied from class: SAXParser
Indicates whether or not this parser is configured to validate XML documents.

Specified by:
isValidating in class SAXParser
Returns:
true if this parser is configured to validate XML documents; false otherwise.

isXIncludeAware

public boolean isXIncludeAware()
Gets the XInclude processing mode for this parser

Overrides:
isXIncludeAware in class SAXParser
Returns:
the state of XInclude processing mode
See Also:
SAXParserFactory.setXIncludeAware(boolean)

setProperty

public void setProperty(java.lang.String name,
                        java.lang.Object value)
                 throws SAXNotRecognizedException,
                        SAXNotSupportedException
Sets the particular property in the underlying implementation of org.xml.sax.XMLReader.

Specified by:
setProperty in class SAXParser
Parameters:
name - The name of the property to be set.
value - The value of the property to be set.
Throws:
SAXNotRecognizedException - When the underlying XMLReader does not recognize the property name.
SAXNotSupportedException - When the underlying XMLReader recognizes the property name but doesn't support the property.
See Also:
XMLReader.setProperty(java.lang.String, java.lang.Object)

getProperty

public java.lang.Object getProperty(java.lang.String name)
                             throws SAXNotRecognizedException,
                                    SAXNotSupportedException
returns the particular property requested for in the underlying implementation of org.xml.sax.XMLReader.

Specified by:
getProperty in class SAXParser
Parameters:
name - The name of the property to be retrieved.
Returns:
Value of the requested property.
Throws:
SAXNotRecognizedException - When the underlying XMLReader does not recognize the property name.
SAXNotSupportedException - When the underlying XMLReader recognizes the property name but doesn't support the property.
See Also:
XMLReader.getProperty(java.lang.String)

parse

public void parse(InputSource is,
                  DefaultHandler dh)
           throws SAXException,
                  java.io.IOException
Description copied from class: SAXParser
Parse the content given InputSource as XML using the specified DefaultHandler.

Overrides:
parse in class SAXParser
Parameters:
is - The InputSource containing the content to be parsed.
dh - The SAX DefaultHandler to use.
Throws:
SAXException - If any SAX errors occur during processing.
java.io.IOException - If any IO errors occur.
See Also:
DocumentHandler

parse

public void parse(InputSource is,
                  HandlerBase hb)
           throws SAXException,
                  java.io.IOException
Description copied from class: SAXParser
Parse the content given InputSource as XML using the specified HandlerBase. Use of the DefaultHandler version of this method is recommended as the HandlerBase class has been deprecated in SAX 2.0

Overrides:
parse in class SAXParser
Parameters:
is - The InputSource containing the content to be parsed.
hb - The SAX HandlerBase to use.
Throws:
SAXException - If any SAX errors occur during processing.
java.io.IOException - If any IO errors occur.
See Also:
DocumentHandler

getSchema

public Schema getSchema()
Description copied from class: SAXParser

Get a reference to the the Schema being used by the XML processor.

If no schema is being used, null is returned.

Overrides:
getSchema in class SAXParser
Returns:
Schema being used or null if none in use

reset

public void reset()
Description copied from class: SAXParser

Reset this SAXParser to its original configuration.

SAXParser is reset to the same state as when it was created with SAXParserFactory.newSAXParser(). reset() is designed to allow the reuse of existing SAXParsers thus saving resources associated with the creation of new SAXParsers.

The reset SAXParser is not guaranteed to have the same Schema Object, e.g. Object.equals(Object obj). It is guaranteed to have a functionally equal Schema.

Overrides:
reset in class SAXParser

getElementPSVI

public ElementPSVI getElementPSVI()
Description copied from interface: PSVIProvider
Provides the post schema validation item for the current element information item. The method must be called by an application while in the scope of the methods which report the start and end of an element. For example, for SAX the method must be called within the scope of the document handler's startElement or endElement call. If the method is called outside of the specified scope, the return value is undefined.

Specified by:
getElementPSVI in interface PSVIProvider
Returns:
The post schema validation infoset for the current element. If an element information item is valid, then in the post-schema-validation infoset the following properties must be available for the element information item: The following properties are available in the scope of the method that reports the start of an element: {element declaration}, {validation context}, {notation}. The {schema information} property is available for the validation root. The {error codes} property is available if any errors occured during validation. The following properties are available in the scope of the method that reports the end of an element: {nil}, {schema specified}, {normalized value},{ member type definition}, {validity}, {validation attempted} . If the declaration has a value constraint, the property {schema default} is available. The {error codes} property is available if any errors occured during validation. Note: some processors may choose to provide all the PSVI properties in the scope of the method that reports the end of an element.

getAttributePSVI

public AttributePSVI getAttributePSVI(int index)
Description copied from interface: PSVIProvider
Provides AttributePSVI given the index of an attribute information item in the current element's attribute list. The method must be called by an application while in the scope of the methods which report the start and end of an element at a point where the attribute list is available. For example, for SAX the method must be called while in the scope of the document handler's startElement call. If the method is called outside of the specified scope, the return value is undefined.

Specified by:
getAttributePSVI in interface PSVIProvider
Parameters:
index - The attribute index.
Returns:
The post schema validation properties of the attribute.

getAttributePSVIByName

public AttributePSVI getAttributePSVIByName(java.lang.String uri,
                                            java.lang.String localname)
Description copied from interface: PSVIProvider
Provides AttributePSVI given the namespace name and the local name of an attribute information item in the current element's attribute list. The method must be called by an application while in the scope of the methods which report the start and end of an element at a point where the attribute list is available. For example, for SAX the method must be called while in the scope of the document handler's startElement call. If the method is called outside of the specified scope, the return value is undefined.

Specified by:
getAttributePSVIByName in interface PSVIProvider
Parameters:
uri - The namespace name of an attribute.
localname - The local name of an attribute.
Returns:
The post schema validation properties of the attribute.