Xerces-C++ 3.2.3

XMLReaderFactory.hpp
Go to the documentation of this file.
1 /*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18 /*
19 * $Id$
20 */
21
22 #if !defined(XERCESC_INCLUDE_GUARD_XMLREADERFACTORY_HPP)
23 #define XERCESC_INCLUDE_GUARD_XMLREADERFACTORY_HPP
24
25 #include <xercesc/sax2/SAX2XMLReader.hpp>
26 #include <xercesc/sax/SAXException.hpp>
27
28 XERCES_CPP_NAMESPACE_BEGIN
29
30 class MemoryManager;
31 class XMLGrammarPool;
32
42 class SAX2_EXPORT XMLReaderFactory
43 {
44 protected: // really should be private, but that causes compiler warnings.
45 XMLReaderFactory() ;
46 ~XMLReaderFactory() ;
47
48 public:
49 static SAX2XMLReader * createXMLReader( MemoryManager* const manager = XMLPlatformUtils::fgMemoryManager
50 , XMLGrammarPool* const gramPool = 0
51 ) ;
52 static SAX2XMLReader * createXMLReader(const XMLCh* className) ;
53
54 private:
55 // -----------------------------------------------------------------------
56 // Unimplemented constructors and operators
57 // -----------------------------------------------------------------------
58 XMLReaderFactory(const XMLReaderFactory&);
59 XMLReaderFactory& operator=(const XMLReaderFactory&);
60 };
61
62 inline SAX2XMLReader * XMLReaderFactory::createXMLReader(const XMLCh *)
63 {
64 throw SAXNotSupportedException();
65 // unimplemented
66 return 0;
67 }
68
69 XERCES_CPP_NAMESPACE_END
70
71 #endif
SAX2XMLReader
Definition: SAX2XMLReader.hpp:42
XERCES_CPP_NAMESPACE_BEGIN
#define XERCES_CPP_NAMESPACE_BEGIN
Definition: XercesDefs.hpp:112
SAXException.hpp
SAX2XMLReader.hpp
XERCES_CPP_NAMESPACE_END
#define XERCES_CPP_NAMESPACE_END
Definition: XercesDefs.hpp:113
SAXNotSupportedException
Definition: SAXException.hpp:161
XMLCh
uint16_t XMLCh
Definition: Xerces_autoconf_config.hpp:120
XMLGrammarPool
Definition: XMLGrammarPool.hpp:43
XMLPlatformUtils::fgMemoryManager
static MemoryManager * fgMemoryManager
The configurable memory manager.
Definition: PlatformUtils.hpp:121
XMLReaderFactory::createXMLReader
static SAX2XMLReader * createXMLReader(MemoryManager *const manager=XMLPlatformUtils::fgMemoryManager, XMLGrammarPool *const gramPool=0)
XMLReaderFactory
Creates a SAX2 parser (SAX2XMLReader).
Definition: XMLReaderFactory.hpp:42
MemoryManager
Configurable memory manager.
Definition: MemoryManager.hpp:39
SAX2_EXPORT
#define SAX2_EXPORT
Definition: XercesDefs.hpp:165