Arguments.addXXX改为链式调用

This commit is contained in:
yushijinhun 2018-06-08 21:08:12 +08:00
parent 13aabde5d9
commit e71c06a0d0
No known key found for this signature in database
GPG Key ID: 5BC167F73EA558E4
3 changed files with 11 additions and 18 deletions

View File

@ -66,11 +66,10 @@ public class AuthlibInjectorAccount extends YggdrasilAccount {
try {
thread.join();
String arg = "-javaagent:" + injectorJarPath.get() + "=" + serverBaseURL;
Arguments arguments = Arguments.addJVMArguments(null, arg);
Arguments arguments = new Arguments().addJVMArguments("-javaagent:" + injectorJarPath.get() + "=" + serverBaseURL);
if (flag.get())
arguments = Arguments.addJVMArguments(arguments, "-Dorg.to2mbn.authlibinjector.config.prefetched=" + new String(Base64.getEncoder().encode(getTask.getResult().getBytes()), UTF_8));
arguments = arguments.addJVMArguments("-Dorg.to2mbn.authlibinjector.config.prefetched=" + new String(Base64.getEncoder().encode(getTask.getResult().getBytes()), UTF_8));
return info.withArguments(arguments);
} catch (Exception e) {

View File

@ -54,28 +54,22 @@ public final class Arguments {
return jvm == null ? Collections.emptyList() : Collections.unmodifiableList(jvm);
}
public static Arguments addGameArguments(Arguments arguments, String... gameArguments) {
return addGameArguments(arguments, Arrays.asList(gameArguments));
public Arguments addGameArguments(String... gameArguments) {
return addGameArguments(Arrays.asList(gameArguments));
}
public static Arguments addGameArguments(Arguments arguments, List<String> gameArguments) {
public Arguments addGameArguments(List<String> gameArguments) {
List<Argument> list = gameArguments.stream().map(StringArgument::new).collect(Collectors.toList());
if (arguments == null)
return new Arguments(list, null);
else
return new Arguments(Lang.merge(arguments.getGame(), list), arguments.getJvm());
return new Arguments(Lang.merge(getGame(), list), getJvm());
}
public static Arguments addJVMArguments(Arguments arguments, String... jvmArguments) {
return addJVMArguments(arguments, Arrays.asList(jvmArguments));
public Arguments addJVMArguments(String... jvmArguments) {
return addJVMArguments(Arrays.asList(jvmArguments));
}
public static Arguments addJVMArguments(Arguments arguments, List<String> jvmArguments) {
public Arguments addJVMArguments(List<String> jvmArguments) {
List<Argument> list = jvmArguments.stream().map(StringArgument::new).collect(Collectors.toList());
if (arguments == null)
return new Arguments(null, list);
else
return new Arguments(arguments.getGame(), Lang.merge(arguments.getJvm(), list));
return new Arguments(getGame(), Lang.merge(getJvm(), list));
}
public static Arguments merge(Arguments a, Arguments b) {

View File

@ -109,7 +109,7 @@ public final class MultiMCModpackInstallTask extends Task {
version = version
.setLibraries(Lang.merge(version.getLibraries(), patch.getLibraries()))
.setMainClass(patch.getMainClass())
.setArguments(Arguments.addGameArguments(version.getArguments().orElse(null), newArguments));
.setArguments(version.getArguments().orElseGet(Arguments::new).addGameArguments(newArguments));
}
}
}