org.apache.xerces.parsers
Class BasicParserConfiguration
- org.apache.xerces.xni.parser.XMLComponentManager, org.apache.xerces.xni.parser.XMLParserConfiguration
public abstract class BasicParserConfiguration
implements org.apache.xerces.xni.parser.XMLParserConfiguration
A very basic parser configuration. This configuration class can
be used as a base class for custom parser configurations. The
basic parser configuration creates the symbol table (if not
specified at construction time) and manages all of the recognized
features and properties.
The basic parser configuration does
not mandate
any particular pipeline configuration or the use of specific
components except for the symbol table. If even this is too much
for a basic parser configuration, the programmer can create a new
configuration class that implements the
XMLParserConfiguration
interface.
Subclasses of the basic parser configuration can add their own
recognized features and properties by calling the
addRecognizedFeature
and
addRecognizedProperty
methods, respectively.
The basic parser configuration assumes that the configuration
will be made up of various parser components that implement the
XMLComponent
interface. If subclasses of this
configuration create their own components for use in the
parser configuration, then each component should be added to
the list of components by calling the
addComponent
method. The basic parser configuration will make sure to call
the
reset
method of each registered component
before parsing an instance document.
This class recognizes the following features and properties:
- Features
- http://xml.org/sax/features/validation
- http://xml.org/sax/features/namespaces
- http://xml.org/sax/features/external-general-entities
- http://xml.org/sax/features/external-parameter-entities
Properties
- http://xml.org/sax/properties/xml-string
- http://apache.org/xml/properties/internal/symbol-table
- http://apache.org/xml/properties/internal/error-handler
- http://apache.org/xml/properties/internal/entity-resolver
$Id: BasicParserConfiguration.java,v 1.24 2004/04/12 21:56:02 mrglavas Exp $- Arnaud Le Hors, IBM
- Andy Clark, IBM
protected void | addComponent(org.apache.xerces.xni.parser.XMLComponent component) - Adds a component to the parser configuration.
|
protected void | checkFeature(String featureId) - Check a feature.
|
protected void | checkProperty(String propertyId) - Check a property.
|
org.apache.xerces.xni.XMLDTDContentModelHandler | getDTDContentModelHandler() - Returns the registered DTD content model handler.
|
org.apache.xerces.xni.XMLDTDHandler | getDTDHandler() - Returns the registered DTD handler.
|
org.apache.xerces.xni.XMLDocumentHandler | getDocumentHandler() - Returns the registered document handler.
|
org.apache.xerces.xni.parser.XMLEntityResolver | getEntityResolver() - Return the current entity resolver.
|
org.apache.xerces.xni.parser.XMLErrorHandler | getErrorHandler() - Return the current error handler.
|
Locale | getLocale() - Returns the locale.
|
abstract void | parse(org.apache.xerces.xni.parser.XMLInputSource inputSource) - Parse an XML document.
|
protected void | reset() - reset all components before parsing and namespace context
|
void | setDTDContentModelHandler(org.apache.xerces.xni.XMLDTDContentModelHandler handler) - Sets the DTD content model handler.
|
void | setDTDHandler(org.apache.xerces.xni.XMLDTDHandler dtdHandler) - Sets the DTD handler.
|
void | setDocumentHandler(org.apache.xerces.xni.XMLDocumentHandler documentHandler) - Sets the document handler on the last component in the pipeline
to receive information about the document.
|
void | setEntityResolver(org.apache.xerces.xni.parser.XMLEntityResolver resolver) - Sets the resolver used to resolve external entities.
|
void | setErrorHandler(org.apache.xerces.xni.parser.XMLErrorHandler errorHandler) - Allow an application to register an error event handler.
|
void | setFeature(String featureId, boolean state) - Set the state of a feature.
|
void | setLocale(Locale locale) - Set the locale to use for messages.
|
void | setProperty(String propertyId, Object value) - setProperty
|
ENTITY_RESOLVER
protected static final String ENTITY_RESOLVER
Property identifier: entity resolver.
ERROR_HANDLER
protected static final String ERROR_HANDLER
Property identifier: error handler.
EXTERNAL_GENERAL_ENTITIES
protected static final String EXTERNAL_GENERAL_ENTITIES
Feature identifier: external general entities.
EXTERNAL_PARAMETER_ENTITIES
protected static final String EXTERNAL_PARAMETER_ENTITIES
Feature identifier: external parameter entities.
NAMESPACES
protected static final String NAMESPACES
Feature identifier: namespaces.
SYMBOL_TABLE
protected static final String SYMBOL_TABLE
Property identifier: symbol table.
VALIDATION
protected static final String VALIDATION
Feature identifier: validation.
XML_STRING
protected static final String XML_STRING
Property identifier: xml string.
fComponents
protected ArrayList fComponents
Components.
fDTDContentModelHandler
protected org.apache.xerces.xni.XMLDTDContentModelHandler fDTDContentModelHandler
The DTD content model handler.
fDTDHandler
protected org.apache.xerces.xni.XMLDTDHandler fDTDHandler
The DTD handler.
fDocumentHandler
protected org.apache.xerces.xni.XMLDocumentHandler fDocumentHandler
The document handler.
fLastComponent
protected org.apache.xerces.xni.parser.XMLDocumentSource fLastComponent
Last component in the document pipeline
fLocale
protected Locale fLocale
Locale.
fSymbolTable
protected SymbolTable fSymbolTable
Symbol table.
BasicParserConfiguration
protected BasicParserConfiguration()
Default Constructor.
BasicParserConfiguration
protected BasicParserConfiguration(SymbolTable symbolTable)
Constructs a parser configuration using the specified symbol table.
symbolTable
- The symbol table to use.
BasicParserConfiguration
protected BasicParserConfiguration(SymbolTable symbolTable,
org.apache.xerces.xni.parser.XMLComponentManager parentSettings)
Constructs a parser configuration using the specified symbol table
and parent settings.
symbolTable
- The symbol table to use.parentSettings
- The parent settings.
addComponent
protected void addComponent(org.apache.xerces.xni.parser.XMLComponent component)
Adds a component to the parser configuration. This method will
also add all of the component's recognized features and properties
to the list of default recognized features and properties.
component
- The component to add.
checkFeature
protected void checkFeature(String featureId)
throws org.apache.xerces.xni.parser.XMLConfigurationException
Check a feature. If feature is know and supported, this method simply
returns. Otherwise, the appropriate exception is thrown.
- checkFeature in interface ParserConfigurationSettings
featureId
- The unique identifier (URI) of the feature.
org.apache.xerces.xni.parser.XMLConfigurationException
- Thrown for configuration error.
In general, components should
only throw this exception if
it is really
a critical error.
checkProperty
protected void checkProperty(String propertyId)
throws org.apache.xerces.xni.parser.XMLConfigurationException
Check a property. If the property is known and supported, this method
simply returns. Otherwise, the appropriate exception is thrown.
- checkProperty in interface ParserConfigurationSettings
propertyId
- The unique identifier (URI) of the property
being set.
org.apache.xerces.xni.parser.XMLConfigurationException
- If the
requested feature is not known or supported.
getDTDContentModelHandler
public org.apache.xerces.xni.XMLDTDContentModelHandler getDTDContentModelHandler()
Returns the registered DTD content model handler.
- getDTDContentModelHandler in interface org.apache.xerces.xni.parser.XMLParserConfiguration
getDTDHandler
public org.apache.xerces.xni.XMLDTDHandler getDTDHandler()
Returns the registered DTD handler.
- getDTDHandler in interface org.apache.xerces.xni.parser.XMLParserConfiguration
getDocumentHandler
public org.apache.xerces.xni.XMLDocumentHandler getDocumentHandler()
Returns the registered document handler.
- getDocumentHandler in interface org.apache.xerces.xni.parser.XMLParserConfiguration
getEntityResolver
public org.apache.xerces.xni.parser.XMLEntityResolver getEntityResolver()
Return the current entity resolver.
- getEntityResolver in interface org.apache.xerces.xni.parser.XMLParserConfiguration
- The current entity resolver, or null if none
has been registered.
getErrorHandler
public org.apache.xerces.xni.parser.XMLErrorHandler getErrorHandler()
Return the current error handler.
- getErrorHandler in interface org.apache.xerces.xni.parser.XMLParserConfiguration
- The current error handler, or null if none
has been registered.
getLocale
public Locale getLocale()
Returns the locale.
- getLocale in interface org.apache.xerces.xni.parser.XMLParserConfiguration
parse
public abstract void parse(org.apache.xerces.xni.parser.XMLInputSource inputSource)
throws org.apache.xerces.xni.XNIException,
IOException
Parse an XML document.
The parser can use this method to instruct this configuration
to begin parsing an XML document from any valid input source
(a character stream, a byte stream, or a URI).
Parsers may not invoke this method while a parse is in progress.
Once a parse is complete, the parser may then parse another XML
document.
This method is synchronous: it will not return until parsing
has ended. If a client application wants to terminate
parsing early, it should throw an exception.
- parse in interface org.apache.xerces.xni.parser.XMLParserConfiguration
inputSource
- The input source for the top-level of the
XML document.
org.apache.xerces.xni.XNIException
- Any XNI exception, possibly wrapping
another exception.
reset
protected void reset()
throws org.apache.xerces.xni.XNIException
reset all components before parsing and namespace context
setDTDContentModelHandler
public void setDTDContentModelHandler(org.apache.xerces.xni.XMLDTDContentModelHandler handler)
Sets the DTD content model handler.
- setDTDContentModelHandler in interface org.apache.xerces.xni.parser.XMLParserConfiguration
handler
- The DTD content model handler.
setDTDHandler
public void setDTDHandler(org.apache.xerces.xni.XMLDTDHandler dtdHandler)
Sets the DTD handler.
- setDTDHandler in interface org.apache.xerces.xni.parser.XMLParserConfiguration
dtdHandler
- The DTD handler.
setDocumentHandler
public void setDocumentHandler(org.apache.xerces.xni.XMLDocumentHandler documentHandler)
Sets the document handler on the last component in the pipeline
to receive information about the document.
- setDocumentHandler in interface org.apache.xerces.xni.parser.XMLParserConfiguration
documentHandler
- The document handler.
setEntityResolver
public void setEntityResolver(org.apache.xerces.xni.parser.XMLEntityResolver resolver)
Sets the resolver used to resolve external entities. The EntityResolver
interface supports resolution of public and system identifiers.
- setEntityResolver in interface org.apache.xerces.xni.parser.XMLParserConfiguration
resolver
- The new entity resolver. Passing a null value will
uninstall the currently installed resolver.
setErrorHandler
public void setErrorHandler(org.apache.xerces.xni.parser.XMLErrorHandler errorHandler)
Allow an application to register an error event handler.
If the application does not register an error handler, all
error events reported by the SAX parser will be silently
ignored; however, normal processing may not continue. It is
highly recommended that all SAX applications implement an
error handler to avoid unexpected bugs.
Applications may register a new or different handler in the
middle of a parse, and the SAX parser must begin using the new
handler immediately.
- setErrorHandler in interface org.apache.xerces.xni.parser.XMLParserConfiguration
errorHandler
- The error handler.
setFeature
public void setFeature(String featureId,
boolean state)
throws org.apache.xerces.xni.parser.XMLConfigurationException
Set the state of a feature.
Set the state of any feature in a SAX2 parser. The parser
might not recognize the feature, and if it does recognize
it, it might not be able to fulfill the request.
- setFeature in interface org.apache.xerces.xni.parser.XMLParserConfiguration
- setFeature in interface ParserConfigurationSettings
featureId
- The unique identifier (URI) of the feature.state
- The requested state of the feature (true or false).
org.apache.xerces.xni.parser.XMLConfigurationException
- If the
requested feature is not known.
setLocale
public void setLocale(Locale locale)
throws org.apache.xerces.xni.XNIException
Set the locale to use for messages.
- setLocale in interface org.apache.xerces.xni.parser.XMLParserConfiguration
locale
- The locale object to use for localization of messages.
org.apache.xerces.xni.XNIException
- Thrown if the parser does not support the
specified locale.
setProperty
public void setProperty(String propertyId,
Object value)
throws org.apache.xerces.xni.parser.XMLConfigurationException
setProperty
- setProperty in interface org.apache.xerces.xni.parser.XMLParserConfiguration
- setProperty in interface ParserConfigurationSettings
Copyright B) 1999-2005 Apache XML Project. All Rights Reserved.