PTLib  Version 2.14.3
 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)
 
PXMLElement * GetParams ()
 
PXMLElement * GetParam (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)
 
PXMLElement * CreateValueElement (PXMLElement *element)
 
PXMLElement * CreateScalar (const PString &type, const PString &scalar)
 
PXMLElement * CreateMember (const PString &name, PXMLElement *value)
 
PXMLElement * CreateScalar (const PString &str)
 
PXMLElement * CreateScalar (int value)
 
PXMLElement * CreateScalar (double value)
 
PXMLElement * CreateDateAndTime (const PTime &time)
 
PXMLElement * CreateBinary (const PBYTEArray &data)
 
PXMLElement * CreateStruct (PXMLElement *&data)
 
PXMLElement * CreateStruct (const PStringToString &dict)
 
PXMLElement * CreateStruct (const PStringToString &dict, const PString &typeStr)
 
PXMLElement * CreateStruct (const PXMLRPCStructBase &structData)
 
PXMLElement * CreateArray (PXMLElement *&data)
 
PXMLElement * CreateArray (const PStringArray &array)
 
PXMLElement * CreateArray (const PStringArray &array, const PString &typeStr)
 
PXMLElement * CreateArray (const PStringArray &array, const PStringArray &types)
 
PXMLElement * CreateArray (const PArray< PStringToString > &array)
 
PXMLElement * CreateArray (const 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 ()
 
void ReadFrom (istream &strm)
 Input the contents of the object from the stream. More...
 
void PrintOn (ostream &strm) const
 Output the contents of the object to the stream. More...
 
PString AsString () const
 
bool IsDirty () const
 
bool Load (const PString &data)
 
bool Load (const PString &data, Options options)
 
bool LoadFile (const PFilePath &fn)
 
bool LoadFile (const PFilePath &fn, Options options)
 
virtual bool OnLoadProgress (unsigned) const
 
virtual void OnLoaded ()
 
bool Save ()
 
bool Save (Options options)
 
PString AsString ()
 
PString AsString (Options options)
 
bool SaveFile (const PFilePath &fn)
 
bool SaveFile (const PFilePath &fn, Options options)
 
virtual bool OnSaveProgress (unsigned) const
 
virtual bool OutputProgress () const
 
virtual PINDEX GetObjectCount () const
 
void RemoveAll ()
 
virtual PBoolean IsNoIndentElement (const PString &elementName) const
 
virtual PXMLElement * CreateElement (const PCaselessString &name, const char *data=NULL)
 
virtual PXMLRootElement * CreateRootElement (const PCaselessString &name)
 
PXMLElement * GetElement (const PCaselessString &name, const PCaselessString &attr, const PString &attrval) const
 
PXMLElement * GetElement (const PCaselessString &name, PINDEX idx=0) const
 
PXMLElement * GetElement (PINDEX idx) const
 
PINDEX GetNumElements () const
 
PXMLElement * SetRootElement (PXMLRootElement *root)
 
PXMLElement * SetRootElement (const PString &documentType)
 
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)
 
const PCaselessString & GetVersion () const
 
const PCaselessString & GetEncoding () const
 
StandAloneType GetStandAlone () const
 
bool IsLoaded () const
 
PXMLRootElement * GetRootElement () const
 
PCaselessString GetDocumentType () const
 
const PCaselessString & GetDocType () const
 
const PCaselessString & GetPubicIdentifier () const
 
const PCaselessString & GetDtdURI () const
 
PString GetErrorString () const
 
unsigned GetErrorColumn () const
 
unsigned GetErrorLine () const
 
- Public Member Functions inherited from PXMLBase
 P_DECLARE_BITWISE_ENUM_EX (Options, 7,(NoOptions, Indent, IndentWithTabs, 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
 
bool OutputIndent (ostream &strm, int indent, const PString &elementName=PString::Empty()) 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 PObject * Clone () 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 PObject * PTraceObjectInstance () 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...
 

Protected Attributes

PXMLElement * m_params
 
PString m_faultText
 
PINDEX m_faultCode
 
- Protected Attributes inherited from PXML
PFilePath m_loadFilename
 
PCaselessString m_version
 
PCaselessString m_encoding
 
StandAloneType m_standAlone
 
PCaselessString m_docType
 
PCaselessString m_publicId
 
PCaselessString m_dtdURI
 
PXMLRootElement * m_rootElement
 
PStringStream m_errorString
 
unsigned m_errorLine
 
unsigned m_errorColumn
 
PSortedStringList m_noIndentElements
 
PCaselessString m_defaultNameSpace
 
PINDEX m_totalObjects
 
PINDEX m_savedObjects
 
unsigned m_percent
 
- 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
}
 
- Static Public Member Functions inherited from PXML
static PString EscapeSpecialChars (const PString &string)
 
- 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 
)
PXMLElement* PXMLRPCBlock::CreateArray ( PXMLElement *&  data)
PXMLElement* PXMLRPCBlock::CreateArray ( const PStringArray &  array)
PXMLElement* PXMLRPCBlock::CreateArray ( const PStringArray &  array,
const PString &  typeStr 
)
PXMLElement* PXMLRPCBlock::CreateArray ( const PStringArray &  array,
const PStringArray &  types 
)
PXMLElement* PXMLRPCBlock::CreateArray ( const PArray< PStringToString > &  array)
PXMLElement* PXMLRPCBlock::CreateArray ( const PXMLRPCVariableBase &  array)
PXMLElement* PXMLRPCBlock::CreateBinary ( const PBYTEArray &  data)
PXMLElement* PXMLRPCBlock::CreateDateAndTime ( const PTime &  time)
PXMLElement* PXMLRPCBlock::CreateMember ( const PString &  name,
PXMLElement *  value 
)
PXMLElement* PXMLRPCBlock::CreateScalar ( const PString &  type,
const PString &  scalar 
)
PXMLElement* PXMLRPCBlock::CreateScalar ( const PString &  str)
PXMLElement* PXMLRPCBlock::CreateScalar ( int  value)
PXMLElement* PXMLRPCBlock::CreateScalar ( double  value)
PXMLElement* PXMLRPCBlock::CreateStruct ( PXMLElement *&  data)
PXMLElement* PXMLRPCBlock::CreateStruct ( const PStringToString &  dict)
PXMLElement* PXMLRPCBlock::CreateStruct ( const PStringToString &  dict,
const PString &  typeStr 
)
PXMLElement* PXMLRPCBlock::CreateStruct ( const PXMLRPCStructBase &  structData)
PXMLElement* PXMLRPCBlock::CreateValueElement ( PXMLElement *  element)
PBoolean PXMLRPCBlock::GetExpectedParam ( PINDEX  idx,
const PString &  expectedType,
PString &  value 
)
PINDEX PXMLRPCBlock::GetFaultCode ( ) const
inline

References m_faultCode.

PString PXMLRPCBlock::GetFaultText ( ) const
inline

References m_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::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 m_faultCode, and m_faultText.

Referenced by PXMLRPCServerParms::SetFault().

PBoolean PXMLRPCBlock::ValidateResponse ( )

Member Data Documentation

PINDEX PXMLRPCBlock::m_faultCode
protected

Referenced by GetFaultCode(), and SetFault().

PString PXMLRPCBlock::m_faultText
protected

Referenced by GetFaultText(), and SetFault().

PXMLElement* PXMLRPCBlock::m_params
protected

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