gloox  0.9.9.12
Public Member Functions | List of all members
FlexibleOffline Class Reference

#include <flexoff.h>

Inheritance diagram for FlexibleOffline:
Inheritance graph
[legend]
Collaboration diagram for FlexibleOffline:
Collaboration graph
[legend]

Public Member Functions

 FlexibleOffline (ClientBase *parent)
virtual ~FlexibleOffline ()
void checkSupport ()
void getMsgCount ()
void fetchHeaders ()
void fetchMessages (const StringList &msgs)
void removeMessages (const StringList &msgs)
void registerFlexibleOfflineHandler (FlexibleOfflineHandler *foh)
void removeFlexibleOfflineHandler ()
virtual void handleDiscoInfoResult (Stanza *stanza, int context)
virtual void handleDiscoItemsResult (Stanza *stanza, int context)
virtual void handleDiscoError (Stanza *stanza, int context)
virtual bool handleIqID (Stanza *stanza, int context)
virtual bool handleIq (Stanza *stanza)
- Public Member Functions inherited from DiscoHandler
virtual ~DiscoHandler ()
virtual bool handleDiscoSet (Stanza *stanza)
- Public Member Functions inherited from IqHandler
virtual ~IqHandler ()

Detailed Description

An implementation of XEP-0013 (Flexible Offline Message Retrieval).

Use the FlexibleOfflineHandler to receive results.

Author
Jakob Schroeter js@ca.nosp@m.maya.nosp@m..net
Since
0.7

Definition at line 33 of file flexoff.h.

Constructor & Destructor Documentation

FlexibleOffline ( ClientBase parent)

Creates a new FlexibleOffline object that manages retrieval of offline messages.

Parameters
parentThe ClientBase to use for communication.

Definition at line 23 of file flexoff.cpp.

~FlexibleOffline ( )
virtual

Virtual Destructor.

Definition at line 28 of file flexoff.cpp.

Member Function Documentation

void checkSupport ( )

Initiates querying the server for Flexible Offline Message Retrieval-support. The result is announced through the FlexibleOfflineHandler. An application could cache the result on a per-server basis to eliminate the associated delay.

Definition at line 33 of file flexoff.cpp.

void fetchHeaders ( )

Initiates fetching the offline message headers. The result is announced through the FlexibleOfflineHandler.

Definition at line 43 of file flexoff.cpp.

void fetchMessages ( const StringList msgs)

Initiates fetching of one or more specific messages, or all messages. The result is announced through the FlexibleOfflineHandler. If the list of message nodes contains one or more nodes, the corresponding messages are fetched. If the list is empty all messages are fetched (<fetch>).

Parameters
msgsA list of message nodes to fetch.

Definition at line 48 of file flexoff.cpp.

void getMsgCount ( )

Asks the server for the number of stored offline messages. The result is announced through the FlexibleOfflineHandler.

Definition at line 38 of file flexoff.cpp.

void handleDiscoError ( Stanza stanza,
int  context 
)
virtual

Reimplement this function to receive disco error notifications.

Parameters
stanzaThe full Stanza.
contextA context identifier.
Todo:
Replace the stanza with decoded values.

Implements DiscoHandler.

Definition at line 152 of file flexoff.cpp.

void handleDiscoInfoResult ( Stanza stanza,
int  context 
)
virtual

Reimplement this function if you want to be notified about the result of an disco::info query.

Parameters
stanzaThe full Stanza.
contextA context identifier.
Todo:
Replace the stanza with decoded values.

Implements DiscoHandler.

Definition at line 110 of file flexoff.cpp.

void handleDiscoItemsResult ( Stanza stanza,
int  context 
)
virtual

Reimplement this function if you want to be notified about the result of an disco::items query.

Parameters
stanzaThe full Stanza.
contextA context identifier.
Todo:
Replace the stanza with decoded values.

Implements DiscoHandler.

Definition at line 133 of file flexoff.cpp.

bool handleIq ( Stanza stanza)
virtual

Reimplement this function if you want to be notified about incoming IQs.

Parameters
stanzaThe complete Stanza.
Returns
Indicates whether a request of type 'get' or 'set' has been handled. This includes the obligatory 'result' answer. If you return false, a 'error' will be sent.

Implements IqHandler.

Definition at line 216 of file flexoff.cpp.

bool handleIqID ( Stanza stanza,
int  context 
)
virtual

Reimplement this function if you want to be notified about incoming IQs with a specific value of the id attribute. You have to enable tracking of those IDs using Client::trackID(). This is usually useful for IDs that generate a positive reply, i.e. <iq type='result' id='reg'/> where a namespace filter wouldn't work.

Parameters
stanzaThe complete Stanza.
contextA value to restore context, stored with ClientBase::trackID().
Returns
Indicates whether a request of type 'get' or 'set' has been handled. This includes the obligatory 'result' answer. If you return false, a 'error' will be sent.

Implements IqHandler.

Definition at line 156 of file flexoff.cpp.

void registerFlexibleOfflineHandler ( FlexibleOfflineHandler foh)

Registers a FlexibleOfflineHandler as object that receives results of XEP-0013 queries. Only one Handler at a time is possible.

Parameters
fohThe Handler object to register.

Definition at line 100 of file flexoff.cpp.

void removeFlexibleOfflineHandler ( )

Removes the registered handler.

Definition at line 105 of file flexoff.cpp.

void removeMessages ( const StringList msgs)

Initiates removing of one or more specific messages, or all messages. The result is announced through the FlexibleOfflineHandler. If the list of message nodes contains one or more nodes, the corresponding messages are removed. If the list is empty all messages are removed (<purge>).

Definition at line 74 of file flexoff.cpp.


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