Replace shared pointers of MatrixClient with a single instance

This commit is contained in:
Konstantinos Sideris 2018-05-08 18:43:56 +03:00
parent ffb43836e4
commit 4c4ea557b3
31 changed files with 196 additions and 269 deletions

View file

@ -33,7 +33,27 @@
#include "MatrixClient.h"
MatrixClient::MatrixClient(QString server, QObject *parent)
namespace {
MatrixClient *instance_ = nullptr;
}
namespace http {
void
init(QObject *parent)
{
if (!instance_)
instance_ = new MatrixClient(parent);
}
MatrixClient *
client()
{
return instance_;
}
}
MatrixClient::MatrixClient(QObject *parent)
: QNetworkAccessManager(parent)
, clientApiUrl_{"/_matrix/client/r0"}
, mediaApiUrl_{"/_matrix/media/r0"}
@ -55,8 +75,6 @@ MatrixClient::MatrixClient(QString server, QObject *parent)
[](QNetworkReply *reply, const QList<QSslError> &) { reply->ignoreSslErrors(); });
}
setServer(server);
QJsonObject default_filter{
{
"room",