| API Docs for SAX and DOM |

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

# XMLErrorReporter.hpp

Go to the documentation of this file.

    00001 /*
    00002  * Copyright 1999-2001,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: XMLErrorReporter.hpp,v $
    00019   * Revision 1.7  2004/09/08 13:55:59  peiyongz
    00020   * Apache License Version 2.0
    00021   *
    00022   * Revision 1.6  2003/03/07 18:08:10  tng
    00023   * Return a reference instead of void for operator=
    00024   *
    00025   * Revision 1.5  2002/12/04 02:32:43  knoaman
    00026   * #include cleanup.
    00027   *
    00028   * Revision 1.4  2002/11/04 15:00:21  tng
    00029   * C++ Namespace Support.
    00030   *
    00031   * Revision 1.3  2002/05/27 18:34:59  tng
    00032   * To get ready for 64 bit large file, use XMLSSize_t to represent line and column number.
    00033   *
    00034   * Revision 1.2  2002/02/20 18:17:01  tng
    00035   * [Bug 5977] Warnings on generating apiDocs.
    00036   *
    00037   * Revision 1.1.1.1  2002/02/01 22:21:51  peiyongz
    00038   * sane_include
    00039   *
    00040   * Revision 1.11  2001/05/11 13:25:32  tng
    00041   * Copyright update.
    00042   *
    00043   * Revision 1.10  2001/05/03 19:08:56  knoaman
    00044   * Support Warning/Error/FatalError messaging.
    00045   * Validity constraints errors are treated as errors, with the ability by user to set
    00046   * validity constraints as fatal errors.
    00047   *
    00048   * Revision 1.9  2000/12/14 18:49:57  tng
    00049   * Fix API document generation warning: "Warning: end of member group without matching begin"
    00050   *
    00051   * Revision 1.8  2000/03/02 19:54:25  roddey
    00052   * This checkin includes many changes done while waiting for the
    00053   * 1.1.0 code to be finished. I can't list them all here, but a list is
    00054   * available elsewhere.
    00055   *
    00056   * Revision 1.7  2000/02/24 20:00:23  abagchi
    00057   * Swat for removing Log from API docs
    00058   *
    00059   * Revision 1.6  2000/02/16 23:03:48  roddey
    00060   * More documentation updates
    00061   *
    00062   * Revision 1.5  2000/02/16 21:42:58  aruna1
    00063   * API Doc++ summary changes in
    00064   *
    00065   * Revision 1.4  2000/02/15 23:59:07  roddey
    00066   * More updated documentation of Framework classes.
    00067   *
    00068   * Revision 1.3  2000/02/15 01:21:31  roddey
    00069   * Some initial documentation improvements. More to come...
    00070   *
    00071   * Revision 1.2  2000/02/06 07:47:48  rahulj
    00072   * Year 2K copyright swat.
    00073   *
    00074   * Revision 1.1.1.1  1999/11/09 01:08:34  twl
    00075   * Initial checkin
    00076   *
    00077   * Revision 1.2  1999/11/08 20:44:39  rahul
    00078   * Swat for adding in Product name and CVS comment log variable.
    00079   *
    00080   */
    00081
    00082
    00083 #if !defined(XMLERRORREPORTER_HPP)
    00084 #define XMLERRORREPORTER_HPP
    00085
    00086 #include <xercesc/util/XercesDefs.hpp>
    00087
    00088 XERCES_CPP_NAMESPACE_BEGIN
    00089
    00090
    00103 class  XMLErrorReporter
    00104 {
    00105 public:
    00106     // -----------------------------------------------------------------------
    00107     //  The types of errors we can issue
    00108     // -----------------------------------------------------------------------
    00109     enum ErrTypes
    00110     {
    00111         ErrType_Warning
    00112         , ErrType_Error
    00113         , ErrType_Fatal
    00114
    00115         , ErrTypes_Unknown
    00116     };
    00117
    00118
    00119     // -----------------------------------------------------------------------
    00120     //  Constructors are hidden, only the virtual destructor is exposed
    00121     // -----------------------------------------------------------------------
    00122
    00125
    00129     virtual ~XMLErrorReporter()
    00130     {
    00131     }
    00133
    00134
    00135     // -----------------------------------------------------------------------
    00136     //  The error handler interface
    00137     // -----------------------------------------------------------------------
    00138
    00141
    00177     virtual void error
    00178     (
    00179         const   unsigned int        errCode
    00180         , const XMLCh* const        errDomain
    00181         , const ErrTypes            type
    00182         , const XMLCh* const        errorText
    00183         , const XMLCh* const        systemId
    00184         , const XMLCh* const        publicId
    00185         , const XMLSSize_t          lineNum
    00186         , const XMLSSize_t          colNum
    00187     ) = 0;
    00188
    00195     virtual void resetErrors() = 0;
    00196
    00198
    00199
    00200 protected :
    00201
    00204
    00208     XMLErrorReporter()
    00209     {
    00210     }
    00212
    00213 private:
    00214     // -----------------------------------------------------------------------
    00215     //  Unimplemented constructors and destructor
    00216     // -----------------------------------------------------------------------
    00217     XMLErrorReporter(const XMLErrorReporter&);
    00218     XMLErrorReporter& operator=(const XMLErrorReporter&);
    00219 };
    00220
    00221 XERCES_CPP_NAMESPACE_END
    00222
    00223 #endif

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