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

Base class for WBXML RPC parsing. More...

#include <ulxr_valueparse_wb.h>

Inheritance diagram for ulxr::ValueParserWb:

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

Collaboration graph
[legend]
List of all members.

Public Types

enum  ValueWellKnownToken {
  wbToken_Value = wbxml_TAG_C_FIRST, wbToken_Array, wbToken_Data, wbToken_Struct,
  wbToken_Member, wbToken_Name, wbToken_Boolean, wbToken_Int,
  wbToken_I4, wbToken_Double, wbToken_String, wbToken_Base64,
  wbToken_Date, wbToken_ValueParserLast
}

Public Member Functions

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

Protected Member Functions

bool testStartElement (unsigned token, const Attributes &attr)
 Tests if the current opening tag is to be parsed by this inheritance level or by the parent.
virtual void startElement (unsigned token, const Attributes &attr)
 C++ callback for an opening XML tag.
bool testEndElement ()
 C++ callback for a closing XML tag.
virtual void endElement ()
 C++ callback for a closing XML tag.
ValueState * getTopValueState () const
 Gets a pointer to the topmost ValueState.

Friends

class IntegerState
class BooleanState

Classes

class  BooleanState
 Helper class to represent the data of the current parsing step when the xml element is an Boolean. More...
class  IntegerState
 Helper class to represent the data of the current parsing step when the xml element is an Integer. More...

Detailed Description

Base class for WBXML 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

Definition at line 54 of file ulxr_valueparse_wb.h.


Member Enumeration Documentation

enum ulxr::ValueParserWb::ValueWellKnownToken

Enumerator:
wbToken_Value 
wbToken_Array 
wbToken_Data 
wbToken_Struct 
wbToken_Member 
wbToken_Name 
wbToken_Boolean 
wbToken_Int 
wbToken_I4 
wbToken_Double 
wbToken_String 
wbToken_Base64 
wbToken_Date 
wbToken_ValueParserLast 

Definition at line 67 of file ulxr_valueparse_wb.h.


Constructor & Destructor Documentation

ulxr::ValueParserWb::ValueParserWb (  ) 

Constructs a parser.

Definition at line 47 of file ulxr_valueparse_wb.cpp.

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

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

Destroys the parser.

Definition at line 55 of file ulxr_valueparse_wb.cpp.

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


Member Function Documentation

bool ulxr::ValueParserWb::testStartElement ( unsigned  token,
const Attributes attr 
) [protected]

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

Parameters:
token current well known token
attr tag attributes
Returns:
true: element has been handled

Reimplemented in ulxr::MethodCallParserWb, and ulxr::MethodResponseParserWb.

Definition at line 109 of file ulxr_valueparse_wb.cpp.

References ulxr::HtmlFormHandler::makeHexNumber(), ULXR_PCHAR, and ULXR_TRACE.

Referenced by ulxr::MethodResponseParserWb::startElement(), and ulxr::MethodCallParserWb::startElement().

void ulxr::ValueParserWb::startElement ( unsigned  token,
const Attributes attr 
) [protected, virtual]

C++ callback for an opening XML tag.

Parameters:
token current well known token
attr tag attributes

Reimplemented in ulxr::MethodCallParserWb, and ulxr::MethodResponseParserWb.

Definition at line 100 of file ulxr_valueparse_wb.cpp.

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

bool ulxr::ValueParserWb::testEndElement (  )  [protected]

C++ callback for a closing XML tag.

Returns:
true: element has been handled

Reimplemented from ulxr::WbXmlParser.

Reimplemented in ulxr::MethodCallParserWb, and ulxr::MethodResponseParserWb.

Definition at line 208 of file ulxr_valueparse_wb.cpp.

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

Referenced by ulxr::MethodResponseParserWb::endElement(), and ulxr::MethodCallParserWb::endElement().

void ulxr::ValueParserWb::endElement (  )  [protected, virtual]

C++ callback for a closing XML tag.

Implements ulxr::WbXmlParser.

Reimplemented in ulxr::MethodCallParserWb, and ulxr::MethodResponseParserWb.

Definition at line 200 of file ulxr_valueparse_wb.cpp.

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

ValueParserBase::ValueState * ulxr::ValueParserWb::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_wb.cpp.

References ULXR_GET_STRING, ULXR_PCHAR, and ULXR_TRACE.

Referenced by ~ValueParserWb().


Friends And Related Function Documentation

friend class IntegerState [friend]

Definition at line 155 of file ulxr_valueparse_wb.h.

friend class BooleanState [friend]

Definition at line 156 of file ulxr_valueparse_wb.h.


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