| 49 | return "unknown"; |
| 50 | } |
| 51 | MetadataPtr parseJavaMeta(const QJsonObject& in) |
| 52 | { |
| 53 | auto meta = std::make_shared<Metadata>(); |
| 54 | |
| 55 | meta->m_name = Json::ensureString(in, "name", ""); |
| 56 | meta->vendor = Json::ensureString(in, "vendor", ""); |
| 57 | meta->url = Json::ensureString(in, "url", ""); |
| 58 | meta->releaseTime = timeFromS3Time(Json::ensureString(in, "releaseTime", "")); |
| 59 | meta->downloadType = parseDownloadType(Json::ensureString(in, "downloadType", "")); |
| 60 | meta->packageType = Json::ensureString(in, "packageType", ""); |
| 61 | meta->runtimeOS = Json::ensureString(in, "runtimeOS", "unknown"); |
| 62 | |
| 63 | if (in.contains("checksum")) { |
| 64 | auto obj = Json::requireObject(in, "checksum"); |
| 65 | meta->checksumHash = Json::ensureString(obj, "hash", ""); |
| 66 | meta->checksumType = Json::ensureString(obj, "type", ""); |
| 67 | } |
| 68 | |
| 69 | if (in.contains("version")) { |
| 70 | auto obj = Json::requireObject(in, "version"); |
| 71 | auto name = Json::ensureString(obj, "name", ""); |
| 72 | auto major = Json::ensureInteger(obj, "major", 0); |
| 73 | auto minor = Json::ensureInteger(obj, "minor", 0); |
| 74 | auto security = Json::ensureInteger(obj, "security", 0); |
| 75 | auto build = Json::ensureInteger(obj, "build", 0); |
| 76 | meta->version = JavaVersion(major, minor, security, build, name); |
| 77 | } |
| 78 | return meta; |
| 79 | } |
| 80 | |
| 81 | bool Metadata::operator<(const Metadata& rhs) |
| 82 | { |
no test coverage detected