- Main Page
- Related Pages
- Classes
- Files

# XMLReaderFactory.hpp

Go to the documentation of this file.

    00001 /*
    00002  * Licensed to the Apache Software Foundation (ASF) under one or more
    00003  * contributor license agreements.  See the NOTICE file distributed with
    00004  * this work for additional information regarding copyright ownership.
    00005  * The ASF licenses this file to You under the Apache License, Version 2.0
    00006  * (the "License"); you may not use this file except in compliance with
    00007  * the License.  You may obtain a copy of the License at
    00008  *
    00009  *      http://www.apache.org/licenses/LICENSE-2.0
    00010  *
    00011  * Unless required by applicable law or agreed to in writing, software
    00012  * distributed under the License is distributed on an "AS IS" BASIS,
    00013  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    00014  * See the License for the specific language governing permissions and
    00015  * limitations under the License.
    00016  */
    00017
    00018 /*
    00019  * $Id: XMLReaderFactory.hpp 527149 2007-04-10 14:56:39Z amassari $
    00020  */
    00021
    00022 #if !defined(XERCESC_INCLUDE_GUARD_XMLREADERFACTORY_HPP)
    00023 #define XERCESC_INCLUDE_GUARD_XMLREADERFACTORY_HPP
    00024
    00025 #include <xercesc/sax2/SAX2XMLReader.hpp>
    00026 #include <xercesc/sax/SAXException.hpp>
    00027
    00028 XERCES_CPP_NAMESPACE_BEGIN
    00029
    00030 class MemoryManager;
    00031 class XMLGrammarPool;
    00032
    00042 class SAX2_EXPORT XMLReaderFactory
    00043 {
    00044 protected:                // really should be private, but that causes compiler warnings.
    00045     XMLReaderFactory() ;
    00046     ~XMLReaderFactory() ;
    00047
    00048 public:
    00049     static SAX2XMLReader * createXMLReader(  MemoryManager* const  manager = XMLPlatformUtils::fgMemoryManager
    00050                                            , XMLGrammarPool* const gramPool = 0
    00051                                           ) ;
    00052     static SAX2XMLReader * createXMLReader(const XMLCh* className)  ;
    00053
    00054 private:
    00055     // -----------------------------------------------------------------------
    00056     //  Unimplemented constructors and operators
    00057     // -----------------------------------------------------------------------
    00058     XMLReaderFactory(const XMLReaderFactory&);
    00059     XMLReaderFactory& operator=(const XMLReaderFactory&);
    00060 };
    00061
    00062 inline SAX2XMLReader * XMLReaderFactory::createXMLReader(const XMLCh *)
    00063 {
    00064     throw SAXNotSupportedException();
    00065     // unimplemented
    00066     return 0;
    00067 }
    00068
    00069 XERCES_CPP_NAMESPACE_END
    00070
    00071 #endif