aboutsummaryrefslogtreecommitdiff
path: root/src/base
diff options
context:
space:
mode:
authorMelvin Keskin <melvo@olomono.de>2022-05-09 21:41:44 +0200
committerLinus Jahn <lnj@kaidan.im>2022-06-14 12:01:36 +0200
commit43404e40fd649932cddd65a77aabf16873d44ecc (patch)
tree955bd767eefc8c4c9087483406dca81f454dc1f1 /src/base
parent5200f18b3a65fa49d2b9a9a3f8abc445e663830f (diff)
downloadqxmpp-43404e40fd649932cddd65a77aabf16873d44ecc.tar.gz
Add QXmppOmemoDeviceBundleItem and QXmppOmemoDeviceListItem
Diffstat (limited to 'src/base')
-rw-r--r--src/base/QXmppOmemoData.cpp51
-rw-r--r--src/base/QXmppOmemoItems_p.h44
2 files changed, 95 insertions, 0 deletions
diff --git a/src/base/QXmppOmemoData.cpp b/src/base/QXmppOmemoData.cpp
index 1ae3b89f..33215d67 100644
--- a/src/base/QXmppOmemoData.cpp
+++ b/src/base/QXmppOmemoData.cpp
@@ -10,6 +10,7 @@
#include "QXmppOmemoElement_p.h"
#include "QXmppOmemoEnvelope_p.h"
#include "QXmppOmemoIq_p.h"
+#include "QXmppOmemoItems_p.h"
#include "QXmppUtils.h"
#include <QDomElement>
@@ -683,4 +684,54 @@ bool QXmppOmemoIq::isOmemoIq(const QDomElement &element)
auto child = element.firstChildElement();
return !child.isNull() && QXmppOmemoElement::isOmemoElement(child);
}
+
+QXmppOmemoDeviceBundle QXmppOmemoDeviceBundleItem::deviceBundle() const
+{
+ return m_deviceBundle;
+}
+
+void QXmppOmemoDeviceBundleItem::setDeviceBundle(const QXmppOmemoDeviceBundle &deviceBundle)
+{
+ m_deviceBundle = deviceBundle;
+}
+
+bool QXmppOmemoDeviceBundleItem::isItem(const QDomElement &itemElement)
+{
+ return QXmppPubSubItem::isItem(itemElement, QXmppOmemoDeviceBundle::isOmemoDeviceBundle);
+}
+
+void QXmppOmemoDeviceBundleItem::parsePayload(const QDomElement &payloadElement)
+{
+ m_deviceBundle.parse(payloadElement);
+}
+
+void QXmppOmemoDeviceBundleItem::serializePayload(QXmlStreamWriter *writer) const
+{
+ m_deviceBundle.toXml(writer);
+}
+
+QXmppOmemoDeviceList QXmppOmemoDeviceListItem::deviceList() const
+{
+ return m_deviceList;
+}
+
+void QXmppOmemoDeviceListItem::setDeviceList(const QXmppOmemoDeviceList &deviceList)
+{
+ m_deviceList = deviceList;
+}
+
+bool QXmppOmemoDeviceListItem::isItem(const QDomElement &itemElement)
+{
+ return QXmppPubSubItem::isItem(itemElement, QXmppOmemoDeviceList::isOmemoDeviceList);
+}
+
+void QXmppOmemoDeviceListItem::parsePayload(const QDomElement &payloadElement)
+{
+ m_deviceList.parse(payloadElement);
+}
+
+void QXmppOmemoDeviceListItem::serializePayload(QXmlStreamWriter *writer) const
+{
+ m_deviceList.toXml(writer);
+}
/// \endcond
diff --git a/src/base/QXmppOmemoItems_p.h b/src/base/QXmppOmemoItems_p.h
new file mode 100644
index 00000000..9b816ed8
--- /dev/null
+++ b/src/base/QXmppOmemoItems_p.h
@@ -0,0 +1,44 @@
+// SPDX-FileCopyrightText: 2022 Melvin Keskin <melvo@olomono.de>
+//
+// SPDX-License-Identifier: LGPL-2.1-or-later
+
+#ifndef QXMPPOMEMOITEMS_H
+#define QXMPPOMEMOITEMS_H
+
+#include "QXmppOmemoDeviceBundle_p.h"
+#include "QXmppOmemoDeviceList_p.h"
+#include "QXmppPubSubItem.h"
+
+class QXmppOmemoDeviceBundleItem : public QXmppPubSubItem
+{
+public:
+ QXmppOmemoDeviceBundle deviceBundle() const;
+ void setDeviceBundle(const QXmppOmemoDeviceBundle &deviceBundle);
+
+ static bool isItem(const QDomElement &itemElement);
+
+protected:
+ void parsePayload(const QDomElement &payloadElement) override;
+ void serializePayload(QXmlStreamWriter *writer) const override;
+
+private:
+ QXmppOmemoDeviceBundle m_deviceBundle;
+};
+
+class QXmppOmemoDeviceListItem : public QXmppPubSubItem
+{
+public:
+ QXmppOmemoDeviceList deviceList() const;
+ void setDeviceList(const QXmppOmemoDeviceList &deviceList);
+
+ static bool isItem(const QDomElement &itemElement);
+
+protected:
+ void parsePayload(const QDomElement &payloadElement) override;
+ void serializePayload(QXmlStreamWriter *writer) const override;
+
+private:
+ QXmppOmemoDeviceList m_deviceList;
+};
+
+#endif // QXMPPOMEMOITEMS_H