aboutsummaryrefslogtreecommitdiff
path: root/src/client/QXmppPubSubManager.h
diff options
context:
space:
mode:
authorLinus Jahn <lnj@kaidan.im>2021-09-29 13:15:53 +0200
committerLinus Jahn <lnj@kaidan.im>2021-09-29 16:37:41 +0200
commit9b21bef379d94876908cbb706c9ba2438779bf54 (patch)
tree38a7499f3e7bfc27339b2de2ef82775d6f92cde4 /src/client/QXmppPubSubManager.h
parentbb861994bdf79cb783a07cc79ee18e8711295a91 (diff)
downloadqxmpp-9b21bef379d94876908cbb706c9ba2438779bf54.tar.gz
PubSubManager: Add node configuration requests
Diffstat (limited to 'src/client/QXmppPubSubManager.h')
-rw-r--r--src/client/QXmppPubSubManager.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/client/QXmppPubSubManager.h b/src/client/QXmppPubSubManager.h
index 26ff7aaf..f3798a3f 100644
--- a/src/client/QXmppPubSubManager.h
+++ b/src/client/QXmppPubSubManager.h
@@ -62,6 +62,7 @@ public:
using SubscriptionsResult = std::variant<QVector<QXmppPubSubSubscription>, QXmppStanza::Error>;
using AffiliationsResult = std::variant<QVector<QXmppPubSubAffiliation>, QXmppStanza::Error>;
using OptionsResult = std::variant<QXmppPubSubSubscribeOptions, QXmppStanza::Error>;
+ using NodeConfigResult = std::variant<QXmppPubSubNodeConfig, QXmppStanza::Error>;
QXmppPubSubManager();
~QXmppPubSubManager();
@@ -96,6 +97,9 @@ public:
QFuture<OptionsResult> requestSubscribeOptions(const QString &service, const QString &nodeName, const QString &subscriberJid);
QFuture<Result> setSubscribeOptions(const QString &service, const QString &nodeName, const QXmppPubSubSubscribeOptions &options);
QFuture<Result> setSubscribeOptions(const QString &service, const QString &nodeName, const QXmppPubSubSubscribeOptions &options, const QString &subscriberJid);
+ QFuture<NodeConfigResult> requestNodeConfiguration(const QString &service, const QString &nodeName);
+ QFuture<Result> configureNode(const QString &service, const QString &nodeName, const QXmppPubSubNodeConfig &config);
+ QFuture<Result> cancelNodeConfiguration(const QString &service, const QString &nodeName);
// PEP-specific (the PubSub service is the current account)
inline QFuture<Result> createPepNode(const QString &nodeName) { return createNode(client()->configuration().jidBare(), nodeName); }
@@ -110,6 +114,9 @@ public:
QFuture<PublishItemsResult> publishPepItems(const QString &nodeName, const QVector<T> &items);
inline QFuture<Result> retractPepItem(const QString &nodeName, const QString &itemId) { return retractItem(client()->configuration().jidBare(), nodeName, itemId); }
inline QFuture<Result> purgePepItems(const QString &nodeName) { return purgeItems(client()->configuration().jidBare(), nodeName); }
+ inline QFuture<NodeConfigResult> requestPepNodeConfiguration(const QString &nodeName) { return requestNodeConfiguration(client()->configuration().jidBare(), nodeName); }
+ inline QFuture<Result> configurePepNode(const QString &nodeName, const QXmppPubSubNodeConfig &config) { return configureNode(client()->configuration().jidBare(), nodeName, config); }
+ inline QFuture<Result> cancelPepNodeConfiguration(const QString &nodeName) { return cancelNodeConfiguration(client()->configuration().jidBare(), nodeName); }
/// \cond
QStringList discoveryFeatures() const override;