PTLib  Version 2.10.11
PXMLRPCBlock Class Reference

#include <pxmlrpc.h>

Inheritance diagram for PXMLRPCBlock:
PXML PXMLBase PObject

Public Member Functions

 PXMLRPCBlock ()
 
 PXMLRPCBlock (const PString &method)
 
 PXMLRPCBlock (const PString &method, const PXMLRPCStructBase &structData)
 
PBoolean Load (const PString &str)
 
PXMLElementGetParams ()
 
PXMLElementGetParam (PINDEX idx) const
 
PINDEX GetParamCount () const
 
PINDEX GetFaultCode () const
 
PString GetFaultText () const
 
void SetFault (PINDEX code, const PString &text)
 
PBoolean ValidateResponse ()
 
PBoolean GetParams (PXMLRPCStructBase &data)
 
PBoolean GetParam (PINDEX idx, PString &type, PString &result)
 
PBoolean GetExpectedParam (PINDEX idx, const PString &expectedType, PString &value)
 
PBoolean GetParam (PINDEX idx, PString &result)
 
PBoolean GetParam (PINDEX idx, int &result)
 
PBoolean GetParam (PINDEX idx, double &result)
 
PBoolean GetParam (PINDEX idx, PTime &result, int tz=PTime::GMT)
 
PBoolean GetParam (PINDEX idx, PStringToString &result)
 
PBoolean GetParam (PINDEX idx, PXMLRPCStructBase &result)
 
PBoolean GetParam (PINDEX idx, PStringArray &result)
 
PBoolean GetParam (PINDEX idx, PArray< PStringToString > &result)
 
PBoolean ParseScalar (PXMLElement *element, PString &type, PString &value)
 
PBoolean ParseStruct (PXMLElement *element, PStringToString &structDict)
 
PBoolean ParseStruct (PXMLElement *element, PXMLRPCStructBase &structData)
 
PBoolean ParseArray (PXMLElement *element, PStringArray &array)
 
PBoolean ParseArray (PXMLElement *element, PArray< PStringToString > &array)
 
PBoolean ParseArray (PXMLElement *element, PXMLRPCVariableBase &array)
 
void AddParam (PXMLElement *parm)
 
void AddParam (const PString &str)
 
void AddParam (int value)
 
void AddParam (double value)
 
void AddParam (const PTime &time)
 
void AddParam (const PXMLRPCStructBase &structData)
 
void AddBinary (const PBYTEArray &data)
 
void AddStruct (const PStringToString &dict)
 
void AddStruct (const PStringToString &dict, const PString &typeStr)
 
void AddArray (const PStringArray &array)
 
void AddArray (const PStringArray &array, const PString &typeStr)
 
void AddArray (const PStringArray &array, const PStringArray &types)
 
void AddArray (const PArray< PStringToString > &array)
 
- Public Member Functions inherited from PXML
 PXML (int options=NoOptions, const char *noIndentElements=NULL)
 
 PXML (const PString &data, int options=NoOptions, const char *noIndentElements=NULL)
 
 PXML (const PXML &xml)
 
 ~PXML ()
 
bool IsLoaded () const
 
bool IsDirty () const
 
bool Load (const PString &data, Options options=NoOptions)
 
bool LoadFile (const PFilePath &fn, Options options=NoOptions)
 
virtual void OnLoaded ()
 
bool Save (Options options=NoOptions)
 
bool Save (PString &data, Options options=NoOptions)
 
bool SaveFile (const PFilePath &fn, Options options=NoOptions)
 
void RemoveAll ()
 
PBoolean IsNoIndentElement (const PString &elementName) const
 
PString AsString () const
 
void PrintOn (ostream &strm) const
 Output the contents of the object to the stream. More...
 
void ReadFrom (istream &strm)
 Input the contents of the object from the stream. More...
 
PXMLElementGetElement (const PCaselessString &name, const PCaselessString &attr, const PString &attrval) const
 
PXMLElementGetElement (const PCaselessString &name, PINDEX idx=0) const
 
PXMLElementGetElement (PINDEX idx) const
 
PINDEX GetNumElements () const
 
PXMLElementGetRootElement () const
 
PXMLElementSetRootElement (PXMLElement *p)
 
PXMLElementSetRootElement (const PString &documentType)
 
bool RemoveElement (PINDEX idx)
 
PCaselessString GetDocumentType () const
 
bool Validate (const ValidationInfo *validator)
 
bool ValidateElements (ValidationContext &context, PXMLElement *baseElement, const ValidationInfo *elements)
 
bool ValidateElement (ValidationContext &context, PXMLElement *element, const ValidationInfo *elements)
 
bool LoadAndValidate (const PString &body, const PXML::ValidationInfo *validator, PString &error, int options=NoOptions)
 
PString GetErrorString () const
 
unsigned GetErrorColumn () const
 
unsigned GetErrorLine () const
 
PString GetDocType () const
 
void SetDocType (const PString &v)
 
PMutexGetMutex ()
 
- Public Member Functions inherited from PXMLBase
 PXMLBase (int opts=NoOptions)
 
void SetOptions (int opts)
 
int GetOptions () const
 
void SetMaxEntityLength (unsigned len)
 
unsigned GetMaxEntityLength () const
 
- Public Member Functions inherited from PObject
virtual ~PObject ()
 
virtual PObjectClone () const
 Create a copy of the class on the heap. More...
 
virtual PINDEX HashFunction () const
 This function yields a hash value required by the PDictionary class. More...
 
virtual const char * GetClass (unsigned ancestor=0) const
 Get the current dynamic type of the object instance. More...
 
PBoolean IsClass (const char *cls) const
 
virtual PBoolean InternalIsDescendant (const char *clsName) const
 Determine if the dynamic type of the current instance is a descendent of the specified class. More...
 
virtual Comparison Compare (const PObject &obj) const
 Compare the two objects and return their relative rank. More...
 
virtual Comparison CompareObjectMemoryDirect (const PObject &obj) const
 Determine the byte wise comparison of two objects. More...
 
bool operator== (const PObject &obj) const
 Compare the two objects. More...
 
bool operator!= (const PObject &obj) const
 Compare the two objects. More...
 
bool operator< (const PObject &obj) const
 Compare the two objects. More...
 
bool operator> (const PObject &obj) const
 Compare the two objects. More...
 
bool operator<= (const PObject &obj) const
 Compare the two objects. More...
 
bool operator>= (const PObject &obj) const
 Compare the two objects. More...
 

Static Public Member Functions

static PXMLElementCreateValueElement (PXMLElement *element)
 
static PXMLElementCreateScalar (const PString &type, const PString &scalar)
 
static PXMLElementCreateMember (const PString &name, PXMLElement *value)
 
static PXMLElementCreateScalar (const PString &str)
 
static PXMLElementCreateScalar (int value)
 
static PXMLElementCreateScalar (double value)
 
static PXMLElementCreateDateAndTime (const PTime &time)
 
static PXMLElementCreateBinary (const PBYTEArray &data)
 
static PXMLElementCreateStruct ()
 
static PXMLElementCreateStruct (const PStringToString &dict)
 
static PXMLElementCreateStruct (const PStringToString &dict, const PString &typeStr)
 
static PXMLElementCreateStruct (const PXMLRPCStructBase &structData)
 
static PXMLElementCreateArray (const PStringArray &array)
 
static PXMLElementCreateArray (const PStringArray &array, const PString &typeStr)
 
static PXMLElementCreateArray (const PStringArray &array, const PStringArray &types)
 
static PXMLElementCreateArray (const PArray< PStringToString > &array)
 
static PXMLElementCreateArray (const PXMLRPCVariableBase &array)
 
- Static Public Member Functions inherited from PXML
static PString CreateStartTag (const PString &text)
 
static PString CreateEndTag (const PString &text)
 
static PString CreateTagNoData (const PString &text)
 
static PString CreateTag (const PString &text, const PString &data)
 
static PString EscapeSpecialChars (const PString &string)
 
- Static Public Member Functions inherited from PObject
static const char * Class ()
 Get the name of the class as a C string. More...
 
static Comparison InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size)
 Internal function caled from CompareObjectMemoryDirect() More...
 

Protected Attributes

PXMLElementparams
 
PString faultText
 
PINDEX faultCode
 
- Protected Attributes inherited from PXML
PXMLElementrootElement
 
PMutex rootMutex
 
bool loadFromFile
 
PFilePath loadFilename
 
PString version
 
PString encoding
 
StandAloneType m_standAlone
 
PStringStream m_errorString
 
unsigned m_errorLine
 
unsigned m_errorColumn
 
PSortedStringList noIndentElements
 
PString docType
 
PString m_defaultNameSpace
 
- Protected Attributes inherited from PXMLBase
int m_options
 
unsigned m_maxEntityLength
 

Additional Inherited Members

- Public Types inherited from PXML
enum  ValidationOp {
  EndOfValidationList, DocType, ElementName, RequiredAttribute,
  RequiredNonEmptyAttribute, RequiredAttributeWithValue, RequiredElement, Subtree,
  RequiredAttributeWithValueMatching, RequiredElementWithBodyMatching, OptionalElement, OptionalAttribute,
  OptionalNonEmptyAttribute, OptionalAttributeWithValue, OptionalAttributeWithValueMatching, OptionalElementWithBodyMatching,
  SetDefaultNamespace, SetNamespace, RequiredAttributeWithValueMatchingEx = RequiredAttributeWithValueMatching + 0x8000, OptionalAttributeWithValueMatchingEx = OptionalAttributeWithValueMatching + 0x8000,
  RequiredElementWithBodyMatchingEx = RequiredElementWithBodyMatching + 0x8000, OptionalElementWithBodyMatchingEx = OptionalElementWithBodyMatching + 0x8000
}
 
- Public Types inherited from PXMLBase
enum  { DEFAULT_MAX_ENTITY_LENGTH = 4096 }
 
enum  Options {
  NoOptions = 0x0000, Indent = 0x0001, NewLineAfterElement = 0x0002, NoIgnoreWhiteSpace = 0x0004,
  CloseExtended = 0x0008, WithNS = 0x0010, FragmentOnly = 0x0020, AllOptions = 0xffff
}
 
enum  StandAloneType { UninitialisedStandAlone = -2, UnknownStandAlone = -1, NotStandAlone, IsStandAlone }
 
- Public Types inherited from PObject
enum  Comparison { LessThan = -1, EqualTo = 0, GreaterThan = 1 }
 Result of the comparison operation performed by the Compare() function. More...
 
- Protected Member Functions inherited from PXML
void Construct (int options, const char *noIndentElements)
 
- Protected Member Functions inherited from PObject
 PObject ()
 Constructor for PObject, made protected so cannot ever create one on its own. More...
 

Constructor & Destructor Documentation

§ PXMLRPCBlock() [1/3]

PXMLRPCBlock::PXMLRPCBlock ( )

§ PXMLRPCBlock() [2/3]

PXMLRPCBlock::PXMLRPCBlock ( const PString method)

§ PXMLRPCBlock() [3/3]

PXMLRPCBlock::PXMLRPCBlock ( const PString method,
const PXMLRPCStructBase structData 
)

Member Function Documentation

§ AddArray() [1/4]

void PXMLRPCBlock::AddArray ( const PStringArray array)

§ AddArray() [2/4]

void PXMLRPCBlock::AddArray ( const PStringArray array,
const PString typeStr 
)

§ AddArray() [3/4]

void PXMLRPCBlock::AddArray ( const PStringArray array,
const PStringArray types 
)

§ AddArray() [4/4]

void PXMLRPCBlock::AddArray ( const PArray< PStringToString > &  array)

§ AddBinary()

void PXMLRPCBlock::AddBinary ( const PBYTEArray data)

§ AddParam() [1/6]

void PXMLRPCBlock::AddParam ( PXMLElement parm)

§ AddParam() [2/6]

void PXMLRPCBlock::AddParam ( const PString str)

§ AddParam() [3/6]

void PXMLRPCBlock::AddParam ( int  value)

§ AddParam() [4/6]

void PXMLRPCBlock::AddParam ( double  value)

§ AddParam() [5/6]

void PXMLRPCBlock::AddParam ( const PTime time)

§ AddParam() [6/6]

void PXMLRPCBlock::AddParam ( const PXMLRPCStructBase structData)

§ AddStruct() [1/2]

void PXMLRPCBlock::AddStruct ( const PStringToString dict)

§ AddStruct() [2/2]

void PXMLRPCBlock::AddStruct ( const PStringToString dict,
const PString typeStr 
)

§ CreateArray() [1/5]

static PXMLElement* PXMLRPCBlock::CreateArray ( const PStringArray array)
static

§ CreateArray() [2/5]

static PXMLElement* PXMLRPCBlock::CreateArray ( const PStringArray array,
const PString typeStr 
)
static

§ CreateArray() [3/5]

static PXMLElement* PXMLRPCBlock::CreateArray ( const PStringArray array,
const PStringArray types 
)
static

§ CreateArray() [4/5]

static PXMLElement* PXMLRPCBlock::CreateArray ( const PArray< PStringToString > &  array)
static

§ CreateArray() [5/5]

static PXMLElement* PXMLRPCBlock::CreateArray ( const PXMLRPCVariableBase array)
static

§ CreateBinary()

static PXMLElement* PXMLRPCBlock::CreateBinary ( const PBYTEArray data)
static

§ CreateDateAndTime()

static PXMLElement* PXMLRPCBlock::CreateDateAndTime ( const PTime time)
static

§ CreateMember()

static PXMLElement* PXMLRPCBlock::CreateMember ( const PString name,
PXMLElement value 
)
static

§ CreateScalar() [1/4]

static PXMLElement* PXMLRPCBlock::CreateScalar ( const PString type,
const PString scalar 
)
static

§ CreateScalar() [2/4]

static PXMLElement* PXMLRPCBlock::CreateScalar ( const PString str)
static

§ CreateScalar() [3/4]

static PXMLElement* PXMLRPCBlock::CreateScalar ( int  value)
static

§ CreateScalar() [4/4]

static PXMLElement* PXMLRPCBlock::CreateScalar ( double  value)
static

§ CreateStruct() [1/4]

static PXMLElement* PXMLRPCBlock::CreateStruct ( )
static

§ CreateStruct() [2/4]

static PXMLElement* PXMLRPCBlock::CreateStruct ( const PStringToString dict)
static

§ CreateStruct() [3/4]

static PXMLElement* PXMLRPCBlock::CreateStruct ( const PStringToString dict,
const PString typeStr 
)
static

§ CreateStruct() [4/4]

static PXMLElement* PXMLRPCBlock::CreateStruct ( const PXMLRPCStructBase structData)
static

§ CreateValueElement()

static PXMLElement* PXMLRPCBlock::CreateValueElement ( PXMLElement element)
static

§ GetExpectedParam()

PBoolean PXMLRPCBlock::GetExpectedParam ( PINDEX  idx,
const PString expectedType,
PString value 
)

§ GetFaultCode()

PINDEX PXMLRPCBlock::GetFaultCode ( ) const
inline

References PXMLRPC::faultCode.

§ GetFaultText()

PString PXMLRPCBlock::GetFaultText ( ) const
inline

References PXMLRPC::faultText.

§ GetParam() [1/10]

PXMLElement* PXMLRPCBlock::GetParam ( PINDEX  idx) const

§ GetParam() [2/10]

PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
PString type,
PString result 
)

§ GetParam() [3/10]

PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
PString result 
)

§ GetParam() [4/10]

PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
int &  result 
)

§ GetParam() [5/10]

PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
double &  result 
)

§ GetParam() [6/10]

PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
PTime result,
int  tz = PTime::GMT 
)

§ GetParam() [7/10]

PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
PStringToString result 
)

§ GetParam() [8/10]

PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
PXMLRPCStructBase result 
)

§ GetParam() [9/10]

PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
PStringArray result 
)

§ GetParam() [10/10]

PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
PArray< PStringToString > &  result 
)

§ GetParamCount()

PINDEX PXMLRPCBlock::GetParamCount ( ) const

§ GetParams() [1/2]

PXMLElement* PXMLRPCBlock::GetParams ( )

§ GetParams() [2/2]

PBoolean PXMLRPCBlock::GetParams ( PXMLRPCStructBase data)

§ Load()

PBoolean PXMLRPCBlock::Load ( const PString str)

§ ParseArray() [1/3]

PBoolean PXMLRPCBlock::ParseArray ( PXMLElement element,
PStringArray array 
)

§ ParseArray() [2/3]

PBoolean PXMLRPCBlock::ParseArray ( PXMLElement element,
PArray< PStringToString > &  array 
)

§ ParseArray() [3/3]

PBoolean PXMLRPCBlock::ParseArray ( PXMLElement element,
PXMLRPCVariableBase array 
)

§ ParseScalar()

PBoolean PXMLRPCBlock::ParseScalar ( PXMLElement element,
PString type,
PString value 
)

§ ParseStruct() [1/2]

PBoolean PXMLRPCBlock::ParseStruct ( PXMLElement element,
PStringToString structDict 
)

§ ParseStruct() [2/2]

PBoolean PXMLRPCBlock::ParseStruct ( PXMLElement element,
PXMLRPCStructBase structData 
)

§ SetFault()

void PXMLRPCBlock::SetFault ( PINDEX  code,
const PString text 
)
inline

§ ValidateResponse()

PBoolean PXMLRPCBlock::ValidateResponse ( )

Member Data Documentation

§ faultCode

PINDEX PXMLRPCBlock::faultCode
protected

§ faultText

PString PXMLRPCBlock::faultText
protected

§ params

PXMLElement* PXMLRPCBlock::params
protected

The documentation for this class was generated from the following file: