QXmpp Version: 1.10.4
 
Loading...
Searching...
No Matches
QXmppMixIq.h
1// SPDX-FileCopyrightText: 2019 Linus Jahn <lnj@kaidan.im>
2// SPDX-FileCopyrightText: 2023 Melvin Keskin <melvo@olomono.de>
3//
4// SPDX-License-Identifier: LGPL-2.1-or-later
5
6#ifndef QXMPPMIXIQ_H
7#define QXMPPMIXIQ_H
8
9#include "QXmppIq.h"
10#include "QXmppMixConfigItem.h"
11
12#include <QSharedDataPointer>
13
14class QXmppMixInvitation;
15class QXmppMixIqPrivate;
16
17class QXMPP_EXPORT QXmppMixIq : public QXmppIq
18{
19public:
20 enum Type {
26#if QXMPP_DEPRECATED_SINCE(1, 7)
27 UpdateSubscription [[deprecated("Use QXmppMixManager")]],
28#endif
32 };
33
34 QXmppMixIq();
35 QXmppMixIq(const QXmppMixIq &);
36 QXmppMixIq(QXmppMixIq &&);
37 ~QXmppMixIq() override;
38
39 QXmppMixIq &operator=(const QXmppMixIq &);
40 QXmppMixIq &operator=(QXmppMixIq &&);
41
44
45#if QXMPP_DEPRECATED_SINCE(1, 7)
46 [[deprecated("Use participantId() and channelJid()")]] QString jid() const;
47 [[deprecated("Use setParticipantId() and setChannelJid()")]] void setJid(const QString &);
48#endif
49
50 QString participantId() const;
51 void setParticipantId(const QString &);
52
53#if QXMPP_DEPRECATED_SINCE(1, 7)
54 [[deprecated("Use channelId()")]] QString channelName() const;
55 [[deprecated("Use setChannelId()")]] void setChannelName(const QString &);
56#endif
57
58 QString channelId() const;
59 void setChannelId(const QString &);
60
61 QString channelJid() const;
62 void setChannelJid(const QString &);
63
64#if QXMPP_DEPRECATED_SINCE(1, 7)
65 [[deprecated("Use subscriptions()")]] QStringList nodes() const;
66 [[deprecated("Use setSubscriptions()")]] void setNodes(const QStringList &);
67#endif
68
69 QXmppMixConfigItem::Nodes subscriptions() const;
70 void setSubscriptions(QXmppMixConfigItem::Nodes);
71
72 QString nick() const;
73 void setNick(const QString &);
74
75 std::optional<QXmppMixInvitation> invitation() const;
76 void setInvitation(const std::optional<QXmppMixInvitation> &);
77
79 static bool isMixIq(const QDomElement &);
81
82protected:
84 void parseElementFromChild(const QDomElement &) override;
85 void toXmlElementFromChild(QXmlStreamWriter *) const override;
87
88private:
89 QSharedDataPointer<QXmppMixIqPrivate> d;
90};
91
92Q_DECLARE_METATYPE(QXmppMixIq::Type)
93
94#endif // QXMPPMIXIQ_H
QXmppIq(QXmppIq::Type type=QXmppIq::Get)
Definition QXmppIq.cpp:34
Definition QXmppMixIq.h:18
std::optional< QXmppMixInvitation > invitation() const
Definition QXmppMixIq.cpp:578
void setSubscriptions(QXmppMixConfigItem::Nodes)
Definition QXmppMixIq.cpp:546
void setChannelName(const QString &)
Definition QXmppMixIq.cpp:445
Type
Definition QXmppMixIq.h:20
@ Destroy
Definition QXmppMixIq.h:31
@ Leave
Definition QXmppMixIq.h:25
@ None
Definition QXmppMixIq.h:21
@ ClientLeave
Definition QXmppMixIq.h:23
@ ClientJoin
Definition QXmppMixIq.h:22
@ Join
Definition QXmppMixIq.h:24
@ UpdateSubscription
Definition QXmppMixIq.h:27
@ Create
Definition QXmppMixIq.h:30
@ SetNick
Definition QXmppMixIq.h:29
QXmppMixIq & operator=(QXmppMixIq &&)
Default move-assignment operator.
void setParticipantId(const QString &)
Definition QXmppMixIq.cpp:416
QStringList nodes() const
Definition QXmppMixIq.cpp:509
QXmppMixIq::Type actionType() const
Definition QXmppMixIq.cpp:599
void setNick(const QString &)
Definition QXmppMixIq.cpp:566
QString participantId() const
Definition QXmppMixIq.cpp:404
QXmppMixIq(QXmppMixIq &&)
Default move-constructor.
void setActionType(QXmppMixIq::Type)
Definition QXmppMixIq.cpp:609
void setChannelJid(const QString &)
Definition QXmppMixIq.cpp:497
QString channelJid() const
Definition QXmppMixIq.cpp:485
void setNodes(const QStringList &)
Definition QXmppMixIq.cpp:522
QXmppMixIq & operator=(const QXmppMixIq &)
Default assignment operator.
QString jid() const
Definition QXmppMixIq.cpp:364
void setInvitation(const std::optional< QXmppMixInvitation > &)
Definition QXmppMixIq.cpp:590
QString channelName() const
Definition QXmppMixIq.cpp:430
QString channelId() const
Definition QXmppMixIq.cpp:459
QString nick() const
Definition QXmppMixIq.cpp:556
void setChannelId(const QString &)
Definition QXmppMixIq.cpp:473
QXmppMixIq(const QXmppMixIq &)
Default copy-constructor.
void setJid(const QString &)
Definition QXmppMixIq.cpp:385
QXmppMixConfigItem::Nodes subscriptions() const
Definition QXmppMixIq.cpp:534