aboutsummaryrefslogtreecommitdiff
path: root/src/base/QXmppStanza.h
diff options
context:
space:
mode:
authorJeremy Lainé <jeremy.laine@m4x.org>2012-07-21 20:47:32 +0200
committerJeremy Lainé <jeremy.laine@m4x.org>2012-07-21 20:47:32 +0200
commit215fe071fb44c172dd6b121a9cb83081ad0bbb0f (patch)
tree222d1d4c4ee4463a0ae5c09c34ca27be3daa05b9 /src/base/QXmppStanza.h
parent39b7067233f0ecbf431e1f75bb34088b7bc026a5 (diff)
downloadqxmpp-215fe071fb44c172dd6b121a9cb83081ad0bbb0f.tar.gz
make QXmppStanza use implicit data sharing
Diffstat (limited to 'src/base/QXmppStanza.h')
-rw-r--r--src/base/QXmppStanza.h13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/base/QXmppStanza.h b/src/base/QXmppStanza.h
index 3fb51daa..10825b36 100644
--- a/src/base/QXmppStanza.h
+++ b/src/base/QXmppStanza.h
@@ -27,6 +27,7 @@
#include <QByteArray>
#include <QString>
+#include <QSharedData>
// forward declarations of QXmlStream* classes will not work on Mac, we need to
// include the whole header.
@@ -36,6 +37,8 @@
#include "QXmppElement.h"
+class QXmppStanzaPrivate;
+
/// \defgroup Stanzas
/// \brief The QXmppStanza class is the base class for all XMPP stanzas.
@@ -118,8 +121,11 @@ public:
};
QXmppStanza(const QString& from = QString(), const QString& to = QString());
+ QXmppStanza(const QXmppStanza &other);
virtual ~QXmppStanza();
+ QXmppStanza& operator=(const QXmppStanza &other);
+
QString to() const;
void setTo(const QString&);
@@ -147,13 +153,8 @@ protected:
/// \endcond
private:
+ QSharedDataPointer<QXmppStanzaPrivate> d;
static uint s_uniqeIdNo;
- QString m_to;
- QString m_from;
- QString m_id;
- QString m_lang;
- QXmppStanza::Error m_error;
- QXmppElementList m_extensions;
};
#endif // QXMPPSTANZA_H