QXmpp  Version: 1.5.2
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 "QXmppGlobal.h"
9 
10 #include <optional>
11 
12 #include <QSharedDataPointer>
13 
14 class QXmppOutOfBandUrlPrivate;
15 class QDomElement;
16 class QXmlStreamWriter;
17 
18 class QXMPP_EXPORT QXmppOutOfBandUrl
19 {
20 public:
22 
23  QXMPP_PRIVATE_DECLARE_RULE_OF_SIX(QXmppOutOfBandUrl)
24 
25  const QString &url() const;
26  void setUrl(const QString &url);
27 
28  const std::optional<QString> &description() const;
29  void setDescription(const std::optional<QString> &description);
30 
32  bool parse(const QDomElement &el);
33  void toXml(QXmlStreamWriter *writer) const;
35 
36 private:
37  QSharedDataPointer<QXmppOutOfBandUrlPrivate> d;
38 };
39 
40 #endif // QXMPPOUTOFBANDURL_H
Definition: QXmppOutOfBandUrl.h:19