summaryrefslogtreecommitdiffstats
path: root/api/logic/trans
diff options
context:
space:
mode:
authorPetr Mrázek <peterix@gmail.com>2016-05-28 19:54:17 +0200
committerPetr Mrázek <peterix@gmail.com>2016-06-05 23:55:39 +0200
commita1abbd9e05c80584d831b1d12c27c5f7d731cece (patch)
tree3324eaf37efa228e07a0e3136952673f0bc3405a /api/logic/trans
parenta750f6e63c783730380c19788deff2acfb3f4836 (diff)
downloadMultiMC-a1abbd9e05c80584d831b1d12c27c5f7d731cece.tar
MultiMC-a1abbd9e05c80584d831b1d12c27c5f7d731cece.tar.gz
MultiMC-a1abbd9e05c80584d831b1d12c27c5f7d731cece.tar.lz
MultiMC-a1abbd9e05c80584d831b1d12c27c5f7d731cece.tar.xz
MultiMC-a1abbd9e05c80584d831b1d12c27c5f7d731cece.zip
NOISSUE refactor *Download into more, smaller pieces
* Download is now Download. * Download uses Sink subclasses to process various events. * Validators can be used to further customize the Sink behaviour.
Diffstat (limited to 'api/logic/trans')
-rw-r--r--api/logic/trans/TranslationDownloader.cpp12
-rw-r--r--api/logic/trans/TranslationDownloader.h8
2 files changed, 10 insertions, 10 deletions
diff --git a/api/logic/trans/TranslationDownloader.cpp b/api/logic/trans/TranslationDownloader.cpp
index ee5c1fd2..61e24c9a 100644
--- a/api/logic/trans/TranslationDownloader.cpp
+++ b/api/logic/trans/TranslationDownloader.cpp
@@ -1,6 +1,6 @@
#include "TranslationDownloader.h"
#include "net/NetJob.h"
-#include "net/CacheDownload.h"
+#include "net/Download.h"
#include "net/URLConstants.h"
#include "Env.h"
#include <QDebug>
@@ -12,7 +12,7 @@ void TranslationDownloader::downloadTranslations()
{
qDebug() << "Downloading Translations Index...";
m_index_job.reset(new NetJob("Translations Index"));
- m_index_task = ByteArrayDownload::make(QUrl("http://files.multimc.org/translations/index"));
+ m_index_task = Net::Download::makeByteArray(QUrl("http://files.multimc.org/translations/index"), &m_data);
m_index_job->addNetAction(m_index_task);
connect(m_index_job.get(), &NetJob::failed, this, &TranslationDownloader::indexFailed);
connect(m_index_job.get(), &NetJob::succeeded, this, &TranslationDownloader::indexRecieved);
@@ -22,17 +22,15 @@ void TranslationDownloader::indexRecieved()
{
qDebug() << "Got translations index!";
m_dl_job.reset(new NetJob("Translations"));
- QList<QByteArray> lines = m_index_task->m_data.split('\n');
+ QList<QByteArray> lines = m_data.split('\n');
+ m_data.clear();
for (const auto line : lines)
{
if (!line.isEmpty())
{
MetaEntryPtr entry = ENV.metacache()->resolveEntry("translations", "mmc_" + line);
entry->setStale(true);
- CacheDownloadPtr dl = CacheDownload::make(
- QUrl(URLConstants::TRANSLATIONS_BASE_URL + line),
- entry);
- m_dl_job->addNetAction(dl);
+ m_dl_job->addNetAction(Net::Download::makeCached(QUrl(URLConstants::TRANSLATIONS_BASE_URL + line), entry));
}
}
connect(m_dl_job.get(), &NetJob::succeeded, this, &TranslationDownloader::dlGood);
diff --git a/api/logic/trans/TranslationDownloader.h b/api/logic/trans/TranslationDownloader.h
index e7893805..ad3a648d 100644
--- a/api/logic/trans/TranslationDownloader.h
+++ b/api/logic/trans/TranslationDownloader.h
@@ -6,8 +6,9 @@
#include <QObject>
#include <net/NetJob.h>
#include "multimc_logic_export.h"
-
-class ByteArrayDownload;
+namespace Net{
+class Download;
+}
class NetJob;
class MULTIMC_LOGIC_EXPORT TranslationDownloader : public QObject
@@ -26,7 +27,8 @@ private slots:
void dlGood();
private:
- std::shared_ptr<ByteArrayDownload> m_index_task;
+ std::shared_ptr<Net::Download> m_index_task;
NetJobPtr m_dl_job;
NetJobPtr m_index_job;
+ QByteArray m_data;
};