QXmpp Version: 1.12.0
Loading...
Searching...
No Matches
QXmppOutOfBandUrl.h
1// SPDX-FileCopyrightText: 2022 Jonah BrĂ¼chert <jbb@kaidan.im>
2//
3// SPDX-License-Identifier: LGPL-2.1-or-later
4
5#ifndef QXMPPOUTOFBANDURL_H
6#define QXMPPOUTOFBANDURL_H
7
8#include "QXmppConstants_p.h"
9#include "QXmppGlobal.h"
10#include "QXmppXmlTags_p.h"
11
12#include <optional>
13
14#include <QSharedDataPointer>
15
16class QXmppOutOfBandUrlPrivate;
17class QDomElement;
18class QXmlStreamWriter;
19
20class QXMPP_EXPORT QXmppOutOfBandUrl
21{
22public:
24
25 QXMPP_PRIVATE_DECLARE_RULE_OF_SIX(QXmppOutOfBandUrl)
26
27 const QString &url() const;
28 void setUrl(const QString &url);
29
30 const std::optional<QString> &description() const;
31 void setDescription(const std::optional<QString> &description);
32
34 static constexpr std::tuple XmlTag = { u"x", QXmpp::Private::ns_oob };
35 bool parse(const QDomElement &el);
36 void toXml(QXmlStreamWriter *writer) const;
38
39private:
40 QSharedDataPointer<QXmppOutOfBandUrlPrivate> d;
41};
42
43#endif // QXMPPOUTOFBANDURL_H
Definition QXmppOutOfBandUrl.h:21