#include <ACEXML/common/XMLFilterImpl.h>
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.
ACEXML_XMLFilterImpl::ACEXML_XMLFilterImpl | ( | void | ) |
Default constructor. Create with no parent.
Definition at line 9 of file XMLFilterImpl.cpp.
: parent_ (0), locator_ (0), entityResolver_ (0), dtdHandler_ (0), contentHandler_ (0), errorHandler_ (0) { }
ACEXML_XMLFilterImpl::ACEXML_XMLFilterImpl | ( | ACEXML_XMLReader * | parent | ) |
Construct an XML filter with the specified parent.
Definition at line 19 of file XMLFilterImpl.cpp.
: parent_ (parent), locator_ (0), entityResolver_ (0), dtdHandler_ (0), contentHandler_ (0), errorHandler_ (0) { }
ACEXML_XMLFilterImpl::~ACEXML_XMLFilterImpl | ( | void | ) | [virtual] |
Destructor.
Definition at line 29 of file XMLFilterImpl.cpp.
{
// @@ How are all the object lifecycles managed?
}
void ACEXML_XMLFilterImpl::characters | ( | const ACEXML_Char * | ch, | |
size_t | start, | |||
size_t length | ACEXML_ENV_ARG_DECL | |||
) | [virtual] |
Definition at line 116 of file XMLFilterImpl.cpp.
{ if (this->contentHandler_ != 0) this->contentHandler_->characters (ch, start, length ACEXML_ENV_ARG_PARAMETER); }
void ACEXML_XMLFilterImpl::endDocument | ( | ACEXML_ENV_SINGLE_ARG_DECL | ) | [virtual] |
Definition at line 126 of file XMLFilterImpl.cpp.
{ if (this->contentHandler_ != 0) this->contentHandler_->endDocument (ACEXML_ENV_SINGLE_ARG_PARAMETER); }
void ACEXML_XMLFilterImpl::endElement | ( | const ACEXML_Char * | namespaceURI, | |
const ACEXML_Char * | localName, | |||
const ACEXML_Char *qName | ACEXML_ENV_ARG_DECL | |||
) | [virtual] |
Definition at line 133 of file XMLFilterImpl.cpp.
{ if (this->contentHandler_ != 0) this->contentHandler_->endElement (namespaceURI, localName, qName ACEXML_ENV_ARG_PARAMETER); }
void ACEXML_XMLFilterImpl::endPrefixMapping | ( | const ACEXML_Char *prefix | ACEXML_ENV_ARG_DECL | ) | [virtual] |
Definition at line 144 of file XMLFilterImpl.cpp.
{ if (this->contentHandler_ != 0) this->contentHandler_->endPrefixMapping (prefix ACEXML_ENV_ARG_PARAMETER); }
void ACEXML_XMLFilterImpl::error | ( | ACEXML_SAXParseException &exception | ACEXML_ENV_ARG_DECL | ) | [virtual] |
Receive notification of a recoverable error.
Implements ACEXML_ErrorHandler.
Definition at line 248 of file XMLFilterImpl.cpp.
{ if (this->errorHandler_ != 0) this->errorHandler_->error (exception ACEXML_ENV_ARG_PARAMETER); }
void ACEXML_XMLFilterImpl::fatalError | ( | ACEXML_SAXParseException &exception | ACEXML_ENV_ARG_DECL | ) | [virtual] |
Receive notification of a non-recoverable error.
Implements ACEXML_ErrorHandler.
Definition at line 255 of file XMLFilterImpl.cpp.
{ if (this->errorHandler_ != 0) this->errorHandler_->fatalError (exception ACEXML_ENV_ARG_PARAMETER); }
ACEXML_ContentHandler * ACEXML_XMLFilterImpl::getContentHandler | ( | void | ) | const [virtual] |
Definition at line 275 of file XMLFilterImpl.cpp.
{ return this->contentHandler_; }
ACEXML_DTDHandler * ACEXML_XMLFilterImpl::getDTDHandler | ( | void | ) | const [virtual] |
Definition at line 269 of file XMLFilterImpl.cpp.
{ return this->dtdHandler_; }
ACEXML_EntityResolver * ACEXML_XMLFilterImpl::getEntityResolver | ( | void | ) | const [virtual] |
Definition at line 281 of file XMLFilterImpl.cpp.
{ return this->entityResolver_; }
ACEXML_ErrorHandler * ACEXML_XMLFilterImpl::getErrorHandler | ( | void | ) | const [virtual] |
Definition at line 287 of file XMLFilterImpl.cpp.
{ return this->errorHandler_; }
int ACEXML_XMLFilterImpl::getFeature | ( | const ACEXML_Char *name | ACEXML_ENV_ARG_DECL | ) | [virtual] |
Definition at line 58 of file XMLFilterImpl.cpp.
{ if (this->parent_ != 0) return this->parent_->getFeature (name ACEXML_ENV_ARG_PARAMETER); ACEXML_THROW_RETURN (ACEXML_SAXNotRecognizedException (name), 0); }
ACEXML_XMLReader * ACEXML_XMLFilterImpl::getParent | ( | void | ) | const [virtual] |
Definition at line 104 of file XMLFilterImpl.cpp.
{ return this->parent_; }
void * ACEXML_XMLFilterImpl::getProperty | ( | const ACEXML_Char *name | ACEXML_ENV_ARG_DECL | ) | [virtual] |
Definition at line 67 of file XMLFilterImpl.cpp.
{ if (this->parent_ != 0) return this->parent_->getProperty (name ACEXML_ENV_ARG_PARAMETER); ACEXML_THROW_RETURN (ACEXML_SAXNotRecognizedException (name), 0); }
void ACEXML_XMLFilterImpl::ignorableWhitespace | ( | const ACEXML_Char * | ch, | |
int | start, | |||
int length | ACEXML_ENV_ARG_DECL | |||
) | [virtual] |
Definition at line 151 of file XMLFilterImpl.cpp.
{ if (this->contentHandler_ != 0) this->contentHandler_->ignorableWhitespace (ch, start, length ACEXML_ENV_ARG_PARAMETER); }
void ACEXML_XMLFilterImpl::notationDecl | ( | const ACEXML_Char * | name, | |
const ACEXML_Char * | publicId, | |||
const ACEXML_Char *systemId | ACEXML_ENV_ARG_DECL | |||
) | [virtual] |
Definition at line 214 of file XMLFilterImpl.cpp.
{ if (this->dtdHandler_ != 0) this->dtdHandler_->notationDecl (name, publicId, systemId ACEXML_ENV_ARG_PARAMETER); }
void ACEXML_XMLFilterImpl::parse | ( | const ACEXML_Char *systemId | ACEXML_ENV_ARG_DECL | ) | [virtual] |
Definition at line 46 of file XMLFilterImpl.cpp.
{ if (this->setupParser () < 0) { ACEXML_THROW (ACEXML_SAXException (ACE_TEXT ("No Parent available"))); } this->parent_->parse (new ACEXML_InputSource (systemId) ACEXML_ENV_ARG_PARAMETER); return; }
void ACEXML_XMLFilterImpl::parse | ( | ACEXML_InputSource *input | ACEXML_ENV_ARG_DECL | ) | [virtual] |
Definition at line 35 of file XMLFilterImpl.cpp.
{ if (this->setupParser () < 0) { ACEXML_THROW (ACEXML_SAXException (ACE_TEXT ("No Parent available"))); } this->parent_->parse (input ACEXML_ENV_ARG_PARAMETER); return; }
void ACEXML_XMLFilterImpl::processingInstruction | ( | const ACEXML_Char * | target, | |
const ACEXML_Char *data | ACEXML_ENV_ARG_DECL | |||
) | [virtual] |
Definition at line 162 of file XMLFilterImpl.cpp.
{ if (this->contentHandler_ != 0) this->contentHandler_->processingInstruction (target, data ACEXML_ENV_ARG_PARAMETER); }
ACEXML_InputSource * ACEXML_XMLFilterImpl::resolveEntity | ( | const ACEXML_Char * | publicId, | |
const ACEXML_Char *systemId | ACEXML_ENV_ARG_DECL | |||
) | [virtual] |
Definition at line 238 of file XMLFilterImpl.cpp.
{ if (this->entityResolver_ != 0) return this->entityResolver_->resolveEntity (publicId, systemId ACEXML_ENV_ARG_PARAMETER); return 0; }
void ACEXML_XMLFilterImpl::setContentHandler | ( | ACEXML_ContentHandler * | handler | ) | [virtual] |
Definition at line 299 of file XMLFilterImpl.cpp.
{ this->contentHandler_ = handler; }
void ACEXML_XMLFilterImpl::setDocumentLocator | ( | ACEXML_Locator * | locator | ) | [virtual] |
Definition at line 171 of file XMLFilterImpl.cpp.
{ if (this->contentHandler_ != 0) this->contentHandler_->setDocumentLocator (locator); }
void ACEXML_XMLFilterImpl::setDTDHandler | ( | ACEXML_DTDHandler * | handler | ) | [virtual] |
Definition at line 293 of file XMLFilterImpl.cpp.
{ this->dtdHandler_ = handler; }
void ACEXML_XMLFilterImpl::setEntityResolver | ( | ACEXML_EntityResolver * | handler | ) | [virtual] |
Definition at line 305 of file XMLFilterImpl.cpp.
{ this->entityResolver_ = handler; }
void ACEXML_XMLFilterImpl::setErrorHandler | ( | ACEXML_ErrorHandler * | handler | ) | [virtual] |
Definition at line 311 of file XMLFilterImpl.cpp.
{ this->errorHandler_ = handler; }
void ACEXML_XMLFilterImpl::setFeature | ( | const ACEXML_Char * | name, | |
int boolean_value | ACEXML_ENV_ARG_DECL | |||
) | [virtual] |
Definition at line 76 of file XMLFilterImpl.cpp.
{ if (this->parent_ != 0) { this->parent_->setFeature (name, boolean_value ACEXML_ENV_ARG_PARAMETER); return; } ACEXML_THROW (ACEXML_SAXNotRecognizedException (name)); }
void ACEXML_XMLFilterImpl::setParent | ( | ACEXML_XMLReader * | parent | ) | [virtual] |
Definition at line 110 of file XMLFilterImpl.cpp.
{ this->parent_ = parent; }
void ACEXML_XMLFilterImpl::setProperty | ( | const ACEXML_Char * | name, | |
void *value | ACEXML_ENV_ARG_DECL | |||
) | [virtual] |
Definition at line 90 of file XMLFilterImpl.cpp.
{ if (this->parent_ != 0) { this->parent_->setProperty (name, value ACEXML_ENV_ARG_PARAMETER); return; } ACEXML_THROW (ACEXML_SAXNotRecognizedException (name)); }
ACEXML_INLINE int ACEXML_XMLFilterImpl::setupParser | ( | void | ) | [protected] |
Definition at line 4 of file XMLFilterImpl.inl.
{ if (this->parent_ == 0) return -1; this->parent_->setEntityResolver (this); this->parent_->setDTDHandler (this); this->parent_->setContentHandler (this); this->parent_->setErrorHandler (this); return 0; }
void ACEXML_XMLFilterImpl::skippedEntity | ( | const ACEXML_Char *name | ACEXML_ENV_ARG_DECL | ) | [virtual] |
Definition at line 178 of file XMLFilterImpl.cpp.
{ if (this->contentHandler_ != 0) this->contentHandler_->skippedEntity (name ACEXML_ENV_ARG_PARAMETER); }
void ACEXML_XMLFilterImpl::startDocument | ( | ACEXML_ENV_SINGLE_ARG_DECL | ) | [virtual] |
Definition at line 185 of file XMLFilterImpl.cpp.
{ if (this->contentHandler_ != 0) this->contentHandler_->startDocument (ACEXML_ENV_SINGLE_ARG_PARAMETER); }
void ACEXML_XMLFilterImpl::startElement | ( | const ACEXML_Char * | namespaceURI, | |
const ACEXML_Char * | localName, | |||
const ACEXML_Char * | qName, | |||
ACEXML_Attributes *atts | ACEXML_ENV_ARG_DECL | |||
) | [virtual] |
Definition at line 192 of file XMLFilterImpl.cpp.
{ if (this->contentHandler_ != 0) this->contentHandler_->startElement (namespaceURI, localName, qName, atts ACEXML_ENV_ARG_PARAMETER); }
void ACEXML_XMLFilterImpl::startPrefixMapping | ( | const ACEXML_Char * | prefix, | |
const ACEXML_Char *uri | ACEXML_ENV_ARG_DECL | |||
) | [virtual] |
Definition at line 205 of file XMLFilterImpl.cpp.
{ if (this->contentHandler_ != 0) this->contentHandler_->startPrefixMapping (prefix, uri ACEXML_ENV_ARG_PARAMETER); }
void ACEXML_XMLFilterImpl::unparsedEntityDecl | ( | const ACEXML_Char * | name, | |
const ACEXML_Char * | publicId, | |||
const ACEXML_Char * | systemId, | |||
const ACEXML_Char *notationName | ACEXML_ENV_ARG_DECL | |||
) | [virtual] |
Definition at line 225 of file XMLFilterImpl.cpp.
{ if (this->dtdHandler_ != 0) this->dtdHandler_->unparsedEntityDecl (name, publicId, systemId, notationName ACEXML_ENV_ARG_PARAMETER); }
void ACEXML_XMLFilterImpl::warning | ( | ACEXML_SAXParseException &exception | ACEXML_ENV_ARG_DECL | ) | [virtual] |
Receive notification of a warning.
Implements ACEXML_ErrorHandler.
Definition at line 262 of file XMLFilterImpl.cpp.
{ if (this->errorHandler_ != 0) this->errorHandler_->warning (exception ACEXML_ENV_ARG_PARAMETER); }
Definition at line 260 of file XMLFilterImpl.h.
Definition at line 259 of file XMLFilterImpl.h.
Definition at line 258 of file XMLFilterImpl.h.
Definition at line 261 of file XMLFilterImpl.h.
ACEXML_Locator* ACEXML_XMLFilterImpl::locator_ [private] |
Definition at line 257 of file XMLFilterImpl.h.
ACEXML_XMLReader* ACEXML_XMLFilterImpl::parent_ [private] |
Definition at line 256 of file XMLFilterImpl.h.