| API Docs for SAX and DOM |

Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members

# XMLGrammarPool Class Reference

Inheritance diagram for XMLGrammarPool:

[legend]
Collaboration diagram for XMLGrammarPool:

[legend]
List of all members.

## Public Methods

virtual void | serializeGrammars (BinOutputStream *const)=0
| serialization and deserialization support. More...
virtual void | deserializeGrammars (BinInputStream *const)=0
Virtual destructor for derived classes
virtual | ~XMLGrammarPool ()
| virtual destructor. More...
The Grammar Pool Interface
virtual bool | cacheGrammar (Grammar *const gramToCache)=0
| cacheGrammar. More...
virtual Grammar * | retrieveGrammar (XMLGrammarDescription *const gramDesc)=0
| retrieveGrammar. More...
virtual Grammar * | orphanGrammar (const XMLCh *const nameSpaceKey)=0
| orphanGrammar. More...
virtual RefHashTableOfEnumerator< Grammar > | getGrammarEnumerator () const=0
| Get an enumeration of the cached Grammars in the Grammar pool. More...
virtual bool | clear ()=0
| clear. More...
virtual void | lockPool ()=0
| lockPool. More...
virtual void | unlockPool ()=0
| unlockPool. More...
Factory interface
virtual DTDGrammar * | createDTDGrammar ()=0
| createDTDGrammar. More...
virtual SchemaGrammar * | createSchemaGrammar ()=0
| createSchemaGrammar. More...
virtual XMLDTDDescription * | createDTDDescription (const XMLCh *const rootName)=0
| createDTDDescription. More...
virtual XMLSchemaDescription * | createSchemaDescription (const XMLCh *const targetNamespace)=0
| createSchemaDescription. More...
schema component model support
virtual XSModel * | getXSModel ()=0
Getter
MemoryManager *const | getMemoryManager ()
| getMemoryManager. More...
virtual XMLStringPool * | getURIStringPool ()=0
| Return an XMLStringPool for use by validation routines. More...

## Protected Methods

| XMLGrammarPool (MemoryManager *const memMgr=XMLPlatformUtils::fgMemoryManager)

## Constructor & Destructor Documentation

virtual XMLGrammarPool::~XMLGrammarPool | ( |  | ) | `[virtual]`

| virtual destructor.

XMLGrammarPool::XMLGrammarPool | ( | MemoryManager *const | memMgr = XMLPlatformUtils::fgMemoryManager | ) | `[protected]`

## Member Function Documentation

virtual bool XMLGrammarPool::cacheGrammar | ( | Grammar *const | gramToCache | ) | `[pure virtual]`

cacheGrammar.

Provide the grammar pool with an opportunity to cache the given grammar. If the pool does not choose to do so, it should return false; otherwise, it should return true, so that the caller knows whether the grammar has been adopted.

Parameters:

  gramToCache: | the Grammar to be cached in the grammar pool

Returns:
  true if the grammar pool has elected to cache the grammar (in which case it is assumed to have adopted it); false if it does not cache it

virtual bool XMLGrammarPool::clear | ( |  | ) | `[pure virtual]`

clear.

all grammars are removed from the grammar pool and deleted.

Returns:
  true if the grammar pool was cleared. false if it did not.

virtual XMLDTDDescription* XMLGrammarPool::createDTDDescription | ( | const XMLCh *const | rootName | ) | `[pure virtual]`

| createDTDDescription.

virtual DTDGrammar* XMLGrammarPool::createDTDGrammar | ( |  | ) | `[pure virtual]`

| createDTDGrammar.

virtual XMLSchemaDescription* XMLGrammarPool::createSchemaDescription | ( | const XMLCh *const | targetNamespace | ) | `[pure virtual]`

| createSchemaDescription.

virtual SchemaGrammar* XMLGrammarPool::createSchemaGrammar | ( |  | ) | `[pure virtual]`

| createSchemaGrammar.

virtual void XMLGrammarPool::deserializeGrammars | ( | BinInputStream * | const | ) | `[pure virtual]`

virtual RefHashTableOfEnumerator<Grammar> XMLGrammarPool::getGrammarEnumerator | ( |  | ) | const`[pure virtual]`

Get an enumeration of the cached Grammars in the Grammar pool.

Returns:
  enumeration of the cached Grammars in Grammar pool

MemoryManager* const XMLGrammarPool::getMemoryManager | ( |  | ) |

| getMemoryManager.

virtual XMLStringPool* XMLGrammarPool::getURIStringPool | ( |  | ) | `[pure virtual]`

| Return an XMLStringPool for use by validation routines. Implementations should not create a string pool on each call to this method, but should maintain one string pool for all grammars for which this pool is responsible.

virtual XSModel* XMLGrammarPool::getXSModel | ( |  | ) | `[pure virtual]`

virtual void XMLGrammarPool::lockPool | ( |  | ) | `[pure virtual]`

| lockPool. When this method is called by the application, the grammar pool should stop adding new grammars to the cache. This should result in the grammar pool being sharable among parsers operating in different threads.

virtual Grammar* XMLGrammarPool::orphanGrammar | ( | const XMLCh *const | nameSpaceKey | ) | `[pure virtual]`

orphanGrammar.

grammar removed from the grammar pool and owned by the caller

Parameters:

  nameSpaceKey: | Key used to search for grammar in the grammar pool

Returns:
  the grammar that was removed from the pool (0 if none)

virtual Grammar* XMLGrammarPool::retrieveGrammar | ( | XMLGrammarDescription *const | gramDesc | ) | `[pure virtual]`

retrieveGrammar.

Parameters:

  gramDesc: | the Grammar Description used to search for grammar cached in the grammar pool

virtual void XMLGrammarPool::serializeGrammars | ( | BinOutputStream * | const | ) | `[pure virtual]`

| serialization and deserialization support.

virtual void XMLGrammarPool::unlockPool | ( |  | ) | `[pure virtual]`

| unlockPool. After this method has been called, the grammar pool implementation should return to its default behaviour when cacheGrammars(...) is called. One effect, depending on the underlying implementation, is that the grammar pool may no longer be thread-safe (even on read operations). For PSVI support any previous XSModel that was produced will be deleted.

The documentation for this class was generated from the following file:

- XMLGrammarPool.hpp

Copyright © 2004 The Apache Software Foundation. All Rights Reserved.