Skip to content

Commit 3ad8405

Browse files
committed
Bump HashUtils
1 parent 0499e67 commit 3ad8405

File tree

6 files changed

+20
-15
lines changed

6 files changed

+20
-15
lines changed

settings.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,10 @@ dependencyResolutionManagement {
2121
library 'jtar', 'org.kamranzafar:jtar:2.3'
2222

2323
library 'utils-download', 'net.minecraftforge', 'download-utils' version '0.4.0'
24-
library 'utils-hash', 'net.minecraftforge', 'hash-utils' version '0.1.9'
24+
library 'utils-hash', 'net.minecraftforge', 'hash-utils' version '0.2.2'
2525
library 'utils-os', 'net.minecraftforge', 'os-utils' version '0.1.0'
2626
bundle 'utils', ['utils-download', 'utils-hash', 'utils-os']
2727
}
2828
}
2929

30-
rootProject.name = 'java-provisioner'
30+
rootProject.name = 'java-provisioner'

src/main/java/net/minecraftforge/java_provisioner/Disco.java

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@
2222
import java.util.ArrayList;
2323
import java.util.Arrays;
2424
import java.util.Collections;
25-
import java.util.EnumMap;
2625
import java.util.EnumSet;
26+
import java.util.IdentityHashMap;
2727
import java.util.Iterator;
2828
import java.util.List;
2929
import java.util.Locale;
@@ -286,15 +286,15 @@ public List<Package> getPackages(int version, OS os, Distro distro, Arch arch) {
286286
}
287287

288288
public @Nullable File download(Package pkg) {
289-
Map<HashFunction, String> checksums = new EnumMap<>(HashFunction.class);
289+
Map<HashFunction, String> checksums = new IdentityHashMap<>();
290290
String download = pkg.links.pkg_download_redirect;
291291

292292
//debug("Downloading " + pkg.filename);
293293
try {
294294
PackageInfo info = getInfo(pkg);
295295

296296
if (info.checksum != null && info.checksum_type != null) {
297-
HashFunction func = HashFunction.find(info.checksum_type);
297+
HashFunction func = HashFunction.byName(info.checksum_type);
298298
if (func != null)
299299
checksums.put(func, info.checksum);
300300
else
@@ -304,7 +304,7 @@ public List<Package> getPackages(int version, OS os, Distro distro, Arch arch) {
304304
String raw = DownloadUtils.downloadString(info.checksum_uri);
305305

306306
String checksum = raw.split(" ")[0];
307-
HashFunction func = HashFunction.findByHash(checksum);
307+
HashFunction func = findByHash(checksum);
308308
if (func != null)
309309
checksums.put(func, checksum);
310310
else
@@ -349,15 +349,15 @@ public List<Package> getPackages(int version, OS os, Distro distro, Arch arch) {
349349
String actual = func.hash(archive);
350350
String expected = entry.getValue();
351351
if (expected.equals(actual)) {
352-
debug(" " + func.name() + " Validated");
352+
debug(" " + func.extension() + " Validated");
353353
} else {
354-
debug(" " + func.name() + " Invalid");
354+
debug(" " + func.extension() + " Invalid");
355355
debug(" Expected: " + expected);
356356
debug(" Actual: " + actual);
357357
return null;
358358
}
359359
} catch (Exception e) {
360-
error("Failed to calculate " + func.name() + " checksum");
360+
error("Failed to calculate " + func.extension() + " checksum");
361361
error(e);
362362
return null;
363363
}
@@ -369,6 +369,15 @@ public List<Package> getPackages(int version, OS os, Distro distro, Arch arch) {
369369
return archive;
370370
}
371371

372+
private HashFunction findByHash(String checksum) {
373+
int len = checksum.length();
374+
if (len == 32) return HashFunction.md5();
375+
if (len == 40) return HashFunction.sha1();
376+
if (len == 64) return HashFunction.sha256();
377+
if (len == 128) return HashFunction.sha512();
378+
return null;
379+
}
380+
372381
private File getExtractedDir(Package pkg) {
373382
String filename = pkg.filename;
374383
Archive format = pkg.archive();

src/main/java/net/minecraftforge/java_provisioner/DiscoLocator.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,6 @@
88
import java.util.ArrayList;
99
import java.util.Collections;
1010
import java.util.List;
11-
import java.util.Objects;
12-
1311
import net.minecraftforge.java_provisioner.api.Distro;
1412
import net.minecraftforge.java_provisioner.api.JavaInstall;
1513
import net.minecraftforge.java_provisioner.api.JavaProvisioner;

src/main/java/net/minecraftforge/java_provisioner/GradleLocator.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
import java.io.IOException;
99
import java.util.ArrayList;
1010
import java.util.List;
11-
import java.util.Objects;
1211
import java.util.regex.Pattern;
1312

1413
import net.minecraftforge.java_provisioner.api.JavaInstall;

src/main/java/net/minecraftforge/java_provisioner/JavaVersion.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@
55
package net.minecraftforge.java_provisioner;
66

77
import org.jetbrains.annotations.Nullable;
8-
import org.jetbrains.annotations.UnknownNullability;
9-
108
import java.util.ArrayList;
119
import java.util.List;
1210

@@ -191,4 +189,4 @@ public String toString() {
191189
public int hashCode() {
192190
return this.str.hashCode();
193191
}
194-
}
192+
}

src/main/java/net/minecraftforge/java_provisioner/api/JavaProvisionerException.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
import java.util.Collections;
88
import java.util.List;
99

10+
@SuppressWarnings("serial")
1011
public class JavaProvisionerException extends Exception {
1112
private final List<String> logOutput;
1213

0 commit comments

Comments
 (0)