org.apache.xerces.parsers
Class XMLGrammarPreparser

java.lang.Object
  extended by org.apache.xerces.parsers.XMLGrammarPreparser

public class XMLGrammarPreparser
extends java.lang.Object

This class provides an easy way for a user to preparse grammars of various types. By default, it knows how to preparse external DTD's and schemas; it provides an easy way for user applications to register classes that know how to parse additional grammar types. By default, it does no grammar caching; but it provides ways for user applications to do so.

Version:
$Id: XMLGrammarPreparser.java 713638 2008-11-13 04:42:18Z mrglavas $
Author:
Neil Graham, IBM

Field Summary
protected static java.lang.String ENTITY_RESOLVER
          Property identifier: entity resolver.
protected static java.lang.String ERROR_HANDLER
          Property identifier: error handler.
protected static java.lang.String ERROR_REPORTER
          Property identifier: error reporter.
protected  org.apache.xerces.xni.parser.XMLEntityResolver fEntityResolver
           
protected  XMLErrorReporter fErrorReporter
           
protected  org.apache.xerces.xni.grammars.XMLGrammarPool fGrammarPool
           
protected  java.util.Locale fLocale
           
protected  SymbolTable fSymbolTable
           
protected static java.lang.String GRAMMAR_POOL
          Property identifier: grammar pool .
protected static java.lang.String SYMBOL_TABLE
          Property identifier: symbol table.
 
Constructor Summary
XMLGrammarPreparser()
          Default constructor.
XMLGrammarPreparser(SymbolTable symbolTable)
          Constructs a preparser using the specified symbol table.
 
Method Summary
 org.apache.xerces.xni.parser.XMLEntityResolver getEntityResolver()
          Returns the registered entity resolver.
 org.apache.xerces.xni.parser.XMLErrorHandler getErrorHandler()
          Returns the registered error handler.
 boolean getFeature(java.lang.String type, java.lang.String featureId)
           
 org.apache.xerces.xni.grammars.XMLGrammarPool getGrammarPool()
          Returns the registered grammar pool.
 org.apache.xerces.xni.grammars.XMLGrammarLoader getLoader(java.lang.String type)
           
 java.util.Locale getLocale()
          Return the Locale the XMLGrammarLoader is using.
 java.lang.Object getProperty(java.lang.String type, java.lang.String propertyId)
           
 org.apache.xerces.xni.grammars.Grammar preparseGrammar(java.lang.String type, org.apache.xerces.xni.parser.XMLInputSource is)
          Parse a grammar from a location identified by an XMLInputSource.
 boolean registerPreparser(java.lang.String grammarType, org.apache.xerces.xni.grammars.XMLGrammarLoader loader)
           
 void setEntityResolver(org.apache.xerces.xni.parser.XMLEntityResolver entityResolver)
          Sets the entity resolver.
 void setErrorHandler(org.apache.xerces.xni.parser.XMLErrorHandler errorHandler)
          Sets the error handler.
 void setFeature(java.lang.String featureId, boolean value)
           
 void setGrammarPool(org.apache.xerces.xni.grammars.XMLGrammarPool grammarPool)
          Sets the grammar pool.
 void setLocale(java.util.Locale locale)
          Set the locale to use for messages.
 void setProperty(java.lang.String propId, java.lang.Object value)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SYMBOL_TABLE

protected static final java.lang.String SYMBOL_TABLE
Property identifier: symbol table.

See Also:
Constant Field Values

ERROR_REPORTER

protected static final java.lang.String ERROR_REPORTER
Property identifier: error reporter.

See Also:
Constant Field Values

ERROR_HANDLER

protected static final java.lang.String ERROR_HANDLER
Property identifier: error handler.

See Also:
Constant Field Values

ENTITY_RESOLVER

protected static final java.lang.String ENTITY_RESOLVER
Property identifier: entity resolver.

See Also:
Constant Field Values

GRAMMAR_POOL

protected static final java.lang.String GRAMMAR_POOL
Property identifier: grammar pool .

See Also:
Constant Field Values

fSymbolTable

protected final SymbolTable fSymbolTable

fErrorReporter

protected final XMLErrorReporter fErrorReporter

fEntityResolver

protected org.apache.xerces.xni.parser.XMLEntityResolver fEntityResolver

fGrammarPool

protected org.apache.xerces.xni.grammars.XMLGrammarPool fGrammarPool

fLocale

protected java.util.Locale fLocale
Constructor Detail

XMLGrammarPreparser

public XMLGrammarPreparser()
Default constructor.


XMLGrammarPreparser

public XMLGrammarPreparser(SymbolTable symbolTable)
Constructs a preparser using the specified symbol table.

Parameters:
symbolTable - The symbol table to use.
Method Detail

registerPreparser

public boolean registerPreparser(java.lang.String grammarType,
                                 org.apache.xerces.xni.grammars.XMLGrammarLoader loader)

preparseGrammar

public org.apache.xerces.xni.grammars.Grammar preparseGrammar(java.lang.String type,
                                                              org.apache.xerces.xni.parser.XMLInputSource is)
                                                       throws org.apache.xerces.xni.XNIException,
                                                              java.io.IOException
Parse a grammar from a location identified by an XMLInputSource. This method also adds this grammar to the XMLGrammarPool

Parameters:
type - The type of the grammar to be constructed
is - The XMLInputSource containing this grammar's information If a URI is included in the systemId field, the parser will not expand this URI or make it available to the EntityResolver
Returns:
The newly created Grammar.
Throws:
org.apache.xerces.xni.XNIException - thrown on an error in grammar construction
java.io.IOException - thrown if an error is encountered in reading the file

setLocale

public void setLocale(java.util.Locale locale)
Set the locale to use for messages.

Parameters:
locale - The locale object to use for localization of messages.
Throws:
org.apache.xerces.xni.XNIException - Thrown if the parser does not support the specified locale.

getLocale

public java.util.Locale getLocale()
Return the Locale the XMLGrammarLoader is using.


setErrorHandler

public void setErrorHandler(org.apache.xerces.xni.parser.XMLErrorHandler errorHandler)
Sets the error handler.

Parameters:
errorHandler - The error handler.

getErrorHandler

public org.apache.xerces.xni.parser.XMLErrorHandler getErrorHandler()
Returns the registered error handler.


setEntityResolver

public void setEntityResolver(org.apache.xerces.xni.parser.XMLEntityResolver entityResolver)
Sets the entity resolver.

Parameters:
entityResolver - The new entity resolver.

getEntityResolver

public org.apache.xerces.xni.parser.XMLEntityResolver getEntityResolver()
Returns the registered entity resolver.


setGrammarPool

public void setGrammarPool(org.apache.xerces.xni.grammars.XMLGrammarPool grammarPool)
Sets the grammar pool.

Parameters:
grammarPool - The new grammar pool.

getGrammarPool

public org.apache.xerces.xni.grammars.XMLGrammarPool getGrammarPool()
Returns the registered grammar pool.


getLoader

public org.apache.xerces.xni.grammars.XMLGrammarLoader getLoader(java.lang.String type)

setFeature

public void setFeature(java.lang.String featureId,
                       boolean value)

setProperty

public void setProperty(java.lang.String propId,
                        java.lang.Object value)

getFeature

public boolean getFeature(java.lang.String type,
                          java.lang.String featureId)

getProperty

public java.lang.Object getProperty(java.lang.String type,
                                    java.lang.String propertyId)


Copyright 1999-2010 The Apache Software Foundation. All Rights Reserved.