aboutsummaryrefslogtreecommitdiff
path: root/launcher/modplatform/modrinth/ModrinthPackExportTask.h
diff options
context:
space:
mode:
Diffstat (limited to 'launcher/modplatform/modrinth/ModrinthPackExportTask.h')
-rw-r--r--launcher/modplatform/modrinth/ModrinthPackExportTask.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/launcher/modplatform/modrinth/ModrinthPackExportTask.h b/launcher/modplatform/modrinth/ModrinthPackExportTask.h
index 974c9f0e..4ac00522 100644
--- a/launcher/modplatform/modrinth/ModrinthPackExportTask.h
+++ b/launcher/modplatform/modrinth/ModrinthPackExportTask.h
@@ -20,6 +20,7 @@
#include "BaseInstance.h"
#include "MMCZip.h"
+#include "modplatform/modrinth/ModrinthAPI.h"
#include "tasks/Task.h"
class ModrinthPackExportTask : public Task {
@@ -35,15 +36,26 @@ class ModrinthPackExportTask : public Task {
void executeTask() override;
private:
+ static const QStringList PREFIXES;
+
+ // inputs
const QString name, version, summary;
const InstancePtr instance;
const QString output;
const MMCZip::FilterFunction filter;
+ ModrinthAPI api;
+ QFileInfoList files;
+ QMap<QString, QString> fileHashes;
+
struct ResolvedFile {
QString sha1, sha512, url;
int size;
};
- QByteArray generateIndex(const QMap<QString, ResolvedFile>& urls);
+ void collectFiles();
+ void parseApiResponse(QByteArray* response);
+ void buildZip(const QMap<QString, ResolvedFile>& resolvedFiles);
+
+ QByteArray generateIndex(const QMap<QString, ResolvedFile>& resolvedFiles);
}; \ No newline at end of file