PTLib  Version 2.10.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
XMPP::IQ Class Reference

#include <xmpp.h>

Inheritance diagram for XMPP::IQ:
XMPP::Stanza PXML PXMLBase PObject

Public Types

enum  IQType {
  Get, Set, Result, Error,
  Unknown = 999
}

Public Member Functions

 IQ (IQType type, PXMLElement *body=0)
 IQ (PXML &pdu)
 IQ (PXML *pdu)
 ~IQ ()
virtual PBoolean IsValid () const
void SetProcessed ()
 
This method signals that the message was taken care of

If the stream handler, after firing all the notifiers finds that an iq set/get pdu has not being processed, it returns an error to the sender

PBoolean HasBeenProcessed () const
virtual IQType GetType (PString *typeName=0) const
virtual PXMLElementGetBody ()
virtual void SetType (IQType type)
virtual void SetType (const PString &type)
virtual void SetBody (PXMLElement *body)
virtual IQGetOriginalMessage () const
virtual void SetOriginalMessage (IQ *iq)
virtual IQBuildResult () const
 
Creates a new response iq for this message (that must

be of the set/get type!)

virtual IQBuildError (const PString &type, const PString &code) const
 Creates an error response for this message.
virtual PNotifierList GetResponseHandlers ()
- Public Member Functions inherited from XMPP::Stanza
virtual PString GetID () const
virtual PString GetFrom () const
virtual PString GetTo () const
virtual void SetID (const PString &id)
virtual void SetFrom (const PString &from)
virtual void SetTo (const PString &to)
virtual PXMLElementGetElement (const PString &name, PINDEX i=0)
virtual void AddElement (PXMLElement *elem)
- 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 StartAutoReloadURL (const PURL &url, const PTimeInterval &timeout, const PTimeInterval &refreshTime, Options options=NoOptions)
bool StopAutoReloadURL ()
PString GetAutoReloadStatus ()
bool AutoLoadURL ()
virtual void OnAutoLoad (PBoolean ok)
bool LoadURL (const PURL &url)
bool LoadURL (const PURL &url, const PTimeInterval &timeout, 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.
void ReadFrom (istream &strm)
 Input the contents of the object from the stream.
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 ()
 PDECLARE_NOTIFIER (PTimer, PXML, AutoReloadTimeout)
 PDECLARE_NOTIFIER (PThread, PXML, AutoReloadThread)
- Public Member Functions inherited from PXMLBase
 PXMLBase (int opts=NoOptions)
void SetOptions (int opts)
int GetOptions () const
- Public Member Functions inherited from PObject
virtual ~PObject ()
virtual PObjectClone () const
 Create a copy of the class on the heap.
virtual PINDEX HashFunction () const
 This function yields a hash value required by the PDictionary class.
virtual const char * GetClass (unsigned ancestor=0) const
 Get the current dynamic type of the object instance.
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.
virtual Comparison Compare (const PObject &obj) const
 Compare the two objects and return their relative rank.
virtual Comparison CompareObjectMemoryDirect (const PObject &obj) const
 Determine the byte wise comparison of two objects.
bool operator== (const PObject &obj) const
 Compare the two objects.
bool operator!= (const PObject &obj) const
 Compare the two objects.
bool operator< (const PObject &obj) const
 Compare the two objects.
bool operator> (const PObject &obj) const
 Compare the two objects.
bool operator<= (const PObject &obj) const
 Compare the two objects.
bool operator>= (const PObject &obj) const
 Compare the two objects.

Static Public Member Functions

static const PCaselessStringTypeTag ()
 Various constant strings.
static PBoolean IsValid (const PXML *pdu)
- Static Public Member Functions inherited from XMPP::Stanza
static const PCaselessStringIDTag ()
 Various constant strings.
static const PCaselessStringFromTag ()
static const PCaselessStringToTag ()
static PString GenerateID ()
- 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

PBoolean m_Processed
IQm_OriginalIQ
PNotifierList m_ResponseHandlers

Additional Inherited Members

- Protected Member Functions inherited from PXML
void Construct (int options, const char *noIndentElements)
- Friends inherited from PObject

Member Enumeration Documentation

Enumerator:
Get 
Set 
Result 
Error 
Unknown 

Constructor & Destructor Documentation

XMPP::IQ::IQ ( IQType  type,
PXMLElement body = 0 
)
XMPP::IQ::IQ ( PXML pdu)
XMPP::IQ::IQ ( PXML pdu)
XMPP::IQ::~IQ ( )

Member Function Documentation

virtual IQ* XMPP::IQ::BuildError ( const PString type,
const PString code 
) const
virtual

Creates an error response for this message.

virtual IQ* XMPP::IQ::BuildResult ( ) const
virtual

Creates a new response iq for this message (that must

be of the set/get type!)

virtual PXMLElement* XMPP::IQ::GetBody ( )
virtual
virtual IQ* XMPP::IQ::GetOriginalMessage ( ) const
inlinevirtual

References m_OriginalIQ.

virtual PNotifierList XMPP::IQ::GetResponseHandlers ( )
inlinevirtual

References m_ResponseHandlers.

virtual IQType XMPP::IQ::GetType ( PString typeName = 0) const
virtual
PBoolean XMPP::IQ::HasBeenProcessed ( ) const
inline

References m_Processed.

virtual PBoolean XMPP::IQ::IsValid ( ) const
virtual

Implements XMPP::Stanza.

static PBoolean XMPP::IQ::IsValid ( const PXML pdu)
static
virtual void XMPP::IQ::SetBody ( PXMLElement body)
virtual
virtual void XMPP::IQ::SetOriginalMessage ( IQ iq)
virtual
void XMPP::IQ::SetProcessed ( )
inline

This method signals that the message was taken care of

If the stream handler, after firing all the notifiers finds that an iq set/get pdu has not being processed, it returns an error to the sender

References m_Processed.

virtual void XMPP::IQ::SetType ( IQType  type)
virtual
virtual void XMPP::IQ::SetType ( const PString type)
virtual
static const PCaselessString& XMPP::IQ::TypeTag ( )
static

Various constant strings.

Member Data Documentation

IQ* XMPP::IQ::m_OriginalIQ
protected

Referenced by GetOriginalMessage().

PBoolean XMPP::IQ::m_Processed
protected

Referenced by HasBeenProcessed(), and SetProcessed().

PNotifierList XMPP::IQ::m_ResponseHandlers
protected

Referenced by GetResponseHandlers().


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