xmltooling::ParserPool Class Reference

A thread-safe pool of DOMBuilders that share characteristics. More...

#include <xmltooling/util/ParserPool.h>

List of all members.

Public Member Functions

 ParserPool (bool namespaceAware=true, bool schemaAware=false)
 Constructs a new pool.
xercesc::DOMDocument * newDocument ()
 Creates a new document using a parser from this pool.
xercesc::DOMDocument * parse (xercesc::DOMInputSource &domsrc)
 Parses a document using a pooled parser with the proper settings.
xercesc::DOMDocument * parse (std::istream &is)
 Parses a document using a pooled parser with the proper settings.
bool loadCatalog (const XMLCh *pathname)
 Load an OASIS catalog file to map schema namespace URIs to filenames.
bool loadSchema (const XMLCh *nsURI, const XMLCh *pathname)
 Load a schema explicitly from a local file.
xercesc::DOMInputSource * resolveEntity (const XMLCh *const publicId, const XMLCh *const systemId, const XMLCh *const baseURI)
 Supplies all external entities (primarily schemas) to the parser.


Detailed Description

A thread-safe pool of DOMBuilders that share characteristics.


Constructor & Destructor Documentation

xmltooling::ParserPool::ParserPool ( bool  namespaceAware = true,
bool  schemaAware = false 
)

Constructs a new pool.

Parameters:
namespaceAware indicates whether parsers should be namespace-aware or not
schemaAware indicates whether parsers should be schema-validating or not


Member Function Documentation

bool xmltooling::ParserPool::loadCatalog ( const XMLCh *  pathname  ) 

Load an OASIS catalog file to map schema namespace URIs to filenames.

This does not provide real catalog support; only the <uri> element is supported to map from a namespace URI to a relative path or file:// URI.

Parameters:
pathname path to a catalog file
Returns:
true iff the catalog was successfully processed

bool xmltooling::ParserPool::loadSchema ( const XMLCh *  nsURI,
const XMLCh *  pathname 
)

Load a schema explicitly from a local file.

Note that "successful processing" does not imply that the schema is valid, only that a reference to it was successfully registered with the pool.

Parameters:
nsURI XML namespace to load
pathname path to schema file
Returns:
true iff the schema was successfully processed

xercesc::DOMDocument* xmltooling::ParserPool::newDocument (  ) 

Creates a new document using a parser from this pool.

Returns:
new XML document

xercesc::DOMDocument* xmltooling::ParserPool::parse ( std::istream &  is  ) 

Parses a document using a pooled parser with the proper settings.

Parameters:
is An input stream containing the content to be parsed
Returns:
The DOM document resulting from the parse
Exceptions:
XMLParserException thrown if there was a problem reading, parsing, or validating the XML

xercesc::DOMDocument* xmltooling::ParserPool::parse ( xercesc::DOMInputSource &  domsrc  ) 

Parses a document using a pooled parser with the proper settings.

Parameters:
domsrc An input source containing the content to be parsed
Returns:
The DOM document resulting from the parse
Exceptions:
XMLParserException thrown if there was a problem reading, parsing, or validating the XML


The documentation for this class was generated from the following file:
Generated on Mon Oct 19 14:18:35 2009 for xmltooling by  doxygen 1.4.7