diff options
| author | Jeremy Lainé <jeremy.laine@m4x.org> | 2012-07-21 16:15:00 +0200 |
|---|---|---|
| committer | Jeremy Lainé <jeremy.laine@m4x.org> | 2012-07-21 16:15:00 +0200 |
| commit | e8f3edc023e3d3da523a688c2d80fccbf37c4a79 (patch) | |
| tree | 2351309918b73fb90f200c02d3883305ecb17350 /src | |
| parent | aefa4f51b84542c1203930323da74d603a8d9345 (diff) | |
| download | qxmpp-e8f3edc023e3d3da523a688c2d80fccbf37c4a79.tar.gz | |
Add a "reason" argument to QXmppRosterManager's subscription methods.
Diffstat (limited to 'src')
| -rw-r--r-- | src/client/QXmppRosterManager.cpp | 12 | ||||
| -rw-r--r-- | src/client/QXmppRosterManager.h | 8 |
2 files changed, 12 insertions, 8 deletions
diff --git a/src/client/QXmppRosterManager.cpp b/src/client/QXmppRosterManager.cpp index ebe41887..ca64df23 100644 --- a/src/client/QXmppRosterManager.cpp +++ b/src/client/QXmppRosterManager.cpp @@ -88,11 +88,12 @@ QXmppRosterManager::~QXmppRosterManager() /// /// You can call this method in reply to the subscriptionRequest() signal. -bool QXmppRosterManager::acceptSubscription(const QString &bareJid) +bool QXmppRosterManager::acceptSubscription(const QString &bareJid, const QString &reason) { QXmppPresence presence; presence.setTo(bareJid); presence.setType(QXmppPresence::Subscribed); + presence.setStatusText(reason); return client()->sendPacket(presence); } @@ -227,11 +228,12 @@ void QXmppRosterManager::_q_presenceReceived(const QXmppPresence& presence) /// /// You can call this method in reply to the subscriptionRequest() signal. -bool QXmppRosterManager::refuseSubscription(const QString &bareJid) +bool QXmppRosterManager::refuseSubscription(const QString &bareJid, const QString &reason) { QXmppPresence presence; presence.setTo(bareJid); presence.setType(QXmppPresence::Unsubscribed); + presence.setStatusText(reason); return client()->sendPacket(presence); } @@ -304,11 +306,12 @@ bool QXmppRosterManager::renameItem(const QString &bareJid, const QString &name) /// As a result, the server will initiate a roster push, causing the /// itemAdded() or itemChanged() signal to be emitted. -bool QXmppRosterManager::subscribe(const QString &bareJid) +bool QXmppRosterManager::subscribe(const QString &bareJid, const QString &reason) { QXmppPresence packet; packet.setTo(QXmppUtils::jidToBareJid(bareJid)); packet.setType(QXmppPresence::Subscribe); + packet.setStatusText(reason); return client()->sendPacket(packet); } @@ -317,11 +320,12 @@ bool QXmppRosterManager::subscribe(const QString &bareJid) /// As a result, the server will initiate a roster push, causing the /// itemChanged() signal to be emitted. -bool QXmppRosterManager::unsubscribe(const QString &bareJid) +bool QXmppRosterManager::unsubscribe(const QString &bareJid, const QString &reason) { QXmppPresence packet; packet.setTo(QXmppUtils::jidToBareJid(bareJid)); packet.setType(QXmppPresence::Unsubscribe); + packet.setStatusText(reason); return client()->sendPacket(packet); } diff --git a/src/client/QXmppRosterManager.h b/src/client/QXmppRosterManager.h index 2e846570..3781509b 100644 --- a/src/client/QXmppRosterManager.h +++ b/src/client/QXmppRosterManager.h @@ -89,13 +89,13 @@ public: /// \endcond public slots: - bool acceptSubscription(const QString &bareJid); - bool refuseSubscription(const QString &bareJid); + bool acceptSubscription(const QString &bareJid, const QString &reason = QString()); + bool refuseSubscription(const QString &bareJid, const QString &reason = QString()); bool addItem(const QString &bareJid, const QString &name = QString(), const QSet<QString> &groups = QSet<QString>()); bool removeItem(const QString &bareJid); bool renameItem(const QString &bareJid, const QString &name); - bool subscribe(const QString &bareJid); - bool unsubscribe(const QString &bareJid); + bool subscribe(const QString &bareJid, const QString &reason = QString()); + bool unsubscribe(const QString &bareJid, const QString &reason = QString()); signals: /// This signal is emitted when the Roster IQ is received after a successful |
