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
|
||||
|
||||
@@ -38,17 +38,6 @@ static QJsonObject parseJSONFromReply(QNetworkReply *reply)
|
||||
return jsonDoc.object();
|
||||
}
|
||||
|
||||
static void urlFetchJSON(const QString &url, const QObject *caller,
|
||||
std::function<void(QJsonObject &)> successCallback)
|
||||
{
|
||||
util::NetworkRequest req(url);
|
||||
req.setCaller(caller);
|
||||
req.get([=](QNetworkReply *reply) {
|
||||
auto node = parseJSONFromReply(reply);
|
||||
successCallback(node);
|
||||
});
|
||||
}
|
||||
|
||||
static void urlFetchTimeout(const QString &url, const QObject *caller,
|
||||
std::function<void(QNetworkReply *)> successCallback, int timeoutMs)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user