#include <ACEXML/common/XMLFilterImpl.h>
Inheritance diagram for ACEXML_XMLFilterImpl:
Public Member Functions | |
ACEXML_XMLFilterImpl (void) | |
ACEXML_XMLFilterImpl (ACEXML_XMLReader *parent) | |
virtual | ~ACEXML_XMLFilterImpl (void) |
virtual int | getFeature (const ACEXML_Char *name ACEXML_ENV_ARG_DECL) |
virtual void * | getProperty (const ACEXML_Char *name ACEXML_ENV_ARG_DECL) |
virtual void | parse (ACEXML_InputSource *input ACEXML_ENV_ARG_DECL) |
virtual void | parse (const ACEXML_Char *systemId ACEXML_ENV_ARG_DECL) |
virtual void | setFeature (const ACEXML_Char *name, int boolean_value ACEXML_ENV_ARG_DECL) |
virtual void | setProperty (const ACEXML_Char *name, void *value ACEXML_ENV_ARG_DECL) |
virtual ACEXML_XMLReader * | getParent (void) const |
virtual void | setParent (ACEXML_XMLReader *parent) |
virtual ACEXML_DTDHandler * | getDTDHandler (void) const |
virtual ACEXML_ContentHandler * | getContentHandler (void) const |
virtual ACEXML_EntityResolver * | getEntityResolver (void) const |
virtual ACEXML_ErrorHandler * | getErrorHandler (void) const |
virtual void | setDTDHandler (ACEXML_DTDHandler *handler) |
virtual void | setContentHandler (ACEXML_ContentHandler *handler) |
virtual void | setEntityResolver (ACEXML_EntityResolver *handler) |
virtual void | setErrorHandler (ACEXML_ErrorHandler *handler) |
virtual void | characters (const ACEXML_Char *ch, size_t start, size_t length ACEXML_ENV_ARG_DECL) |
virtual void | endDocument (ACEXML_ENV_SINGLE_ARG_DECL) |
virtual void | endElement (const ACEXML_Char *namespaceURI, const ACEXML_Char *localName, const ACEXML_Char *qName ACEXML_ENV_ARG_DECL) |
virtual void | endPrefixMapping (const ACEXML_Char *prefix ACEXML_ENV_ARG_DECL) |
virtual void | ignorableWhitespace (const ACEXML_Char *ch, int start, int length ACEXML_ENV_ARG_DECL) |
virtual void | processingInstruction (const ACEXML_Char *target, const ACEXML_Char *data ACEXML_ENV_ARG_DECL) |
virtual void | setDocumentLocator (ACEXML_Locator *locator) |
virtual void | skippedEntity (const ACEXML_Char *name ACEXML_ENV_ARG_DECL) |
virtual void | startDocument (ACEXML_ENV_SINGLE_ARG_DECL) |
virtual void | startElement (const ACEXML_Char *namespaceURI, const ACEXML_Char *localName, const ACEXML_Char *qName, ACEXML_Attributes *atts ACEXML_ENV_ARG_DECL) |
virtual void | startPrefixMapping (const ACEXML_Char *prefix, const ACEXML_Char *uri ACEXML_ENV_ARG_DECL) |
virtual void | notationDecl (const ACEXML_Char *name, const ACEXML_Char *publicId, const ACEXML_Char *systemId ACEXML_ENV_ARG_DECL) |
virtual void | unparsedEntityDecl (const ACEXML_Char *name, const ACEXML_Char *publicId, const ACEXML_Char *systemId, const ACEXML_Char *notationName ACEXML_ENV_ARG_DECL) |
virtual ACEXML_InputSource * | resolveEntity (const ACEXML_Char *publicId, const ACEXML_Char *systemId ACEXML_ENV_ARG_DECL) |
virtual void | error (ACEXML_SAXParseException &exception ACEXML_ENV_ARG_DECL) |
virtual void | fatalError (ACEXML_SAXParseException &exception ACEXML_ENV_ARG_DECL) |
virtual void | warning (ACEXML_SAXParseException &exception ACEXML_ENV_ARG_DECL) |
Protected Member Functions | |
int | setupParser (void) |
Private Attributes | |
ACEXML_XMLReader * | parent_ |
ACEXML_Locator * | locator_ |
ACEXML_EntityResolver * | entityResolver_ |
ACEXML_DTDHandler * | dtdHandler_ |
ACEXML_ContentHandler * | contentHandler_ |
ACEXML_ErrorHandler * | errorHandler_ |
This class is designed to sit between an XMLReader and the client application's event handlers. By default, it does nothing but pass requests up to the reader and events on to the handlers unmodified, but subclasses can override specific methods to modify the event stream or the configuration requests as they pass through.
Definition at line 35 of file XMLFilterImpl.h.
|
Default constructor. Create with no parent. Definition at line 9 of file XMLFilterImpl.cpp.
00010 : parent_ (0), 00011 locator_ (0), 00012 entityResolver_ (0), 00013 dtdHandler_ (0), 00014 contentHandler_ (0), 00015 errorHandler_ (0) 00016 { 00017 } |
|
Construct an XML filter with the specified parent. Definition at line 19 of file XMLFilterImpl.cpp.
00020 : parent_ (parent), 00021 locator_ (0), 00022 entityResolver_ (0), 00023 dtdHandler_ (0), 00024 contentHandler_ (0), 00025 errorHandler_ (0) 00026 { 00027 } |
|
Destructor. Definition at line 29 of file XMLFilterImpl.cpp.
00030 {
00031 // @@ How are all the object lifecycles managed?
00032 }
|
|
Receive notification of character data. Implements ACEXML_ContentHandler. Definition at line 116 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, ACEXML_ContentHandler::characters(), and contentHandler_.
00120 { 00121 if (this->contentHandler_ != 0) 00122 this->contentHandler_->characters (ch, start, length ACEXML_ENV_ARG_PARAMETER); 00123 } |
|
Receive notification of the end of a document. Implements ACEXML_ContentHandler. Definition at line 126 of file XMLFilterImpl.cpp. References ACEXML_ENV_SINGLE_ARG_PARAMETER, contentHandler_, and ACEXML_ContentHandler::endDocument().
00127 { 00128 if (this->contentHandler_ != 0) 00129 this->contentHandler_->endDocument (ACEXML_ENV_SINGLE_ARG_PARAMETER); 00130 } |
|
Receive notification of the end of an element. Implements ACEXML_ContentHandler. Definition at line 133 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, contentHandler_, and ACEXML_ContentHandler::endElement().
00136 { 00137 if (this->contentHandler_ != 0) 00138 this->contentHandler_->endElement (namespaceURI, 00139 localName, 00140 qName ACEXML_ENV_ARG_PARAMETER); 00141 } |
|
End the scope of a prefix-URI mapping. Implements ACEXML_ContentHandler. Definition at line 144 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, contentHandler_, and ACEXML_ContentHandler::endPrefixMapping().
00145 { 00146 if (this->contentHandler_ != 0) 00147 this->contentHandler_->endPrefixMapping (prefix ACEXML_ENV_ARG_PARAMETER); 00148 } |
|
Receive notification of a recoverable error. Implements ACEXML_ErrorHandler. Definition at line 248 of file XMLFilterImpl.cpp. References ACEXML_ENV_ARG_PARAMETER, ACEXML_ErrorHandler::error(), and errorHandler_.
00249 { 00250 if (this->errorHandler_ != 0) 00251 this->errorHandler_->error (exception ACEXML_ENV_ARG_PARAMETER); 00252 } |
|
Receive notification of a non-recoverable error. Implements ACEXML_ErrorHandler. Definition at line 255 of file XMLFilterImpl.cpp. References ACEXML_ENV_ARG_PARAMETER, errorHandler_, and ACEXML_ErrorHandler::fatalError().
00256 { 00257 if (this->errorHandler_ != 0) 00258 this->errorHandler_->fatalError (exception ACEXML_ENV_ARG_PARAMETER); 00259 } |
|
Return the current content handler. Implements ACEXML_XMLReader. Definition at line 275 of file XMLFilterImpl.cpp. References contentHandler_.
00276 { 00277 return this->contentHandler_; 00278 } |
|
Return the current DTD handler. Implements ACEXML_XMLReader. Definition at line 269 of file XMLFilterImpl.cpp. References dtdHandler_.
00270 { 00271 return this->dtdHandler_; 00272 } |
|
Return the current entity resolver. Implements ACEXML_XMLReader. Definition at line 281 of file XMLFilterImpl.cpp. References entityResolver_.
00282 { 00283 return this->entityResolver_; 00284 } |
|
Return the current error handler. Implements ACEXML_XMLReader. Definition at line 287 of file XMLFilterImpl.cpp. References errorHandler_.
00288 { 00289 return this->errorHandler_; 00290 } |
|
Look up the value of a feature. This method allows programmers to check whether a specific feature has been activated in the parser. Implements ACEXML_XMLReader. Definition at line 58 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, ACEXML_THROW_RETURN, and ACEXML_XMLReader::getFeature().
00059 { 00060 if (this->parent_ != 0) 00061 return this->parent_->getFeature (name ACEXML_ENV_ARG_PARAMETER); 00062 00063 ACEXML_THROW_RETURN (ACEXML_SAXNotRecognizedException (name), 0); 00064 } |
|
Get the parent reader. Implements ACEXML_XMLFilter. Definition at line 104 of file XMLFilterImpl.cpp.
00105 { 00106 return this->parent_; 00107 } |
|
Look up the value of a property. Implements ACEXML_XMLReader. Definition at line 67 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, ACEXML_THROW_RETURN, and ACEXML_XMLReader::getProperty().
00068 { 00069 if (this->parent_ != 0) 00070 return this->parent_->getProperty (name ACEXML_ENV_ARG_PARAMETER); 00071 00072 ACEXML_THROW_RETURN (ACEXML_SAXNotRecognizedException (name), 0); 00073 } |
|
Receive notification of ignorable whitespace in element content. Implements ACEXML_ContentHandler. Definition at line 151 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, contentHandler_, and ACEXML_ContentHandler::ignorableWhitespace().
00154 { 00155 if (this->contentHandler_ != 0) 00156 this->contentHandler_->ignorableWhitespace (ch, 00157 start, 00158 length ACEXML_ENV_ARG_PARAMETER); 00159 } |
|
Receive notification of a notation declaration event. Implements ACEXML_DTDHandler. Definition at line 214 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, dtdHandler_, and ACEXML_DTDHandler::notationDecl().
00217 { 00218 if (this->dtdHandler_ != 0) 00219 this->dtdHandler_->notationDecl (name, 00220 publicId, 00221 systemId ACEXML_ENV_ARG_PARAMETER); 00222 } |
|
Parse an XML document from a system identifier (URI). Implements ACEXML_XMLReader. Definition at line 46 of file XMLFilterImpl.cpp. References ACE_TEXT, ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, ACEXML_THROW, ACEXML_XMLReader::parse(), and setupParser().
00047 { 00048 if (this->setupParser () < 0) 00049 { 00050 ACEXML_THROW (ACEXML_SAXException (ACE_TEXT ("No Parent available"))); 00051 } 00052 00053 this->parent_->parse (new ACEXML_InputSource (systemId) ACEXML_ENV_ARG_PARAMETER); 00054 return; 00055 } |
|
Parse an XML document. Implements ACEXML_XMLReader. Definition at line 35 of file XMLFilterImpl.cpp. References ACE_TEXT, ACEXML_ENV_ARG_PARAMETER, ACEXML_THROW, ACEXML_XMLReader::parse(), and setupParser().
00036 { 00037 if (this->setupParser () < 0) 00038 { 00039 ACEXML_THROW (ACEXML_SAXException (ACE_TEXT ("No Parent available"))); 00040 } 00041 this->parent_->parse (input ACEXML_ENV_ARG_PARAMETER); 00042 return; 00043 } |
|
Receive notification of a processing instruction. Implements ACEXML_ContentHandler. Definition at line 162 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, contentHandler_, and ACEXML_ContentHandler::processingInstruction().
00164 { 00165 if (this->contentHandler_ != 0) 00166 this->contentHandler_->processingInstruction (target, 00167 data ACEXML_ENV_ARG_PARAMETER); 00168 } |
|
Allow the application to resolve external entities. Implements ACEXML_EntityResolver. Definition at line 238 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, entityResolver_, and ACEXML_EntityResolver::resolveEntity().
00240 { 00241 if (this->entityResolver_ != 0) 00242 return this->entityResolver_->resolveEntity (publicId, 00243 systemId ACEXML_ENV_ARG_PARAMETER); 00244 return 0; 00245 } |
|
Allow an application to register a content event handler. Implements ACEXML_XMLReader. Definition at line 299 of file XMLFilterImpl.cpp. References contentHandler_.
00300 { 00301 this->contentHandler_ = handler; 00302 } |
|
Receive an object for locating the origin of SAX document events. Implements ACEXML_ContentHandler. Definition at line 171 of file XMLFilterImpl.cpp. References contentHandler_, and ACEXML_ContentHandler::setDocumentLocator().
00172 { 00173 if (this->contentHandler_ != 0) 00174 this->contentHandler_->setDocumentLocator (locator); 00175 } |
|
Allow an application to register a DTD event handler. Implements ACEXML_XMLReader. Definition at line 293 of file XMLFilterImpl.cpp. References dtdHandler_.
00294 { 00295 this->dtdHandler_ = handler; 00296 } |
|
Allow an application to register an entity resolver. Implements ACEXML_XMLReader. Definition at line 305 of file XMLFilterImpl.cpp. References entityResolver_.
00306 { 00307 this->entityResolver_ = handler; 00308 } |
|
Allow an application to register an error event handler. Implements ACEXML_XMLReader. Definition at line 311 of file XMLFilterImpl.cpp. References errorHandler_.
00312 { 00313 this->errorHandler_ = handler; 00314 } |
|
Activating or deactivating a feature. Implements ACEXML_XMLReader. Definition at line 76 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, ACEXML_THROW, and ACEXML_XMLReader::setFeature().
00078 { 00079 if (this->parent_ != 0) 00080 { 00081 this->parent_->setFeature (name, 00082 boolean_value ACEXML_ENV_ARG_PARAMETER); 00083 return; 00084 } 00085 00086 ACEXML_THROW (ACEXML_SAXNotRecognizedException (name)); 00087 } |
|
Set the parent reader. Implements ACEXML_XMLFilter. Definition at line 110 of file XMLFilterImpl.cpp.
00111 { 00112 this->parent_ = parent; 00113 } |
|
Set the value of a property. Implements ACEXML_XMLReader. Definition at line 90 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, ACEXML_THROW, and ACEXML_XMLReader::setProperty().
00092 { 00093 if (this->parent_ != 0) 00094 { 00095 this->parent_->setProperty (name, 00096 value ACEXML_ENV_ARG_PARAMETER); 00097 return; 00098 } 00099 00100 ACEXML_THROW (ACEXML_SAXNotRecognizedException (name)); 00101 } |
|
Definition at line 4 of file XMLFilterImpl.inl. References ACEXML_XMLReader::setContentHandler(), ACEXML_XMLReader::setDTDHandler(), ACEXML_XMLReader::setEntityResolver(), and ACEXML_XMLReader::setErrorHandler(). Referenced by parse().
00005 { 00006 if (this->parent_ == 0) 00007 return -1; 00008 00009 this->parent_->setEntityResolver (this); 00010 this->parent_->setDTDHandler (this); 00011 this->parent_->setContentHandler (this); 00012 this->parent_->setErrorHandler (this); 00013 return 0; 00014 } |
|
Receive notification of a skipped entity. Implements ACEXML_ContentHandler. Definition at line 178 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, contentHandler_, and ACEXML_ContentHandler::skippedEntity().
00179 { 00180 if (this->contentHandler_ != 0) 00181 this->contentHandler_->skippedEntity (name ACEXML_ENV_ARG_PARAMETER); 00182 } |
|
Receive notification of the beginning of a document. Implements ACEXML_ContentHandler. Definition at line 185 of file XMLFilterImpl.cpp. References ACEXML_ENV_SINGLE_ARG_PARAMETER, contentHandler_, and ACEXML_ContentHandler::startDocument().
00186 { 00187 if (this->contentHandler_ != 0) 00188 this->contentHandler_->startDocument (ACEXML_ENV_SINGLE_ARG_PARAMETER); 00189 } |
|
Receive notification of the beginning of an element. Implements ACEXML_ContentHandler. Definition at line 192 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, contentHandler_, and ACEXML_ContentHandler::startElement().
00196 { 00197 if (this->contentHandler_ != 0) 00198 this->contentHandler_->startElement (namespaceURI, 00199 localName, 00200 qName, 00201 atts ACEXML_ENV_ARG_PARAMETER); 00202 } |
|
Begin the scope of a prefix-URI Namespace mapping. Implements ACEXML_ContentHandler. Definition at line 205 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, contentHandler_, and ACEXML_ContentHandler::startPrefixMapping().
00207 { 00208 if (this->contentHandler_ != 0) 00209 this->contentHandler_->startPrefixMapping (prefix, 00210 uri ACEXML_ENV_ARG_PARAMETER); 00211 } |
|
Receive notification of an unparsed entity declaration event. Implements ACEXML_DTDHandler. Definition at line 225 of file XMLFilterImpl.cpp. References ACEXML_Char, ACEXML_ENV_ARG_PARAMETER, dtdHandler_, and ACEXML_DTDHandler::unparsedEntityDecl().
00229 { 00230 if (this->dtdHandler_ != 0) 00231 this->dtdHandler_->unparsedEntityDecl (name, 00232 publicId, 00233 systemId, 00234 notationName ACEXML_ENV_ARG_PARAMETER); 00235 } |
|
Receive notification of a warning. Implements ACEXML_ErrorHandler. Definition at line 262 of file XMLFilterImpl.cpp. References ACEXML_ENV_ARG_PARAMETER, errorHandler_, and ACEXML_ErrorHandler::warning().
00263 { 00264 if (this->errorHandler_ != 0) 00265 this->errorHandler_->warning (exception ACEXML_ENV_ARG_PARAMETER); 00266 } |
|
Definition at line 260 of file XMLFilterImpl.h. Referenced by characters(), endDocument(), endElement(), endPrefixMapping(), getContentHandler(), ignorableWhitespace(), processingInstruction(), setContentHandler(), setDocumentLocator(), skippedEntity(), startDocument(), startElement(), and startPrefixMapping(). |
|
Definition at line 259 of file XMLFilterImpl.h. Referenced by getDTDHandler(), notationDecl(), setDTDHandler(), and unparsedEntityDecl(). |
|
Definition at line 258 of file XMLFilterImpl.h. Referenced by getEntityResolver(), resolveEntity(), and setEntityResolver(). |
|
Definition at line 261 of file XMLFilterImpl.h. Referenced by error(), fatalError(), getErrorHandler(), setErrorHandler(), and warning(). |
|
Definition at line 257 of file XMLFilterImpl.h. |
|
Definition at line 256 of file XMLFilterImpl.h. |