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 568078 2007-08-21 11:43:25Z amassari $
00020  */
00021 
00022 #ifndef XMLREADERFACTORY_HPP
00023 #define 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

Generated on Thu Feb 19 11:35:44 2009 for Xerces-C++ by  doxygen 1.5.4