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

`#include <xmpp.h>`

Inheritance 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 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...

## 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 PXMLElement * | GetStatusElement (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 PXMLElement * | GetElement (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 | 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...
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 * | GetRootElement () const
PXMLElement * | SetRootElement (PXMLElement *p)
PXMLElement * | SetRootElement (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)
PMutex & | GetMutex ()
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 PObject * | Clone () 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 const PCaselessString & | TypeTag ()
| Various constant strings. More...
static const PCaselessString & | ShowTag ()
static const PCaselessString & | StatusTag ()
static const PCaselessString & | PriorityTag ()
static PBoolean | IsValid (const PXML *pdu)
Static Public Member Functions inherited from XMPP::Stanza
static const PCaselessString & | IDTag ()
| Various constant strings. More...
static const PCaselessString & | FromTag ()
static const PCaselessString & | ToTag ()
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)
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...

## Additional Inherited Members

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...
Protected Attributes inherited from PXML
PXMLElement * | rootElement
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

## Member Enumeration Documentation

enum XMPP::Presence::PresenceType

Enumerator
Available |
Unavailable |
Subscribe |
Subscribed |
Unsubscribe |
Unsubscribed |
Probe |
Error |
Unknown |

enum XMPP::Presence::ShowType

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:

- xmpp.h