Signals | Public Member Functions

QXmppRosterManager Class Reference
[Managers]

The QXmppRosterManager class provides access to a connected client's roster. More...

#include <QXmppRosterManager.h>

Inheritance diagram for QXmppRosterManager:
QXmppClientExtension QXmppLoggable

List of all members.

Signals

void rosterReceived ()
void presenceChanged (const QString &bareJid, const QString &resource)
 This signal is emitted when the presence of a particular bareJid and resource changes.
void rosterChanged (const QString &bareJid)
 This signal is emitted when the roster entry of a particular bareJid changes.

Public Member Functions

 QXmppRosterManager (QXmppClient *stream)
 Constructs a roster manager.
bool isRosterReceived ()
QStringList getRosterBareJids () const
QXmppRosterIq::Item getRosterEntry (const QString &bareJid) const
void removeRosterEntry (const QString &bareJid)
QStringList getResources (const QString &bareJid) const
QMap< QString, QXmppPresencegetAllPresencesForBareJid (const QString &bareJid) const
QXmppPresence getPresence (const QString &bareJid, const QString &resource) const

Detailed Description

The QXmppRosterManager class provides access to a connected client's roster.

Note:
It's object should not be created using it's constructor. Instead QXmppClient::rosterManager() should be used to get the reference of instantiated object this class.

It stores all the Roster and Presence details of all the roster entries (that is all the bareJids) in the client's friend's list. It provides the functionality to get all the bareJids in the client's roster and Roster and Presence details of the same.

After the successful xmpp connection that after the signal QXmppClient::connected() is emitted QXmpp requests for getting the roster. Once QXmpp receives the roster the signal QXmppRosterManager::rosterReceived() is emitted and after that user can use the functions of this class to get roster entries.

Function QXmppRosterManager::isRosterReceived() tells whether the roster has been received or not.

Signals presenceChanged() or rosterChanged() are emitted whenever presence or roster changes respectively.


Member Function Documentation

QMap< QString, QXmppPresence > QXmppRosterManager::getAllPresencesForBareJid ( const QString &  bareJid  )  const

Get all the presences of all the resources of the given bareJid. A bareJid can have multiple resources and each resource will have a presence associated with it.

Parameters:
bareJid as a QString
Returns:
Map of resource and its respective presence QMap<QString, QXmppPresence>
QXmppPresence QXmppRosterManager::getPresence ( const QString &  bareJid,
const QString &  resource 
) const

Get the presence of the given resource of the given bareJid.

Parameters:
bareJid as a QString
resource as a QString
Returns:
QXmppPresence
QStringList QXmppRosterManager::getResources ( const QString &  bareJid  )  const

Get all the associated resources with the given bareJid.

Parameters:
bareJid as a QString
Returns:
list of associated resources as a QStringList
QStringList QXmppRosterManager::getRosterBareJids (  )  const

Function to get all the bareJids present in the roster.

Returns:
QStringList list of all the bareJids
QXmppRosterIq::Item QXmppRosterManager::getRosterEntry ( const QString &  bareJid  )  const

Returns the roster entry of the given bareJid. If the bareJid is not in the database and empty QXmppRosterIq::Item will be returned.

Parameters:
bareJid as a QString
bool QXmppRosterManager::isRosterReceived (  ) 

Function to check whether the roster has been received or not.

Returns:
true if roster received else false
void QXmppRosterManager::removeRosterEntry ( const QString &  bareJid  ) 

Removes a roster entry and cancels subscriptions to and from the contact.

As a result, the server will initiate a roster push, causing the rosterChanged() signal to be emitted.

Parameters:
bareJid 
void QXmppRosterManager::rosterReceived (  )  [signal]

This signal is emitted when the Roster IQ is received after a successful connection. That is the roster entries are empty before this signal is emitted. One should use getRosterBareJids() and getRosterEntry() only after this signal has been emitted.


The documentation for this class was generated from the following files:
 All Classes Functions Enumerations Enumerator