diff options
| author | Linus Jahn <lnj@kaidan.im> | 2020-09-09 15:05:23 +0200 |
|---|---|---|
| committer | Linus Jahn <lnj@kaidan.im> | 2021-06-27 20:17:17 +0200 |
| commit | 3caffcebf16680576d8dd785437eed16a6c5f36d (patch) | |
| tree | 0805a42decacdda2ace8d43196c25fe21a6fad79 /src/base/QXmppStream.h | |
| parent | 7e936d200db4855ceaf9eabc1e84c3574a12ec98 (diff) | |
| download | qxmpp-3caffcebf16680576d8dd785437eed16a6c5f36d.tar.gz | |
Add reporting of IQ responses with QFutures
Diffstat (limited to 'src/base/QXmppStream.h')
| -rw-r--r-- | src/base/QXmppStream.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/base/QXmppStream.h b/src/base/QXmppStream.h index 65547814..91bf7d09 100644 --- a/src/base/QXmppStream.h +++ b/src/base/QXmppStream.h @@ -27,6 +27,8 @@ #include "QXmppLogger.h" +#include <variant> + #include <QAbstractSocket> #include <QObject> @@ -34,6 +36,7 @@ class QDomElement; template<typename T> class QFuture; class QSslSocket; +class QXmppIq; class QXmppPacket; class QXmppStanza; class QXmppStreamPrivate; @@ -54,6 +57,10 @@ public: bool sendPacket(const QXmppStanza &); QFuture<QXmpp::PacketState> send(const QXmppStanza &); + using IqResult = std::variant<QDomElement, QXmpp::PacketState>; + QFuture<IqResult> sendIq(const QXmppIq &); + void cancelOngoingIqs(); + void resetPacketCache(); Q_SIGNALS: @@ -102,6 +109,7 @@ private: void processData(const QString &data); void sendPacket(QXmppPacket &packet); + bool handleIqResponse(const QDomElement &); QXmppStreamPrivate *const d; }; |
