summaryrefslogtreecommitdiffstats
path: root/logic/java/JavaInstall.h
diff options
context:
space:
mode:
authorPetr Mrázek <peterix@gmail.com>2016-01-02 00:35:54 +0100
committerPetr Mrázek <peterix@gmail.com>2016-01-02 00:35:54 +0100
commita008efd24e81441a23ff3e81320ac3522251327e (patch)
treef73886925814cc4cfb397be9f8342f7963d8f8d7 /logic/java/JavaInstall.h
parent5f57df81109d268c79b34aac799fc7694ec5882a (diff)
downloadMultiMC-a008efd24e81441a23ff3e81320ac3522251327e.tar
MultiMC-a008efd24e81441a23ff3e81320ac3522251327e.tar.gz
MultiMC-a008efd24e81441a23ff3e81320ac3522251327e.tar.lz
MultiMC-a008efd24e81441a23ff3e81320ac3522251327e.tar.xz
MultiMC-a008efd24e81441a23ff3e81320ac3522251327e.zip
GH-1365 rework java version parsing and sorting
Diffstat (limited to 'logic/java/JavaInstall.h')
-rw-r--r--logic/java/JavaInstall.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/logic/java/JavaInstall.h b/logic/java/JavaInstall.h
new file mode 100644
index 00000000..882c7386
--- /dev/null
+++ b/logic/java/JavaInstall.h
@@ -0,0 +1,38 @@
+#pragma once
+
+#include "BaseVersion.h"
+#include "JavaVersion.h"
+
+struct JavaInstall : public BaseVersion
+{
+ JavaInstall(){}
+ JavaInstall(QString id, QString arch, QString path)
+ : id(id), arch(arch), path(path)
+ {
+ }
+ virtual QString descriptor()
+ {
+ return id.toString();
+ }
+
+ virtual QString name()
+ {
+ return id.toString();
+ }
+
+ virtual QString typeString() const
+ {
+ return arch;
+ }
+
+ bool operator<(const JavaInstall & rhs);
+ bool operator==(const JavaInstall & rhs);
+ bool operator>(const JavaInstall & rhs);
+
+ JavaVersion id;
+ QString arch;
+ QString path;
+ bool recommended = false;
+};
+
+typedef std::shared_ptr<JavaInstall> JavaInstallPtr;