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

#include <xmpp.h>

Inheritance diagram for XMPP::Presence:
Collaboration diagram for XMPP::Presence:

Public Types

enum  PresenceType {
  Available, Unavailable, Subscribe, Subscribed,
  Unsubscribe, Unsubscribed, Probe, Error,
  Unknown = 999
}
 
enum  ShowType {
  Online, Away, Chat, DND,
  XA, Other = 999
}
 

Public Member Functions

 Presence ()
 Construct a new empty presence. More...
 
 Presence (PXML &pdu)
 Construct a presence from a (received) xml PDU. More...
 
 Presence (PXML *pdu)
 
virtual PBoolean IsValid () const
 
virtual PresenceType GetType (PString *typeName=0) const
 
virtual ShowType GetShow (PString *showName=0) const
 
virtual BYTE GetPriority () const
 
virtual PString GetStatus (const PString &lang=PString::Empty())
 Get the status for the specified language. More...
 
virtual PXMLElementGetStatusElement (const PString &lang=PString::Empty())
 
virtual void SetType (PresenceType type)
 
virtual void SetType (const PString &type)
 
virtual void SetShow (ShowType show)
 
virtual void SetShow (const PString &show)
 
virtual void SetPriority (BYTE priority)
 
virtual void SetStatus (const PString &status, const PString &lang=PString::Empty())
 
- 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 (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 const PCaselessStringTypeTag ()
 Various constant strings. More...
 
static const PCaselessStringShowTag ()
 
static const PCaselessStringStatusTag ()
 
static const PCaselessStringPriorityTag ()
 
static PBoolean IsValid (const PXML *pdu)
 
- Static Public Member Functions inherited from XMPP::Stanza
static const PCaselessStringIDTag ()
 Various constant strings. More...
 
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)
 

Additional Inherited Members

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

Member Enumeration Documentation

Enumerator
Available 
Unavailable 
Subscribe 
Subscribed 
Unsubscribe 
Unsubscribed 
Probe 
Error 
Unknown 
Enumerator
Online 
Away 
Chat 
DND 
XA 
Other 

Constructor & Destructor Documentation

XMPP::Presence::Presence ( )

Construct a new empty presence.

XMPP::Presence::Presence ( PXML pdu)

Construct a presence from a (received) xml PDU.

The root of the pdu MUST be a presence stanza. NOTE: the root of the pdu is cloned.

XMPP::Presence::Presence ( PXML pdu)

Member Function Documentation

virtual BYTE XMPP::Presence::GetPriority ( ) const
virtual
virtual ShowType XMPP::Presence::GetShow ( PString showName = 0) const
virtual
virtual PString XMPP::Presence::GetStatus ( const PString lang = PString::Empty())
virtual

Get the status for the specified language.

The default status (if any) is returned in case no language is specified or a matching one cannot be found

virtual PXMLElement* XMPP::Presence::GetStatusElement ( const PString lang = PString::Empty())
virtual
virtual PresenceType XMPP::Presence::GetType ( PString typeName = 0) const
virtual
virtual PBoolean XMPP::Presence::IsValid ( ) const
virtual

Implements XMPP::Stanza.

static PBoolean XMPP::Presence::IsValid ( const PXML pdu)
static
static const PCaselessString& XMPP::Presence::PriorityTag ( )
static
virtual void XMPP::Presence::SetPriority ( BYTE  priority)
virtual
virtual void XMPP::Presence::SetShow ( ShowType  show)
virtual
virtual void XMPP::Presence::SetShow ( const PString show)
virtual
virtual void XMPP::Presence::SetStatus ( const PString status,
const PString lang = PString::Empty() 
)
virtual
virtual void XMPP::Presence::SetType ( PresenceType  type)
virtual
virtual void XMPP::Presence::SetType ( const PString type)
virtual
static const PCaselessString& XMPP::Presence::ShowTag ( )
static
static const PCaselessString& XMPP::Presence::StatusTag ( )
static
static const PCaselessString& XMPP::Presence::TypeTag ( )
static

Various constant strings.


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