Skip to content

Commit f210471

Browse files
committed
refactor: extract server zip via static helper in caller
1 parent fdd04c6 commit f210471

2 files changed

Lines changed: 16 additions & 16 deletions

File tree

src/main/java/org/mcphackers/mcp/tasks/TaskSetup.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,9 @@ protected Stage[] setStages() {
8787
for (Path nativeArchive : DownloadData.getNatives(MCPPaths.get(mcp, LIB), versionJson)) {
8888
FileUtil.extract(nativeArchive, natives);
8989
}
90+
if (mcp.getOptions().getSide().includesServer()) {
91+
DownloadData.extractServerZip(versionJson, MCPPaths.get(mcp, JAR_ORIGINAL, Side.SERVER));
92+
}
9093
try (BufferedWriter writer = Files.newBufferedWriter(MCPPaths.get(mcp, VERSION))) {
9194
versionJsonObj.write(writer, 1, 0);
9295
}

src/main/java/org/mcphackers/mcp/tools/versions/DownloadData.java

Lines changed: 13 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,6 @@ public class DownloadData {
2828
public int totalSize;
2929
protected List<Download> downloadQueue = new ArrayList<>();
3030
protected AssetIndex assets;
31-
private Path serverZip;
32-
private Path serverJar;
3331

3432
public DownloadData(MCP mcp, Version version) {
3533
this(mcp, MCPPaths.get(mcp, MCPPaths.LIB), MCPPaths.get(mcp, MCPPaths.JARS), MCPPaths.get(mcp, MCPPaths.JAR_ORIGINAL, Side.CLIENT), MCPPaths.get(mcp, MCPPaths.JAR_ORIGINAL, Side.SERVER), version);
@@ -45,8 +43,6 @@ public DownloadData(MCP mcp, Path libraries, Path gameDir, Path client, Path ser
4543
Path serverOut = server;
4644
if (serverArtifact.url.endsWith(".zip")) {
4745
serverOut = server.getParent().resolve("minecraft_server.zip");
48-
this.serverZip = serverOut;
49-
this.serverJar = server;
5046
}
5147
queueDownload(serverArtifact, serverOut);
5248
}
@@ -114,6 +110,19 @@ public static List<Path> getNatives(Path libDir, Version version) {
114110
return retList;
115111
}
116112

113+
public static void extractServerZip(Version version, Path serverJar) throws IOException {
114+
Artifact serverArtifact = version.downloads.artifacts.get("server");
115+
if (serverArtifact == null || !serverArtifact.url.endsWith(".zip")) {
116+
return;
117+
}
118+
Path serverZip = serverJar.getParent().resolve("minecraft_server.zip");
119+
FileUtil.extractByExtension(serverZip, serverZip.getParent(), ".jar");
120+
Path extracted = serverZip.getParent().resolve("minecraft-server.jar");
121+
if (Files.exists(extracted)) {
122+
Files.move(extracted, serverJar);
123+
}
124+
}
125+
117126
public void setAssets(AssetIndex assets) {
118127
if (this.assets != null) {
119128
return;
@@ -147,18 +156,6 @@ public void performDownload(DownloadListener listener) throws IOException {
147156
FileUtil.downloadFile(download.downloadURL(), file);
148157
}
149158
}
150-
extractServerZip();
151-
}
152-
153-
private void extractServerZip() throws IOException {
154-
if (serverZip == null || !Files.exists(serverZip)) {
155-
return;
156-
}
157-
FileUtil.extractByExtension(serverZip, serverZip.getParent(), ".jar");
158-
Path extracted = serverZip.getParent().resolve("minecraft-server.jar");
159-
if (Files.exists(extracted)) {
160-
Files.move(extracted, serverJar);
161-
}
162159
}
163160

164161
private static class Download {

0 commit comments

Comments
 (0)