summaryrefslogtreecommitdiffstats
path: root/libraries/logic/updater/GoUpdate.h
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/logic/updater/GoUpdate.h')
-rw-r--r--libraries/logic/updater/GoUpdate.h133
1 files changed, 0 insertions, 133 deletions
diff --git a/libraries/logic/updater/GoUpdate.h b/libraries/logic/updater/GoUpdate.h
deleted file mode 100644
index b8a534de..00000000
--- a/libraries/logic/updater/GoUpdate.h
+++ /dev/null
@@ -1,133 +0,0 @@
-#pragma once
-#include <QByteArray>
-#include <net/NetJob.h>
-
-#include "multimc_logic_export.h"
-
-namespace GoUpdate
-{
-
-/**
- * A temporary object exchanged between updated checker and the actual update task
- */
-struct MULTIMC_LOGIC_EXPORT Status
-{
- bool updateAvailable = false;
-
- int newVersionId = -1;
- QString newRepoUrl;
-
- int currentVersionId = -1;
- QString currentRepoUrl;
-
- // path to the root of the application
- QString rootPath;
-};
-
-/**
- * Struct that describes an entry in a VersionFileEntry's `Sources` list.
- */
-struct MULTIMC_LOGIC_EXPORT FileSource
-{
- FileSource(QString type, QString url, QString compression="")
- {
- this->type = type;
- this->url = url;
- this->compressionType = compression;
- }
-
- bool operator==(const FileSource &f2) const
- {
- return type == f2.type && url == f2.url && compressionType == f2.compressionType;
- }
-
- QString type;
- QString url;
- QString compressionType;
-};
-typedef QList<FileSource> FileSourceList;
-
-/**
- * Structure that describes an entry in a GoUpdate version's `Files` list.
- */
-struct MULTIMC_LOGIC_EXPORT VersionFileEntry
-{
- QString path;
- int mode;
- FileSourceList sources;
- QString md5;
- bool operator==(const VersionFileEntry &v2) const
- {
- return path == v2.path && mode == v2.mode && sources == v2.sources && md5 == v2.md5;
- }
-};
-typedef QList<VersionFileEntry> VersionFileList;
-
-/**
- * Structure that describes an operation to perform when installing updates.
- */
-struct MULTIMC_LOGIC_EXPORT Operation
-{
- static Operation CopyOp(QString fsource, QString fdest, int fmode=0644)
- {
- return Operation{OP_REPLACE, fsource, fdest, fmode};
- }
- static Operation DeleteOp(QString file)
- {
- return Operation{OP_DELETE, file, "", 0644};
- }
-
- // FIXME: for some types, some of the other fields are irrelevant!
- bool operator==(const Operation &u2) const
- {
- return type == u2.type && file == u2.file && dest == u2.dest && mode == u2.mode;
- }
-
- //! Specifies the type of operation that this is.
- enum Type
- {
- OP_REPLACE,
- OP_DELETE,
- } type;
-
- //! The file to operate on.
- QString file;
-
- //! The destination file.
- QString dest;
-
- //! The mode to change the source file to.
- int mode;
-};
-typedef QList<Operation> OperationList;
-
-/**
- * Loads the file list from the given version info JSON object into the given list.
- */
-bool MULTIMC_LOGIC_EXPORT parseVersionInfo(const QByteArray &data, VersionFileList& list, QString &error);
-
-/*!
- * Takes a list of file entries for the current version's files and the new version's files
- * and populates the downloadList and operationList with information about how to download and install the update.
- */
-bool MULTIMC_LOGIC_EXPORT processFileLists
-(
- const VersionFileList &currentVersion,
- const VersionFileList &newVersion,
- const QString &rootPath,
- const QString &tempPath,
- NetJobPtr job,
- OperationList &ops
-);
-
-/*!
- * This fixes destination paths for OSX - removes 'MultiMC.app' prefix
- * The updater runs in MultiMC.app/Contents/MacOs by default
- * The destination paths are such as this: MultiMC.app/blah/blah
- *
- * @return false if the path couldn't be fixed (is invalid)
- */
-bool MULTIMC_LOGIC_EXPORT fixPathForOSX(QString &path);
-
-}
-Q_DECLARE_METATYPE(GoUpdate::Status); \ No newline at end of file