00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 00011 00012 00013 00014 00015 00016 00017 00018 00019 00020 00021 00022 00023 00024 00025 00026 00027 00028 00029 00030 00031 00032 00033 00034 00035 00036 00037 00038 00039 00040 00041 00042 00043 00044 00045 00046 00047 00048 00049 00050 00051 00052 00053 00054 00055
00056
00057 00058 00059 00060 00061 00062 00063 00064 00065 00066 00067 00068 00069 00070 00071 00072 00073 00074 00075 00076 00077 00078 00079 00080 00081 00082
00083
00084
00085 #ifndef HANDLERBASE_HPP
00086 #define HANDLERBASE_HPP
00087
00088 #include <sax/DocumentHandler.hpp>
00089 #include <sax/DTDHandler.hpp>
00090 #include <sax/EntityResolver.hpp>
00091 #include <sax/ErrorHandler.hpp>
00092 #include <sax/SAXParseException.hpp>
00093
00094 class Locator;
00095 class AttributeList;
00096
00116
00117 class HandlerBase :
00118
00119 public EntityResolver, public DTDHandler, public DocumentHandler
00120 , public ErrorHandler
00121 {
00122 public:
00124
00140 virtual void characters
00141 (
00142 const XMLCh* const chars
00143 , const unsigned int length
00144 );
00145
00158 virtual void endDocument();
00159
00173 virtual void endElement(const XMLCh* const name);
00174
00190 virtual void ignorableWhitespace
00191 (
00192 const XMLCh* const chars
00193 , const unsigned int length
00194 );
00195
00211 virtual void processingInstruction
00212 (
00213 const XMLCh* const target
00214 , const XMLCh* const data
00215 );
00216
00222 virtual void resetDocument();
00223
00224
00226
00227
00239 virtual void setDocumentLocator(const Locator* const locator);
00240
00253 virtual void startDocument();
00254
00269 virtual void startElement
00270 (
00271 const XMLCh* const name
00272 , AttributeList& attributes
00273 );
00274
00275
00276
00278
00279
00299 virtual InputSource* resolveEntity
00300 (
00301 const XMLCh* const publicId
00302 , const XMLCh* const systemId
00303 );
00304
00305
00306
00308
00323 virtual void error(const SAXParseException& exception);
00324
00342 virtual void fatalError(const SAXParseException& exception);
00343
00358 virtual void warning(const SAXParseException& exception);
00359
00365 virtual void resetErrors();
00366
00367
00368
00369
00371
00372
00386 virtual void notationDecl
00387 (
00388 const XMLCh* const name
00389 , const XMLCh* const publicId
00390 , const XMLCh* const systemId
00391 );
00392
00398 virtual void resetDocType();
00399
00414 virtual void unparsedEntityDecl
00415 (
00416 const XMLCh* const name
00417 , const XMLCh* const publicId
00418 , const XMLCh* const systemId
00419 , const XMLCh* const notationName
00420 );
00421
00422 };
00423
00424
00425
00426
00427
00428 inline void HandlerBase::characters(const XMLCh* const chars
00429 , const unsigned int length)
00430 {
00431 }
00432
00433 inline void HandlerBase::endDocument()
00434 {
00435 }
00436
00437 inline void HandlerBase::endElement(const XMLCh* const name)
00438 {
00439 }
00440
00441 inline void HandlerBase::error(const SAXParseException& exception)
00442 {
00443 }
00444
00445 inline void HandlerBase::fatalError(const SAXParseException& exception)
00446 {
00447 throw exception;
00448 }
00449
00450 inline void
00451 HandlerBase::ignorableWhitespace( const XMLCh* const chars
00452 , const unsigned int length)
00453 {
00454 }
00455
00456 inline void HandlerBase::notationDecl( const XMLCh* const name
00457 , const XMLCh* const publicId
00458 , const XMLCh* const systemId)
00459 {
00460 }
00461
00462 inline void
00463 HandlerBase::processingInstruction( const XMLCh* const target
00464 , const XMLCh* const data)
00465 {
00466 }
00467
00468 inline void HandlerBase::resetErrors()
00469 {
00470 }
00471
00472 inline void HandlerBase::resetDocument()
00473 {
00474 }
00475
00476 inline void HandlerBase::resetDocType()
00477 {
00478 }
00479
00480 inline InputSource*
00481 HandlerBase::resolveEntity( const XMLCh* const publicId
00482 , const XMLCh* const systemId)
00483 {
00484 return 0;
00485 }
00486
00487 inline void
00488 HandlerBase::unparsedEntityDecl(const XMLCh* const name
00489 , const XMLCh* const publicId
00490 , const XMLCh* const systemId
00491 , const XMLCh* const notationName)
00492 {
00493 }
00494
00495 inline void HandlerBase::setDocumentLocator(const Locator* const locator)
00496 {
00497 }
00498
00499 inline void HandlerBase::startDocument()
00500 {
00501 }
00502
00503 inline void
00504 HandlerBase::startElement( const XMLCh* const name
00505 , AttributeList& attributes)
00506 {
00507 }
00508
00509 inline void HandlerBase::warning(const SAXParseException& exception)
00510 {
00511 }
00512
00513 #endif