Class XMLGrammarPreparser
- java.lang.Object
-
- org.smooks.engine.delivery.sax.ng.org.apache.xerces.parsers.XMLGrammarPreparser
-
public class XMLGrammarPreparser extends 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$
- Author:
- Neil Graham, IBM
-
-
Field Summary
Fields Modifier and Type Field Description protected static String
ENTITY_RESOLVER
Property identifier: entity resolver.protected static String
ERROR_HANDLER
Property identifier: error handler.protected static String
ERROR_REPORTER
Property identifier: error reporter.protected XMLEntityResolver
fEntityResolver
protected XMLErrorReporter
fErrorReporter
protected XMLGrammarPool
fGrammarPool
protected Locale
fLocale
protected SymbolTable
fSymbolTable
protected static String
GRAMMAR_POOL
Property identifier: grammar pool .protected static String
SYMBOL_TABLE
Property identifier: symbol table.
-
Constructor Summary
Constructors Constructor Description XMLGrammarPreparser()
Default constructor.XMLGrammarPreparser(SymbolTable symbolTable)
Constructs a preparser using the specified symbol table.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description XMLEntityResolver
getEntityResolver()
Returns the registered entity resolver.XMLErrorHandler
getErrorHandler()
Returns the registered error handler.boolean
getFeature(String type, String featureId)
XMLGrammarPool
getGrammarPool()
Returns the registered grammar pool.XMLGrammarLoader
getLoader(String type)
Locale
getLocale()
Return the Locale the XMLGrammarLoader is using.Object
getProperty(String type, String propertyId)
Grammar
preparseGrammar(String type, XMLInputSource is)
Parse a grammar from a location identified by an XMLInputSource.boolean
registerPreparser(String grammarType, XMLGrammarLoader loader)
void
setEntityResolver(XMLEntityResolver entityResolver)
Sets the entity resolver.void
setErrorHandler(XMLErrorHandler errorHandler)
Sets the error handler.void
setFeature(String featureId, boolean value)
void
setGrammarPool(XMLGrammarPool grammarPool)
Sets the grammar pool.void
setLocale(Locale locale)
Set the locale to use for messages.void
setProperty(String propId, Object value)
-
-
-
Field Detail
-
SYMBOL_TABLE
protected static final String SYMBOL_TABLE
Property identifier: symbol table.- See Also:
- Constant Field Values
-
ERROR_REPORTER
protected static final String ERROR_REPORTER
Property identifier: error reporter.- See Also:
- Constant Field Values
-
ERROR_HANDLER
protected static final String ERROR_HANDLER
Property identifier: error handler.- See Also:
- Constant Field Values
-
ENTITY_RESOLVER
protected static final String ENTITY_RESOLVER
Property identifier: entity resolver.- See Also:
- Constant Field Values
-
GRAMMAR_POOL
protected static final String GRAMMAR_POOL
Property identifier: grammar pool .- See Also:
- Constant Field Values
-
fSymbolTable
protected final SymbolTable fSymbolTable
-
fErrorReporter
protected final XMLErrorReporter fErrorReporter
-
fEntityResolver
protected XMLEntityResolver fEntityResolver
-
fGrammarPool
protected XMLGrammarPool fGrammarPool
-
fLocale
protected 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(String grammarType, XMLGrammarLoader loader)
-
preparseGrammar
public Grammar preparseGrammar(String type, XMLInputSource is) throws XNIException, 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 constructedis
- 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:
XNIException
- thrown on an error in grammar constructionIOException
- thrown if an error is encountered in reading the file
-
setLocale
public void setLocale(Locale locale)
Set the locale to use for messages.- Parameters:
locale
- The locale object to use for localization of messages.- Throws:
XNIException
- Thrown if the parser does not support the specified locale.
-
getLocale
public Locale getLocale()
Return the Locale the XMLGrammarLoader is using.
-
setErrorHandler
public void setErrorHandler(XMLErrorHandler errorHandler)
Sets the error handler.- Parameters:
errorHandler
- The error handler.
-
getErrorHandler
public XMLErrorHandler getErrorHandler()
Returns the registered error handler.
-
setEntityResolver
public void setEntityResolver(XMLEntityResolver entityResolver)
Sets the entity resolver.- Parameters:
entityResolver
- The new entity resolver.
-
getEntityResolver
public XMLEntityResolver getEntityResolver()
Returns the registered entity resolver.
-
setGrammarPool
public void setGrammarPool(XMLGrammarPool grammarPool)
Sets the grammar pool.- Parameters:
grammarPool
- The new grammar pool.
-
getGrammarPool
public XMLGrammarPool getGrammarPool()
Returns the registered grammar pool.
-
getLoader
public XMLGrammarLoader getLoader(String type)
-
setFeature
public void setFeature(String featureId, boolean value)
-
-