QXmpp Version: 1.11.3
Loading...
Searching...
No Matches
QXmppMamIq.h
1// SPDX-FileCopyrightText: 2016 Niels Ole Salscheider <niels_ole@salscheider-online.de>
2//
3// SPDX-License-Identifier: LGPL-2.1-or-later
4
5#ifndef QXMPPMAMIQ_H
6#define QXMPPMAMIQ_H
7
8#include "QXmppDataForm.h"
9#include "QXmppIq.h"
10#include "QXmppResultSet.h"
11
12#include <QSharedDataPointer>
13
14class QXmppMamQueryIqPrivate;
15class QXmppMamResultIqPrivate;
16
17class QXMPP_EXPORT QXmppMamQueryIq : public QXmppIq
18{
19public:
23 ~QXmppMamQueryIq() override;
24
27
28 QXmppDataForm form() const;
29 void setForm(const QXmppDataForm &form);
30 QXmppResultSetQuery resultSetQuery() const;
31 void setResultSetQuery(const QXmppResultSetQuery &resultSetQuery);
32 QString node() const;
33 void setNode(const QString &node);
34 QString queryId() const;
35 void setQueryId(const QString &id);
36
38 static constexpr std::tuple PayloadXmlTag = { u"query", QXmpp::Private::ns_mam };
39 [[deprecated("Use QXmpp::isIqElement()")]]
40 static bool isMamQueryIq(const QDomElement &element);
41
42protected:
43 void parseElementFromChild(const QDomElement &element) override;
44 void toXmlElementFromChild(QXmlStreamWriter *writer) const override;
46
47private:
48 QSharedDataPointer<QXmppMamQueryIqPrivate> d;
49};
50
51class QXMPP_EXPORT QXmppMamResultIq : public QXmppIq
52{
53public:
54 QXmppMamResultIq();
55 QXmppMamResultIq(const QXmppMamResultIq &);
56 QXmppMamResultIq(QXmppMamResultIq &&);
57 ~QXmppMamResultIq() override;
58
59 QXmppMamResultIq &operator=(const QXmppMamResultIq &);
60 QXmppMamResultIq &operator=(QXmppMamResultIq &&);
61
62 QXmppResultSetReply resultSetReply() const;
63 void setResultSetReply(const QXmppResultSetReply &resultSetReply);
64 bool complete() const;
65 void setComplete(bool complete);
66
68 static constexpr std::tuple PayloadXmlTag = { u"fin", QXmpp::Private::ns_mam };
69 [[deprecated("Use QXmpp::isIqElement()")]]
70 static bool isMamResultIq(const QDomElement &element);
71
72protected:
73 void parseElementFromChild(const QDomElement &element) override;
74 void toXmlElementFromChild(QXmlStreamWriter *writer) const override;
76
77private:
78 QSharedDataPointer<QXmppMamResultIqPrivate> d;
79};
80
81#endif
Definition QXmppDataForm.h:28
The QXmppIq class is the base class for all IQs.
Definition QXmppIq.h:23
QXmppIq & operator=(const QXmppIq &other)
Assigns other to this IQ.
Definition QXmppMamIq.h:18
QXmppMamQueryIq(QXmppMamQueryIq &&)
Default move constructor.
QXmppMamQueryIq(const QXmppMamQueryIq &)
Default copy constructor.
QXmppMamQueryIq & operator=(const QXmppMamQueryIq &)
Default assignemnt operator.
QXmppMamQueryIq & operator=(QXmppMamQueryIq &&)
Default move-assignemnt operator.
The QXmppResultSetQuery class represents a set element in a query as defined by XEP-0059: Result Set ...
Definition QXmppResultSet.h:18
The QXmppResultSetReply class represents a set element in a reply as defined by XEP-0059: Result Set ...
Definition QXmppResultSet.h:53