aboutsummaryrefslogtreecommitdiff
path: root/src/base
diff options
context:
space:
mode:
authorLinus Jahn <lnj@kaidan.im>2020-09-07 17:07:09 +0200
committerLinus Jahn <lnj@kaidan.im>2021-08-22 16:09:02 +0200
commit66ee49093aec057c783edf9a39689af7b2bd8488 (patch)
treeb99b99a78e9269f9f985a71cfc7a2de78cd7dfb1 /src/base
parent5cc736dd4004e06f65c3f16f2db322d722c1b564 (diff)
downloadqxmpp-66ee49093aec057c783edf9a39689af7b2bd8488.tar.gz
Add PubSubPublishOptions form
Diffstat (limited to 'src/base')
-rw-r--r--src/base/QXmppPubSubNodeConfig.cpp6
-rw-r--r--src/base/QXmppPubSubNodeConfig.h10
-rw-r--r--src/base/QXmppPubSubPublishOptions.h1
3 files changed, 17 insertions, 0 deletions
diff --git a/src/base/QXmppPubSubNodeConfig.cpp b/src/base/QXmppPubSubNodeConfig.cpp
index 731bdf16..c7010e5b 100644
--- a/src/base/QXmppPubSubNodeConfig.cpp
+++ b/src/base/QXmppPubSubNodeConfig.cpp
@@ -24,6 +24,7 @@
#include "QXmppPubSubNodeConfig.h"
static const auto NODE_CONFIG_FORM_TYPE = QStringLiteral(u"http://jabber.org/protocol/pubsub#node_config");
+static const auto PUBLISH_OPTIONS_FORM_TYPE = QStringLiteral("http://jabber.org/protocol/pubsub#publish-options");
static const auto ACCESS_MODEL = QStringLiteral("pubsub#access_model");
static const auto BODY_XSLT = QStringLiteral("pubsub#body_xslt");
@@ -839,3 +840,8 @@ void QXmppPubSubNodeConfig::serializeForm(QXmppDataForm &form) const
PAYLOAD_TYPE,
d->payloadType);
}
+
+QString QXmppPubSubPublishOptions::formType() const
+{
+ return PUBLISH_OPTIONS_FORM_TYPE;
+}
diff --git a/src/base/QXmppPubSubNodeConfig.h b/src/base/QXmppPubSubNodeConfig.h
index 4b9de9c7..16e26709 100644
--- a/src/base/QXmppPubSubNodeConfig.h
+++ b/src/base/QXmppPubSubNodeConfig.h
@@ -203,6 +203,16 @@ private:
QSharedDataPointer<QXmppPubSubNodeConfigPrivate> d;
};
+class QXMPP_EXPORT QXmppPubSubPublishOptions : public QXmppPubSubNodeConfig
+{
+public:
+ static std::optional<QXmppPubSubPublishOptions> fromDataForm(const QXmppDataForm &form);
+
+protected:
+ QString formType() const override;
+};
+
Q_DECLARE_METATYPE(QXmppPubSubNodeConfig);
+Q_DECLARE_METATYPE(QXmppPubSubPublishOptions);
#endif // QXMPPPUBSUBNODECONFIG_H
diff --git a/src/base/QXmppPubSubPublishOptions.h b/src/base/QXmppPubSubPublishOptions.h
new file mode 100644
index 00000000..e2a074eb
--- /dev/null
+++ b/src/base/QXmppPubSubPublishOptions.h
@@ -0,0 +1 @@
+#include "QXmppPubSubNodeConfig.h"