diff options
author | Petr Mrázek <peterix@gmail.com> | 2013-10-26 19:55:48 +0200 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2013-10-26 19:55:48 +0200 |
commit | 923347729557eed76e4f7e9f6f5f1a79216de0a4 (patch) | |
tree | a54a29be846e76b2b57fed03e74eb6fa5ddcf978 /logic/net/DownloadJob.h | |
parent | c467ebf1327d6266fc51443edfac6f0b536b6602 (diff) | |
download | MultiMC-923347729557eed76e4f7e9f6f5f1a79216de0a4.tar MultiMC-923347729557eed76e4f7e9f6f5f1a79216de0a4.tar.gz MultiMC-923347729557eed76e4f7e9f6f5f1a79216de0a4.tar.lz MultiMC-923347729557eed76e4f7e9f6f5f1a79216de0a4.tar.xz MultiMC-923347729557eed76e4f7e9f6f5f1a79216de0a4.zip |
S3 bucket listing support and network code refactors.
* Adds support for listing all objects in an S3 bucket.
* Renames a bunch of network related classes (Download->Action)
* Net actions now have static constructors
Diffstat (limited to 'logic/net/DownloadJob.h')
-rw-r--r-- | logic/net/DownloadJob.h | 86 |
1 files changed, 0 insertions, 86 deletions
diff --git a/logic/net/DownloadJob.h b/logic/net/DownloadJob.h deleted file mode 100644 index cc2a1d59..00000000 --- a/logic/net/DownloadJob.h +++ /dev/null @@ -1,86 +0,0 @@ -#pragma once -#include <QtNetwork> -#include <QLabel> -#include "Download.h" -#include "ByteArrayDownload.h" -#include "FileDownload.h" -#include "CacheDownload.h" -#include "HttpMetaCache.h" -#include "ForgeXzDownload.h" -#include "logic/tasks/ProgressProvider.h" - -class DownloadJob; -typedef std::shared_ptr<DownloadJob> DownloadJobPtr; - -/** - * A single file for the downloader/cache to process. - */ -class DownloadJob : public ProgressProvider -{ - Q_OBJECT -public: - explicit DownloadJob(QString job_name) - :ProgressProvider(), m_job_name(job_name){}; - - ByteArrayDownloadPtr addByteArrayDownload(QUrl url); - FileDownloadPtr addFileDownload(QUrl url, QString rel_target_path); - CacheDownloadPtr addCacheDownload(QUrl url, MetaEntryPtr entry); - ForgeXzDownloadPtr addForgeXzDownload(QUrl url, MetaEntryPtr entry); - - DownloadPtr operator[](int index) - { - return downloads[index]; - }; - DownloadPtr first() - { - if(downloads.size()) - return downloads[0]; - return DownloadPtr(); - } - int size() const - { - return downloads.size(); - } - virtual void getProgress(qint64& current, qint64& total) - { - current = current_progress; - total = total_progress; - }; - virtual QString getStatus() const - { - return m_job_name; - }; - virtual bool isRunning() const - { - return m_running; - }; - QStringList getFailedFiles(); -signals: - void started(); - void progress(qint64 current, qint64 total); - void filesProgress(int, int, int); - void succeeded(); - void failed(); -public slots: - virtual void start(); -private slots: - void partProgress(int index, qint64 bytesReceived, qint64 bytesTotal); - void partSucceeded(int index); - void partFailed(int index); -private: - struct part_info - { - qint64 current_progress = 0; - qint64 total_progress = 1; - int failures = 0; - }; - QString m_job_name; - QList<DownloadPtr> downloads; - QList<part_info> parts_progress; - qint64 current_progress = 0; - qint64 total_progress = 0; - int num_succeeded = 0; - int num_failed = 0; - bool m_running = false; -}; - |