diff options
| author | Melvin Keskin <melvo@olomono.de> | 2022-05-09 21:41:44 +0200 |
|---|---|---|
| committer | Linus Jahn <lnj@kaidan.im> | 2022-06-14 12:01:36 +0200 |
| commit | 43404e40fd649932cddd65a77aabf16873d44ecc (patch) | |
| tree | 955bd767eefc8c4c9087483406dca81f454dc1f1 /src/base | |
| parent | 5200f18b3a65fa49d2b9a9a3f8abc445e663830f (diff) | |
| download | qxmpp-43404e40fd649932cddd65a77aabf16873d44ecc.tar.gz | |
Add QXmppOmemoDeviceBundleItem and QXmppOmemoDeviceListItem
Diffstat (limited to 'src/base')
| -rw-r--r-- | src/base/QXmppOmemoData.cpp | 51 | ||||
| -rw-r--r-- | src/base/QXmppOmemoItems_p.h | 44 |
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 |
