aboutsummaryrefslogtreecommitdiff
path: root/connectiondata.cpp
diff options
context:
space:
mode:
authorKitsune Ral <Kitsune-Ral@users.sf.net>2017-12-31 08:53:32 +0900
committerKitsune Ral <Kitsune-Ral@users.sf.net>2017-12-31 08:53:32 +0900
commit0b5f0deb773f850d1b905fafc656f67f5b63de24 (patch)
treeb5e0ad5a4558a86d9c95a5d14cc3595e0fa2b5d8 /connectiondata.cpp
parentcbfe29b3435fbe47fee268facbe6a82000fce0ad (diff)
parent2c440249052b0d518fccd953a7dc657f9eed7ab7 (diff)
downloadlibquotient-0b5f0deb773f850d1b905fafc656f67f5b63de24.tar.gz
libquotient-0b5f0deb773f850d1b905fafc656f67f5b63de24.zip
Merge branch 'master' into kitsune-gtad
Diffstat (limited to 'connectiondata.cpp')
-rw-r--r--connectiondata.cpp32
1 files changed, 7 insertions, 25 deletions
diff --git a/connectiondata.cpp b/connectiondata.cpp
index 70791952..4e9bc77e 100644
--- a/connectiondata.cpp
+++ b/connectiondata.cpp
@@ -18,26 +18,15 @@
#include "connectiondata.h"
+#include "networkaccessmanager.h"
#include "logging.h"
-#include <QtNetwork/QNetworkAccessManager>
-
using namespace QMatrixClient;
-QNetworkAccessManager* createNam()
-{
- auto nam = new QNetworkAccessManager();
- // See #109. Once Qt bearer management gets better, this workaround
- // should become unnecessary.
- nam->connect(nam, &QNetworkAccessManager::networkAccessibleChanged,
- nam, [=] {
- nam->setNetworkAccessible(QNetworkAccessManager::Accessible);
- });
- return nam;
-}
-
struct ConnectionData::Private
{
+ explicit Private(const QUrl& url) : baseUrl(url) { }
+
QUrl baseUrl;
QByteArray accessToken;
QString lastEvent;
@@ -48,16 +37,10 @@ struct ConnectionData::Private
};
ConnectionData::ConnectionData(QUrl baseUrl)
- : d(new Private)
-{
- nam(); // Just to ensure NAM is created
- d->baseUrl = baseUrl;
-}
+ : d(std::make_unique<Private>(baseUrl))
+{ }
-ConnectionData::~ConnectionData()
-{
- delete d;
-}
+ConnectionData::~ConnectionData() = default;
QByteArray ConnectionData::accessToken() const
{
@@ -71,8 +54,7 @@ QUrl ConnectionData::baseUrl() const
QNetworkAccessManager* ConnectionData::nam() const
{
- static auto nam = createNam();
- return nam;
+ return NetworkAccessManager::instance();
}
void ConnectionData::setBaseUrl(QUrl baseUrl)