00001 /*00002 * Licensed to the Apache Software Foundation (ASF) under one or more00003 * contributor license agreements. See the NOTICE file distributed with00004 * this work for additional information regarding copyright ownership.00005 * The ASF licenses this file to You under the Apache License, Version 2.000006 * (the "License"); you may not use this file except in compliance with00007 * the License. You may obtain a copy of the License at00008 * 00009 * http://www.apache.org/licenses/LICENSE-2.000010 * 00011 * Unless required by applicable law or agreed to in writing, software00012 * 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 and00015 * limitations under the License.00016 */00017
00018 /*00019 * $Id: Parser.hpp 568078 2007-08-21 11:43:25Z amassari $00020 */00021
00022 #ifndef PARSER_HPP00023 #define PARSER_HPP00024
00025 #include <xercesc/util/XercesDefs.hpp>00026
00027 XERCES_CPP_NAMESPACE_BEGIN00028
00029 class DTDHandler;
00030 class EntityResolver;
00031 class DocumentHandler;
00032 class ErrorHandler;
00033 class InputSource;
00034
00058 #include <xercesc/util/XercesDefs.hpp>00059
00060class Parser00061 {
00062 public:
00064 // -----------------------------------------------------------------------00065 // Constructors and Destructor00066 // -----------------------------------------------------------------------00068
00069Parser()
00070 {
00071 }
00073virtual ~Parser()
00074 {
00075 }
00077
00078 //-----------------------------------------------------------------------00079 // The parser interface00080 //-----------------------------------------------------------------------00099 virtualvoid setEntityResolver(EntityResolver* const resolver) = 0;
00100
00116 virtualvoid setDTDHandler(DTDHandler* const handler) = 0;
00117
00134 virtualvoid setDocumentHandler(DocumentHandler* const handler) = 0;
00135
00153 virtualvoid setErrorHandler(ErrorHandler* const handler) = 0;
00154
00180 virtualvoid parse
00181 (
00182 constInputSource& source
00183 ) = 0;
00184
00204 virtualvoid parse
00205 (
00206 const XMLCh* const systemId
00207 ) = 0;
00208
00228 virtualvoid parse
00229 (
00230 constchar* const systemId
00231 ) = 0;
00233
00234
00235 private :
00236 /* The copy constructor, you cannot call this directly */00237 Parser(constParser&);
00238
00239 /* The assignment operator, you cannot call this directly */00240 Parser& operator=(constParser&);
00241 };
00242
00243 XERCES_CPP_NAMESPACE_END00244
00245 #endif