summaryrefslogtreecommitdiffstats
path: root/src/network/access/qhstspolicy.h
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2017-03-02 09:04:38 +0100
committerLiang Qi <liang.qi@qt.io>2017-03-02 09:04:38 +0100
commit71264bae08d81bdeceb96133fdb01c370504dfcc (patch)
treed5dadaac8209d5ef1857a4d65197b9ee12b39848 /src/network/access/qhstspolicy.h
parent5e785c0b83c9908c665f253c131629ac325a21f5 (diff)
parent6d10f739cd750968d0dd0e9d8fa4b64353a86c6c (diff)
Merge remote-tracking branch 'origin/5.9' into dev
Diffstat (limited to 'src/network/access/qhstspolicy.h')
-rw-r--r--src/network/access/qhstspolicy.h25
1 files changed, 19 insertions, 6 deletions
diff --git a/src/network/access/qhstspolicy.h b/src/network/access/qhstspolicy.h
index 4260ac278c..45fa40dfe8 100644
--- a/src/network/access/qhstspolicy.h
+++ b/src/network/access/qhstspolicy.h
@@ -42,7 +42,7 @@
#include <QtNetwork/qtnetworkglobal.h>
-#include <QtCore/qscopedpointer.h>
+#include <QtCore/qshareddata.h>
#include <QtCore/qurl.h>
QT_BEGIN_NAMESPACE
@@ -55,13 +55,15 @@ class Q_NETWORK_EXPORT QHstsPolicy
public:
QHstsPolicy();
- QHstsPolicy(const QDateTime &expiry, bool includeSubDomains, const QString &host,
- QUrl::ParsingMode mode = QUrl::DecodedMode);
+ explicit QHstsPolicy(const QDateTime &expiry, bool includeSubDomains, const QString &host,
+ QUrl::ParsingMode mode = QUrl::DecodedMode);
QHstsPolicy(const QHstsPolicy &rhs);
QHstsPolicy &operator=(const QHstsPolicy &rhs);
- QHstsPolicy &operator=(QHstsPolicy &&rhs) Q_DECL_NOTHROW;
+ QHstsPolicy &operator=(QHstsPolicy &&other) Q_DECL_NOTHROW { swap(other); return *this; }
~QHstsPolicy();
+ void swap(QHstsPolicy &other) Q_DECL_NOTHROW { qSwap(d, other.d); }
+
void setHost(const QString &host, QUrl::ParsingMode mode = QUrl::DecodedMode);
QString host(QUrl::ComponentFormattingOptions options = QUrl::FullyDecoded) const;
void setExpiry(const QDateTime &expiry);
@@ -69,14 +71,25 @@ public:
void setIncludesSubDomains(bool include);
bool includesSubDomains() const;
- bool operator==(const QHstsPolicy &rhs) const;
bool isExpired() const;
private:
- QScopedPointer<QHstsPolicyPrivate> d;
+ QSharedDataPointer<QHstsPolicyPrivate> d;
+
+ friend Q_NETWORK_EXPORT bool operator==(const QHstsPolicy &lhs, const QHstsPolicy &rhs);
};
+Q_DECLARE_SHARED(QHstsPolicy)
+
+Q_NETWORK_EXPORT bool operator==(const QHstsPolicy &lhs, const QHstsPolicy &rhs);
+
+inline bool operator!=(const QHstsPolicy &lhs, const QHstsPolicy &rhs)
+{
+ return !(lhs == rhs);
+}
+
+
QT_END_NAMESPACE
#endif // QHSTSPOLICY_H