PTLib  Version 2.12.9
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PXMLRPCBlock Class Reference

#include <pxmlrpc.h>

Inheritance diagram for PXMLRPCBlock:
Collaboration diagram for PXMLRPCBlock:

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 (Options 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)
 
PString AsString (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, Options 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
 P_DECLARE_BITWISE_ENUM_EX (Options, 6,(NoOptions, Indent, NewLineAfterElement, NoIgnoreWhiteSpace, CloseExtended, WithNS, FragmentOnly), AllOptions=(1<<(6+1))-1)
 
 PXMLBase (Options opts=NoOptions)
 
void SetOptions (Options opts)
 
Options GetOptions () const
 
void SetMaxEntityLength (unsigned len)
 
unsigned GetMaxEntityLength () const
 
- Public Member Functions inherited from PObject
unsigned GetTraceContextIdentifier () const
 Get PTRACE context identifier. More...
 
void SetTraceContextIdentifier (unsigned id)
 
void GetTraceContextIdentifier (PObject &obj)
 
void GetTraceContextIdentifier (PObject *obj)
 
void SetTraceContextIdentifier (const PObject &obj)
 
void SetTraceContextIdentifier (const PObject *obj)
 
virtual ~PObject ()
 
virtual PObjectClone () const
 Create a copy of the class on the heap. More...
 
template<class CLS >
CLS * CloneAs () const
 As for Clone() but converts to specified type. 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...
 
__inline const PObjectPTraceObjectInstance () const
 
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)
 

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
Options m_options
 
unsigned m_maxEntityLength
 
- Protected Attributes inherited from PObject
unsigned m_traceContextIdentifier
 

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
}
 
- Protected Member Functions inherited from PObject
 PObject ()
 Constructor for PObject, made protected so cannot ever create one on its own. More...
 
- Friends inherited from PObject

Constructor & Destructor Documentation

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

Member Function Documentation

void PXMLRPCBlock::AddArray ( const PStringArray array)
void PXMLRPCBlock::AddArray ( const PStringArray array,
const PString typeStr 
)
void PXMLRPCBlock::AddArray ( const PStringArray array,
const PStringArray types 
)
void PXMLRPCBlock::AddArray ( const PArray< PStringToString > &  array)
void PXMLRPCBlock::AddBinary ( const PBYTEArray data)
void PXMLRPCBlock::AddParam ( PXMLElement parm)
void PXMLRPCBlock::AddParam ( const PString str)
void PXMLRPCBlock::AddParam ( int  value)
void PXMLRPCBlock::AddParam ( double  value)
void PXMLRPCBlock::AddParam ( const PTime time)
void PXMLRPCBlock::AddParam ( const PXMLRPCStructBase structData)
void PXMLRPCBlock::AddStruct ( const PStringToString dict)
void PXMLRPCBlock::AddStruct ( const PStringToString dict,
const PString typeStr 
)
static PXMLElement* PXMLRPCBlock::CreateArray ( const PStringArray array)
static
static PXMLElement* PXMLRPCBlock::CreateArray ( const PStringArray array,
const PString typeStr 
)
static
static PXMLElement* PXMLRPCBlock::CreateArray ( const PStringArray array,
const PStringArray types 
)
static
static PXMLElement* PXMLRPCBlock::CreateArray ( const PArray< PStringToString > &  array)
static
static PXMLElement* PXMLRPCBlock::CreateArray ( const PXMLRPCVariableBase array)
static
static PXMLElement* PXMLRPCBlock::CreateBinary ( const PBYTEArray data)
static
static PXMLElement* PXMLRPCBlock::CreateDateAndTime ( const PTime time)
static
static PXMLElement* PXMLRPCBlock::CreateMember ( const PString name,
PXMLElement value 
)
static
static PXMLElement* PXMLRPCBlock::CreateScalar ( const PString type,
const PString scalar 
)
static
static PXMLElement* PXMLRPCBlock::CreateScalar ( const PString str)
static
static PXMLElement* PXMLRPCBlock::CreateScalar ( int  value)
static
static PXMLElement* PXMLRPCBlock::CreateScalar ( double  value)
static
static PXMLElement* PXMLRPCBlock::CreateStruct ( )
static
static PXMLElement* PXMLRPCBlock::CreateStruct ( const PStringToString dict)
static
static PXMLElement* PXMLRPCBlock::CreateStruct ( const PStringToString dict,
const PString typeStr 
)
static
static PXMLElement* PXMLRPCBlock::CreateStruct ( const PXMLRPCStructBase structData)
static
static PXMLElement* PXMLRPCBlock::CreateValueElement ( PXMLElement element)
static
PBoolean PXMLRPCBlock::GetExpectedParam ( PINDEX  idx,
const PString expectedType,
PString value 
)
PINDEX PXMLRPCBlock::GetFaultCode ( ) const
inline

References faultCode.

PString PXMLRPCBlock::GetFaultText ( ) const
inline

References faultText.

PXMLElement* PXMLRPCBlock::GetParam ( PINDEX  idx) const
PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
PString type,
PString result 
)
PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
PString result 
)
PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
int &  result 
)
PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
double &  result 
)
PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
PTime result,
int  tz = PTime::GMT 
)
PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
PStringToString result 
)
PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
PXMLRPCStructBase result 
)
PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
PStringArray result 
)
PBoolean PXMLRPCBlock::GetParam ( PINDEX  idx,
PArray< PStringToString > &  result 
)
PINDEX PXMLRPCBlock::GetParamCount ( ) const
PXMLElement* PXMLRPCBlock::GetParams ( )
PBoolean PXMLRPCBlock::GetParams ( PXMLRPCStructBase data)
PBoolean PXMLRPCBlock::Load ( const PString str)
PBoolean PXMLRPCBlock::ParseArray ( PXMLElement element,
PStringArray array 
)
PBoolean PXMLRPCBlock::ParseArray ( PXMLElement element,
PArray< PStringToString > &  array 
)
PBoolean PXMLRPCBlock::ParseArray ( PXMLElement element,
PXMLRPCVariableBase array 
)
PBoolean PXMLRPCBlock::ParseScalar ( PXMLElement element,
PString type,
PString value 
)
PBoolean PXMLRPCBlock::ParseStruct ( PXMLElement element,
PStringToString structDict 
)
PBoolean PXMLRPCBlock::ParseStruct ( PXMLElement element,
PXMLRPCStructBase structData 
)
void PXMLRPCBlock::SetFault ( PINDEX  code,
const PString text 
)
inline

References faultCode, and faultText.

Referenced by PXMLRPCServerParms::SetFault().

PBoolean PXMLRPCBlock::ValidateResponse ( )

Member Data Documentation

PINDEX PXMLRPCBlock::faultCode
protected

Referenced by GetFaultCode(), and SetFault().

PString PXMLRPCBlock::faultText
protected

Referenced by GetFaultText(), and SetFault().

PXMLElement* PXMLRPCBlock::params
protected

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