org.apache.xerces.parsers

Class CachingParserPool.ShadowedGrammarPool

Enclosing Class:
CachingParserPool
Implemented Interfaces:
org.apache.xerces.xni.grammars.XMLGrammarPool

public static final class CachingParserPool.ShadowedGrammarPool
extends XMLGrammarPoolImpl

Shadowed grammar pool. This class is predicated on the existence of a concrete implementation; so using our own doesn't seem to bad an idea.
Authors:
Andy Clark, IBM
Neil Graham, IBM

Nested Class Summary

Nested classes/interfaces inherited from class org.apache.xerces.util.XMLGrammarPoolImpl

XMLGrammarPoolImpl.Entry

Field Summary

Fields inherited from class org.apache.xerces.util.XMLGrammarPoolImpl

TABLE_SIZE, fGrammarCount, fGrammars, fPoolIsLocked

Constructor Summary

ShadowedGrammarPool(org.apache.xerces.xni.grammars.XMLGrammarPool grammarPool)
Constructs a shadowed grammar pool.

Method Summary

void
cacheGrammars(String grammarType, org.apache.xerces.xni.grammars.Grammar[] grammars)
Give the grammarPool the option of caching these grammars.
boolean
containsGrammar(org.apache.xerces.xni.grammars.XMLGrammarDescription desc)
Returns true if the grammar pool contains a grammar associated to the specified description.
org.apache.xerces.xni.grammars.Grammar
getGrammar(org.apache.xerces.xni.grammars.XMLGrammarDescription desc)
Returns the grammar associated to the specified description.
org.apache.xerces.xni.grammars.Grammar
retrieveGrammar(org.apache.xerces.xni.grammars.XMLGrammarDescription gDesc)
Retrieve a particular grammar.
org.apache.xerces.xni.grammars.Grammar[]
retrieveInitialGrammarSet(String grammarType)
Retrieve the initial set of grammars for the validator to work with.

Methods inherited from class org.apache.xerces.util.XMLGrammarPoolImpl

cacheGrammars, clear, containsGrammar, equals, getGrammar, hashCode, lockPool, putGrammar, removeGrammar, retrieveGrammar, retrieveInitialGrammarSet, unlockPool

Constructor Details

ShadowedGrammarPool

public ShadowedGrammarPool(org.apache.xerces.xni.grammars.XMLGrammarPool grammarPool)
Constructs a shadowed grammar pool.

Method Details

cacheGrammars

public void cacheGrammars(String grammarType,
                          org.apache.xerces.xni.grammars.Grammar[] grammars)
Give the grammarPool the option of caching these grammars. This certainly must be synchronized.
Specified by:
cacheGrammars in interface org.apache.xerces.xni.grammars.XMLGrammarPool
Overrides:
cacheGrammars in interface XMLGrammarPoolImpl
Parameters:
grammarType - The type of the grammars to be cached.
grammars - The Grammars that may be cached (unordered, Grammars previously given to the validator may be included).

containsGrammar

public boolean containsGrammar(org.apache.xerces.xni.grammars.XMLGrammarDescription desc)
Returns true if the grammar pool contains a grammar associated to the specified description.
Overrides:
containsGrammar in interface XMLGrammarPoolImpl
Parameters:
desc - The description of the grammar.

getGrammar

public org.apache.xerces.xni.grammars.Grammar getGrammar(org.apache.xerces.xni.grammars.XMLGrammarDescription desc)
Returns the grammar associated to the specified description.
Overrides:
getGrammar in interface XMLGrammarPoolImpl
Parameters:
desc - The description of the grammar.

retrieveGrammar

public org.apache.xerces.xni.grammars.Grammar retrieveGrammar(org.apache.xerces.xni.grammars.XMLGrammarDescription gDesc)
Retrieve a particular grammar. REVISIT: does this need to be synchronized since it's just reading?
Specified by:
retrieveGrammar in interface org.apache.xerces.xni.grammars.XMLGrammarPool
Overrides:
retrieveGrammar in interface XMLGrammarPoolImpl
Parameters:
gDesc - Description of the grammar to be retrieved
Returns:
Grammar corresponding to gDesc, or null if none exists.

retrieveInitialGrammarSet

public org.apache.xerces.xni.grammars.Grammar[] retrieveInitialGrammarSet(String grammarType)
Retrieve the initial set of grammars for the validator to work with. REVISIT: does this need to be synchronized since it's just reading?
Specified by:
retrieveInitialGrammarSet in interface org.apache.xerces.xni.grammars.XMLGrammarPool
Overrides:
retrieveInitialGrammarSet in interface XMLGrammarPoolImpl
Parameters:
grammarType - Type of the grammars to be retrieved.
Returns:
The initial grammar set the validator may place in its "bucket"

Copyright B) 1999-2005 Apache XML Project. All Rights Reserved.