aboutsummaryrefslogtreecommitdiff
path: root/src/base/QXmppDiscoveryIq.h
diff options
context:
space:
mode:
authorLinus Jahn <lnj@kaidan.im>2020-02-06 12:15:14 +0100
committerLNJ <lnj@kaidan.im>2020-02-06 13:08:14 +0100
commita3cafa142ca0b8944ddcd1ed43fb4ac01e7fcb45 (patch)
tree536ecbfb85e8f183cfac002d06cb820765a46afd /src/base/QXmppDiscoveryIq.h
parentfd0e02233f925cff699c08b135887a09bdc16e5c (diff)
downloadqxmpp-a3cafa142ca0b8944ddcd1ed43fb4ac01e7fcb45.tar.gz
Make QXmppDiscoveryIq* use QSharedDataPointers
Diffstat (limited to 'src/base/QXmppDiscoveryIq.h')
-rw-r--r--src/base/QXmppDiscoveryIq.h40
1 files changed, 27 insertions, 13 deletions
diff --git a/src/base/QXmppDiscoveryIq.h b/src/base/QXmppDiscoveryIq.h
index 1fce125c..d4502eb1 100644
--- a/src/base/QXmppDiscoveryIq.h
+++ b/src/base/QXmppDiscoveryIq.h
@@ -27,12 +27,24 @@
#include "QXmppDataForm.h"
#include "QXmppIq.h"
+#include <QSharedDataPointer>
+
+class QXmppDiscoveryIdentityPrivate;
+class QXmppDiscoveryItemPrivate;
+class QXmppDiscoveryIqPrivate;
+
class QXMPP_EXPORT QXmppDiscoveryIq : public QXmppIq
{
public:
class QXMPP_EXPORT Identity
{
public:
+ Identity();
+ Identity(const Identity &other);
+ ~Identity();
+
+ Identity &operator=(const Identity &other);
+
QString category() const;
void setCategory(const QString &category);
@@ -46,15 +58,18 @@ public:
void setType(const QString &type);
private:
- QString m_category;
- QString m_language;
- QString m_name;
- QString m_type;
+ QSharedDataPointer<QXmppDiscoveryIdentityPrivate> d;
};
class QXMPP_EXPORT Item
{
public:
+ Item();
+ Item(const Item &);
+ ~Item();
+
+ Item &operator=(const Item &);
+
QString jid() const;
void setJid(const QString &jid);
@@ -65,11 +80,15 @@ public:
void setNode(const QString &node);
private:
- QString m_jid;
- QString m_name;
- QString m_node;
+ QSharedDataPointer<QXmppDiscoveryItemPrivate> d;
};
+ QXmppDiscoveryIq();
+ QXmppDiscoveryIq(const QXmppDiscoveryIq &);
+ ~QXmppDiscoveryIq();
+
+ QXmppDiscoveryIq &operator=(const QXmppDiscoveryIq &);
+
enum QueryType {
InfoQuery,
ItemsQuery
@@ -104,12 +123,7 @@ protected:
/// \endcond
private:
- QStringList m_features;
- QList<QXmppDiscoveryIq::Identity> m_identities;
- QList<QXmppDiscoveryIq::Item> m_items;
- QXmppDataForm m_form;
- QString m_queryNode;
- enum QueryType m_queryType;
+ QSharedDataPointer<QXmppDiscoveryIqPrivate> d;
};
#endif