ulxr::ValueParser Class Reference
[Low-level parser classes]

Base class for XML RPC parsing. More...

#include <ulxr_valueparse.h>

Inheritance diagram for ulxr::ValueParser:

Inheritance graph
[legend]
Collaboration diagram for ulxr::ValueParser:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ValueParser ()
 Constructs a parser.
virtual ~ValueParser ()
 Destroys the parser.

Protected Member Functions

virtual void startElement (const XML_Char *name, const XML_Char **atts)
 Parses the current opening XML tag.
virtual void endElement (const XML_Char *name)
 Parses the current closing XML tag.
bool testStartElement (const XML_Char *name, const XML_Char **atts)
 Tests if the current opening tag is to be parsed by this inheritance level or by the parent.
bool testEndElement (const XML_Char *name)
 Tests if the current closing tag is to be parsed by this inheritance level or by the parent.
ValueState * getTopValueState () const
 Gets a pointer to the topmost ValueState.

Detailed Description

Base class for XML RPC parsing.

IMPORTANT: The current "Value" is moved around via pointers and is not automatically destroyed. The object taking over the "Value" resp. the object storing the value somehow else must "delete" the "Value" it gets.

See also:
ArrayState::takeValue

MethodCallParser::testEndElement

Definition at line 55 of file ulxr_valueparse.h.


Constructor & Destructor Documentation

ulxr::ValueParser::ValueParser (  ) 

Constructs a parser.

Definition at line 46 of file ulxr_valueparse.cpp.

References ulxr::XmlParserBase::eNone, ulxr::XmlParserBase::states, ULXR_PCHAR, ULXR_TRACE, and ulxr::ValueParserBase::ValueState.

ulxr::ValueParser::~ValueParser (  )  [virtual]

Destroys the parser.

Definition at line 54 of file ulxr_valueparse.cpp.

References ulxr::XmlParserBase::eNone, getTopValueState(), ulxr::XmlParserBase::states, ulxr_i18n, ULXR_PCHAR, and ULXR_TRACE.


Member Function Documentation

void ulxr::ValueParser::startElement ( const XML_Char *  name,
const XML_Char **  atts 
) [protected, virtual]

Parses the current opening XML tag.

Used ONLY internally as callback from expat.

Parameters:
name the name of the current tag
atts to the current attributs (unused in XML-RPC)

Reimplemented from ulxr::ExpatWrapper.

Reimplemented in ulxr::MethodCallParser, and ulxr::MethodResponseParser.

Definition at line 99 of file ulxr_valueparse.cpp.

References ulxr::XmlParser::testStartElement(), ULXR_PCHAR, and ULXR_TRACE.

void ulxr::ValueParser::endElement ( const XML_Char *  name  )  [protected, virtual]

Parses the current closing XML tag.

Used ONLY internally as callback from expat.

Parameters:
name the name of the current tag

Reimplemented from ulxr::ExpatWrapper.

Reimplemented in ulxr::MethodCallParser, and ulxr::MethodResponseParser.

Definition at line 200 of file ulxr_valueparse.cpp.

References ulxr::XmlParser::testEndElement(), ULXR_PCHAR, and ULXR_TRACE.

bool ulxr::ValueParser::testStartElement ( const XML_Char *  name,
const XML_Char **  atts 
) [protected]

Tests if the current opening tag is to be parsed by this inheritance level or by the parent.

Used ONLY internally.

Parameters:
name the name of the current tag
atts pointer to the current attributs (unused in XML-RPC)

Reimplemented from ulxr::XmlParser.

Reimplemented in ulxr::MethodCallParser, and ulxr::MethodResponseParser.

Definition at line 108 of file ulxr_valueparse.cpp.

References ULXR_GET_STRING, ULXR_PCHAR, and ULXR_TRACE.

Referenced by ulxr::MethodResponseParser::startElement(), and ulxr::MethodCallParser::startElement().

bool ulxr::ValueParser::testEndElement ( const XML_Char *  name  )  [protected]

Tests if the current closing tag is to be parsed by this inheritance level or by the parent.

Used ONLY internally.

Parameters:
name the name of the current tag

Reimplemented from ulxr::XmlParser.

Reimplemented in ulxr::MethodCallParser, and ulxr::MethodResponseParser.

Definition at line 208 of file ulxr_valueparse.cpp.

References ulxr::ApplicationError, ulxr::Base64::setBase64(), ulxr_i18n, ULXR_PCHAR, and ULXR_TRACE.

Referenced by ulxr::MethodResponseParser::endElement(), and ulxr::MethodCallParser::endElement().

ValueParserBase::ValueState * ulxr::ValueParser::getTopValueState (  )  const [protected, virtual]

Gets a pointer to the topmost ValueState.

Returns:
pointer to ValueState

Implements ulxr::ValueParserBase.

Definition at line 80 of file ulxr_valueparse.cpp.

References ULXR_GET_STRING, ULXR_PCHAR, and ULXR_TRACE.

Referenced by ~ValueParser().


The documentation for this class was generated from the following files:
Generated on Sun Aug 19 20:09:11 2007 for ulxmlrpcpp by  doxygen 1.5.1