aboutsummaryrefslogtreecommitdiff
path: root/src/omemo/QXmppOmemoItems_p.h
blob: abc6a65fcf5a417135e36059410bec7840c94ba0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
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 "QXmppPubSubBaseItem.h"

class QXmppOmemoDeviceBundleItem : public QXmppPubSubBaseItem
{
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 QXmppPubSubBaseItem
{
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