转化 GameVersion 为 record (#6663)
Co-authored-by: Glavo <[email protected]>
This commit is contained in:
1 parent
71d9daed16
commit
45f49d079b
3 files changed
+12
-87
No files matched your search
@@ -20,9 +20,9 @@ package org.jackhuang.hmcl.download.fabric;
|
||||
import org.jackhuang.hmcl.download.DownloadProvider;
|
||||
import org.jackhuang.hmcl.download.VersionList;
|
||||
import org.jackhuang.hmcl.task.Task;
|
||||
import org.jackhuang.hmcl.util.gson.JsonSerializable;
|
||||
import org.jackhuang.hmcl.util.gson.JsonUtils;
|
||||
import org.jackhuang.hmcl.util.io.NetworkUtils;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Collections;
|
||||
@@ -68,39 +68,14 @@ public final class FabricVersionList extends VersionList<FabricRemoteVersion> {
|
||||
private List<String> getGameVersions(String metaUrl) throws IOException {
|
||||
String json = NetworkUtils.doGet(downloadProvider.injectURLWithCandidates(metaUrl));
|
||||
return JsonUtils.GSON.fromJson(json, listTypeOf(GameVersion.class))
|
||||
.stream().map(GameVersion::getVersion).collect(Collectors.toList());
|
||||
.stream().map(GameVersion::version).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
private static String getLaunchMetaUrl(String gameVersion, String loaderVersion) {
|
||||
return String.format("https://meta.fabricmc.net/v2/versions/loader/%s/%s", gameVersion, loaderVersion);
|
||||
}
|
||||
|
||||
private static class GameVersion {
|
||||
private final String version;
|
||||
private final String maven;
|
||||
private final boolean stable;
|
||||
|
||||
public GameVersion() {
|
||||
this("", null, false);
|
||||
}
|
||||
|
||||
public GameVersion(String version, String maven, boolean stable) {
|
||||
this.version = version;
|
||||
this.maven = maven;
|
||||
this.stable = stable;
|
||||
}
|
||||
|
||||
public String getVersion() {
|
||||
return version;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public String getMaven() {
|
||||
return maven;
|
||||
}
|
||||
|
||||
public boolean isStable() {
|
||||
return stable;
|
||||
}
|
||||
@JsonSerializable
|
||||
private record GameVersion(String version, String maven, boolean stable) {
|
||||
}
|
||||
}
|
||||
+4
-29
@@ -20,9 +20,9 @@ package org.jackhuang.hmcl.download.legacyfabric;
|
||||
import org.jackhuang.hmcl.download.DownloadProvider;
|
||||
import org.jackhuang.hmcl.download.VersionList;
|
||||
import org.jackhuang.hmcl.task.Task;
|
||||
import org.jackhuang.hmcl.util.gson.JsonSerializable;
|
||||
import org.jackhuang.hmcl.util.gson.JsonUtils;
|
||||
import org.jackhuang.hmcl.util.io.NetworkUtils;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Collections;
|
||||
@@ -71,7 +71,7 @@ public final class LegacyFabricVersionList extends VersionList<LegacyFabricRemot
|
||||
private List<String> getGameVersions(String metaUrl) throws IOException {
|
||||
String json = NetworkUtils.doGet(downloadProvider.injectURLWithCandidates(metaUrl));
|
||||
return JsonUtils.GSON.fromJson(json, listTypeOf(GameVersion.class))
|
||||
.stream().map(GameVersion::getVersion).collect(Collectors.toList());
|
||||
.stream().map(GameVersion::version).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
private static String normalizeVersion(String version) {
|
||||
@@ -84,32 +84,7 @@ public final class LegacyFabricVersionList extends VersionList<LegacyFabricRemot
|
||||
return String.format("https://meta.legacyfabric.net/v2/versions/loader/%s/%s", gameVersion, loaderVersion);
|
||||
}
|
||||
|
||||
private static class GameVersion {
|
||||
private final String version;
|
||||
private final String maven;
|
||||
private final boolean stable;
|
||||
|
||||
public GameVersion() {
|
||||
this("", null, false);
|
||||
}
|
||||
|
||||
public GameVersion(String version, String maven, boolean stable) {
|
||||
this.version = version;
|
||||
this.maven = maven;
|
||||
this.stable = stable;
|
||||
}
|
||||
|
||||
public String getVersion() {
|
||||
return version;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public String getMaven() {
|
||||
return maven;
|
||||
}
|
||||
|
||||
public boolean isStable() {
|
||||
return stable;
|
||||
}
|
||||
@JsonSerializable
|
||||
private record GameVersion(String version, String maven, boolean stable) {
|
||||
}
|
||||
}
|
||||
@@ -20,9 +20,9 @@ package org.jackhuang.hmcl.download.quilt;
|
||||
import org.jackhuang.hmcl.download.DownloadProvider;
|
||||
import org.jackhuang.hmcl.download.VersionList;
|
||||
import org.jackhuang.hmcl.task.Task;
|
||||
import org.jackhuang.hmcl.util.gson.JsonSerializable;
|
||||
import org.jackhuang.hmcl.util.gson.JsonUtils;
|
||||
import org.jackhuang.hmcl.util.io.NetworkUtils;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.Collections;
|
||||
@@ -68,39 +68,14 @@ public final class QuiltVersionList extends VersionList<QuiltRemoteVersion> {
|
||||
private List<String> getGameVersions(String metaUrl) throws IOException {
|
||||
String json = NetworkUtils.doGet(downloadProvider.injectURLWithCandidates(metaUrl));
|
||||
return JsonUtils.GSON.fromJson(json, listTypeOf(GameVersion.class))
|
||||
.stream().map(GameVersion::getVersion).collect(Collectors.toList());
|
||||
.stream().map(GameVersion::version).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
private static String getLaunchMetaUrl(String gameVersion, String loaderVersion) {
|
||||
return String.format("https://meta.quiltmc.org/v3/versions/loader/%s/%s", gameVersion, loaderVersion);
|
||||
}
|
||||
|
||||
private static class GameVersion {
|
||||
private final String version;
|
||||
private final String maven;
|
||||
private final boolean stable;
|
||||
|
||||
public GameVersion() {
|
||||
this("", null, false);
|
||||
}
|
||||
|
||||
public GameVersion(String version, String maven, boolean stable) {
|
||||
this.version = version;
|
||||
this.maven = maven;
|
||||
this.stable = stable;
|
||||
}
|
||||
|
||||
public String getVersion() {
|
||||
return version;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public String getMaven() {
|
||||
return maven;
|
||||
}
|
||||
|
||||
public boolean isStable() {
|
||||
return stable;
|
||||
}
|
||||
@JsonSerializable
|
||||
private record GameVersion(String version, String maven, boolean stable) {
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user