http://xml.apache.org/http://www.apache.org/http://www.w3.org/

Home

Readme
Release Info

Installation
Download
Build

FAQs
Samples
API Docs

DOM C++ Binding
Programming
Migration Guide

Feedback
Bug-Reporting
PDF Document

CVS Repository
Mail Archive

API Docs for SAX and DOM
 

Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

XMLEntityHandler.hpp

Go to the documentation of this file.
00001 /*
00002  * Copyright 1999-2000,2004 The Apache Software Foundation.
00003  * 
00004  * Licensed under the Apache License, Version 2.0 (the "License");
00005  * you may not use this file except in compliance with the License.
00006  * You may obtain a copy of the License at
00007  * 
00008  *      http://www.apache.org/licenses/LICENSE-2.0
00009  * 
00010  * Unless required by applicable law or agreed to in writing, software
00011  * distributed under the License is distributed on an "AS IS" BASIS,
00012  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  * See the License for the specific language governing permissions and
00014  * limitations under the License.
00015  */
00016 
00017  /*
00018   * $Log: XMLEntityHandler.hpp,v $
00019   * Revision 1.8  2004/09/08 13:55:59  peiyongz
00020   * Apache License Version 2.0
00021   *
00022   * Revision 1.7  2003/10/30 21:37:31  knoaman
00023   * Enhanced Entity Resolver Support. Thanks to David Cargill.
00024   *
00025   * Revision 1.6  2003/03/07 18:08:10  tng
00026   * Return a reference instead of void for operator=
00027   *
00028   * Revision 1.5  2002/11/04 15:00:21  tng
00029   * C++ Namespace Support.
00030   *
00031   * Revision 1.4  2002/06/06 20:41:51  tng
00032   * Regression fix: should assign the returned InputSource from resolveEntity to srcToFill.
00033   *
00034   * Revision 1.3  2002/05/31 15:14:07  tng
00035   * Fix doxygen documentation.
00036   *
00037   * Revision 1.2  2002/05/29 21:47:08  knoaman
00038   * DOM L3 LS: DOMInputSource, DOMEntityResolver, DOMImplementationLS and DOMBuilder
00039   *
00040   * Revision 1.1.1.1  2002/02/01 22:21:51  peiyongz
00041   * sane_include
00042   *
00043   * Revision 1.7  2000/03/02 19:54:25  roddey
00044   * This checkin includes many changes done while waiting for the
00045   * 1.1.0 code to be finished. I can't list them all here, but a list is
00046   * available elsewhere.
00047   *
00048   * Revision 1.6  2000/02/24 20:00:23  abagchi
00049   * Swat for removing Log from API docs
00050   *
00051   * Revision 1.5  2000/02/16 21:42:58  aruna1
00052   * API Doc++ summary changes in
00053   *
00054   * Revision 1.4  2000/02/15 01:21:31  roddey
00055   * Some initial documentation improvements. More to come...
00056   *
00057   * Revision 1.3  2000/02/06 07:47:48  rahulj
00058   * Year 2K copyright swat.
00059   *
00060   * Revision 1.2  1999/12/15 19:46:28  roddey
00061   * Got rid of redundant 'const' on bool return value. Some compilers choke on this
00062   * and its not useful anyway.
00063   *
00064   * Revision 1.1.1.1  1999/11/09 01:08:33  twl
00065   * Initial checkin
00066   *
00067   * Revision 1.2  1999/11/08 20:44:38  rahul
00068   * Swat for adding in Product name and CVS comment log variable.
00069   *
00070   */
00071 
00072 
00073 #if !defined(XMLENTITYHANDLER_HPP)
00074 #define XMLENTITYHANDLER_HPP
00075 
00076 #include <xercesc/util/XercesDefs.hpp>
00077 
00078 XERCES_CPP_NAMESPACE_BEGIN
00079 
00080 class InputSource;
00081 class XMLBuffer;
00082 class XMLResourceIdentifier;
00083 
00094 class  XMLEntityHandler
00095 {
00096 public:
00097     // -----------------------------------------------------------------------
00098     //  Constructors are hidden, only the virtual destructor is exposed
00099     // -----------------------------------------------------------------------
00100 
00103 
00107     virtual ~XMLEntityHandler()
00108     {
00109     }
00111 
00112 
00113     // -----------------------------------------------------------------------
00114     //  The virtual entity handler interface
00115     // -----------------------------------------------------------------------
00118 
00125     virtual void endInputSource(const InputSource& inputSource) = 0;
00126 
00138     virtual bool expandSystemId
00139     (
00140         const   XMLCh* const    systemId
00141         ,       XMLBuffer&      toFill
00142     ) = 0;
00143 
00149     virtual void resetEntities() = 0;
00150 
00171     virtual InputSource* resolveEntity
00172     (
00173         const   XMLCh* const    publicId
00174         , const XMLCh* const    systemId
00175         , const XMLCh* const    baseURI = 0
00176     ) = 0;
00177 
00193     virtual InputSource* resolveEntity
00194     (
00195         XMLResourceIdentifier* resourceIdentifier
00196     ) = 0;
00197 
00204     virtual void startInputSource(const InputSource& inputSource) = 0;
00206 
00207 
00208 protected :
00209     // -----------------------------------------------------------------------
00210     //  Hidden Constructors
00211     // -----------------------------------------------------------------------
00214 
00218     XMLEntityHandler()
00219     {
00220     }
00222 
00223 
00224 
00225 private:
00226     // -----------------------------------------------------------------------
00227     //  Unimplemented constructors and destructor
00228     // -----------------------------------------------------------------------
00229     XMLEntityHandler(const XMLEntityHandler&);
00230     XMLEntityHandler& operator=(const XMLEntityHandler&);
00231 };
00232 
00233 XERCES_CPP_NAMESPACE_END
00234 
00235 #endif


Copyright © 1994-2004 The Apache Software Foundation. All Rights Reserved.