diff options
| author | Linus Jahn <lnj@kaidan.im> | 2020-09-09 15:32:01 +0200 |
|---|---|---|
| committer | Linus Jahn <lnj@kaidan.im> | 2021-01-09 14:37:47 +0100 |
| commit | af22e07a2300dc18ec62eee30508569062d918b3 (patch) | |
| tree | 753c28084811c1beac0d1657eb193aa756703e4d /src/client/QXmppClient.h | |
| parent | 8570b4c56616547e5fa2530e6b9733fb37cf02a3 (diff) | |
| download | qxmpp-af22e07a2300dc18ec62eee30508569062d918b3.tar.gz | |
QXmppClient: Advertise stream management state
Diffstat (limited to 'src/client/QXmppClient.h')
| -rw-r--r-- | src/client/QXmppClient.h | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/src/client/QXmppClient.h b/src/client/QXmppClient.h index 02c580c3..0afe6235 100644 --- a/src/client/QXmppClient.h +++ b/src/client/QXmppClient.h @@ -89,7 +89,7 @@ class QXmppVersionManager; /// - QXmppEntityTimeManager /// /// \ingroup Core - +/// class QXMPP_EXPORT QXmppClient : public QXmppLoggable { Q_OBJECT @@ -118,6 +118,16 @@ public: }; Q_ENUM(State) + /// Describes the use of \xep{0198}: Stream Management + enum StreamManagementState { + /// Stream Management is not used. + NoStreamManagement, + /// Stream Management is used and the previous stream has not been resumed. + NewStream, + /// Stream Management is used and the previous stream has been resumed. + ResumedStream + }; + QXmppClient(QObject *parent = nullptr); ~QXmppClient() override; @@ -127,6 +137,7 @@ public: QList<QXmppClientExtension *> extensions(); + /// /// \brief Returns the extension which can be cast into type T*, or 0 /// if there is no such extension. /// @@ -151,6 +162,7 @@ public: return nullptr; } + /// /// \brief Returns the index of an extension /// /// Usage example: @@ -182,6 +194,8 @@ public: bool isActive() const; void setActive(bool active); + StreamManagementState streamManagementState() const; + QXmppPresence clientPresence() const; void setClientPresence(const QXmppPresence &presence); |
