Xerces-C++ 3.1.3

- Main Page
- Related Pages
- Classes
- Files

- File List
- File Members

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: XMLReaderFactory.hpp 932887 2010-04-11 13:04:59Z borisk $
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