## org.apache.xerces.parsers
Class CachingParserPool.ShadowedGrammarPool

    java.lang.Object
      org.apache.xerces.util.XMLGrammarPoolImpl
          org.apache.xerces.parsers.CachingParserPool.ShadowedGrammarPool

All Implemented Interfaces:
  org.apache.xerces.xni.grammars.XMLGrammarPool

Enclosing class:
  CachingParserPool

    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.

Author:
  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
`fGrammarCount, fGrammars, fPoolIsLocked, TABLE_SIZE`

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

Method Summary
`void` `cacheGrammars(java.lang.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(java.lang.String grammarType)` Retrieve the initial set of grammars for the validator to work with.

Methods inherited from class org.apache.xerces.util.XMLGrammarPoolImpl
`clear, equals, hashCode, lockPool, putGrammar, removeGrammar, unlockPool`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### CachingParserPool.ShadowedGrammarPool

    public CachingParserPool.ShadowedGrammarPool(org.apache.xerces.xni.grammars.XMLGrammarPool grammarPool)

  Constructs a shadowed grammar pool.

Method Detail

### retrieveInitialGrammarSet

    public org.apache.xerces.xni.grammars.Grammar[] retrieveInitialGrammarSet(java.lang.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 class `XMLGrammarPoolImpl`
  Parameters:
    `grammarType` - Type of the grammars to be retrieved.
  Returns:
    The initial grammar set the validator may place in its "bucket"

### 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 class `XMLGrammarPoolImpl`
  Parameters:
    `gDesc` - Description of the grammar to be retrieved
  Returns:
    Grammar corresponding to gDesc, or null if none exists.

### cacheGrammars

    public void cacheGrammars(java.lang.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 class `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).

### 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 class `XMLGrammarPoolImpl`
  Parameters:
    `desc` - The description of the grammar.

### 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 class `XMLGrammarPoolImpl`
  Parameters:
    `desc` - The description of the grammar.

Copyright © 1999-2006 The Apache Software Foundation. All Rights Reserved.