Remove urlFetchJSON usages. They now use NetworkRequest.getJSON
This commit is contained in:
@@ -1,19 +1,31 @@
|
||||
#pragma once
|
||||
|
||||
#include <QJsonDocument>
|
||||
#include <QJsonObject>
|
||||
#include <QNetworkAccessManager>
|
||||
#include <QNetworkReply>
|
||||
#include <QThread>
|
||||
#include <QUrl>
|
||||
|
||||
namespace chatterino {
|
||||
|
||||
namespace messages {
|
||||
|
||||
class LazyLoadedImage;
|
||||
|
||||
} // namespace messages
|
||||
|
||||
namespace util {
|
||||
|
||||
static QJsonObject parseJSONFromReplyxD(QNetworkReply *reply)
|
||||
{
|
||||
if (reply->error() != QNetworkReply::NetworkError::NoError) {
|
||||
return QJsonObject();
|
||||
}
|
||||
|
||||
QByteArray data = reply->readAll();
|
||||
QJsonDocument jsonDoc(QJsonDocument::fromJson(data));
|
||||
|
||||
if (jsonDoc.isNull()) {
|
||||
return QJsonObject();
|
||||
}
|
||||
|
||||
return jsonDoc.object();
|
||||
}
|
||||
|
||||
class NetworkRequest
|
||||
{
|
||||
struct Data {
|
||||
@@ -96,6 +108,15 @@ public:
|
||||
|
||||
emit requester.requestUrl();
|
||||
}
|
||||
|
||||
template <typename FinishedCallback>
|
||||
void getJSON(FinishedCallback onFinished)
|
||||
{
|
||||
this->get([onFinished{std::move(onFinished)}](auto reply) {
|
||||
auto object = parseJSONFromReplyxD(reply);
|
||||
onFinished(object);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
class NetworkWorker : public QObject
|
||||
|
||||
Reference in New Issue
Block a user