diff options
author | Petr Mrázek <peterix@gmail.com> | 2017-03-19 02:13:49 +0100 |
---|---|---|
committer | Petr Mrázek <peterix@gmail.com> | 2017-04-07 00:20:02 +0200 |
commit | 2660418d58efb33cd3a0ab8ed9d48c359c076905 (patch) | |
tree | 0f947fea5c1dc59a2db83bab85e3fecbc19e4c5c /api/logic/meta/Version.cpp | |
parent | e46aba9da584338db8d8a1a8a487bdcc6cf84343 (diff) | |
download | MultiMC-2660418d58efb33cd3a0ab8ed9d48c359c076905.tar MultiMC-2660418d58efb33cd3a0ab8ed9d48c359c076905.tar.gz MultiMC-2660418d58efb33cd3a0ab8ed9d48c359c076905.tar.lz MultiMC-2660418d58efb33cd3a0ab8ed9d48c359c076905.tar.xz MultiMC-2660418d58efb33cd3a0ab8ed9d48c359c076905.zip |
NOISSUE hack it together enough to get launching back
Meta index will now always return valid objects.
They just might never load if they don't exist on the server.
Diffstat (limited to 'api/logic/meta/Version.cpp')
-rw-r--r-- | api/logic/meta/Version.cpp | 35 |
1 files changed, 21 insertions, 14 deletions
diff --git a/api/logic/meta/Version.cpp b/api/logic/meta/Version.cpp index f8c865e7..2790b2f3 100644 --- a/api/logic/meta/Version.cpp +++ b/api/logic/meta/Version.cpp @@ -18,38 +18,45 @@ #include <QDateTime> #include "JsonFormat.h" +#include "minecraft/MinecraftProfile.h" -namespace Meta +void Meta::Version::applyTo(MinecraftProfile* profile) { -Version::Version(const QString &uid, const QString &version) + if(m_data) + { + m_data->applyTo(profile); + } +} + +Meta::Version::Version(const QString &uid, const QString &version) : BaseVersion(), m_uid(uid), m_version(version) { } -QString Version::descriptor() +QString Meta::Version::descriptor() { return m_version; } -QString Version::name() +QString Meta::Version::name() { return m_version; } -QString Version::typeString() const +QString Meta::Version::typeString() const { return m_type; } -QDateTime Version::time() const +QDateTime Meta::Version::time() const { return QDateTime::fromMSecsSinceEpoch(m_time * 1000, Qt::UTC); } -void Version::parse(const QJsonObject& obj) +void Meta::Version::parse(const QJsonObject& obj) { parseVersion(obj, this); } -void Version::merge(const std::shared_ptr<BaseEntity> &other) +void Meta::Version::merge(const std::shared_ptr<BaseEntity> &other) { VersionPtr version = std::dynamic_pointer_cast<Version>(other); if (m_type != version->m_type) @@ -68,28 +75,28 @@ void Version::merge(const std::shared_ptr<BaseEntity> &other) setData(version->m_data); } -QString Version::localFilename() const +QString Meta::Version::localFilename() const { return m_uid + '/' + m_version + ".json"; } -void Version::setType(const QString &type) +void Meta::Version::setType(const QString &type) { m_type = type; emit typeChanged(); } -void Version::setTime(const qint64 time) +void Meta::Version::setTime(const qint64 time) { m_time = time; emit timeChanged(); } -void Version::setRequires(const QVector<Reference> &requires) +void Meta::Version::setRequires(const QVector<Reference> &requires) { m_requires = requires; emit requiresChanged(); } -void Version::setData(const VersionFilePtr &data) +void Meta::Version::setData(const VersionFilePtr &data) { m_data = data; } -} + |