From 4512bc6fbd4fe37a28453764a83bc10a5bea78dd Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Thu, 28 Dec 2023 12:31:29 -0500 Subject: [PATCH] Generate config options from both 'mixins' and 'client' keys --- .../modernfix/core/config/ModernFixEarlyConfig.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/common/src/main/java/org/embeddedt/modernfix/core/config/ModernFixEarlyConfig.java b/common/src/main/java/org/embeddedt/modernfix/core/config/ModernFixEarlyConfig.java index 302dabd0..6af610ef 100644 --- a/common/src/main/java/org/embeddedt/modernfix/core/config/ModernFixEarlyConfig.java +++ b/common/src/main/java/org/embeddedt/modernfix/core/config/ModernFixEarlyConfig.java @@ -25,6 +25,8 @@ import java.util.*; import java.util.function.BooleanSupplier; import java.util.regex.Pattern; import java.util.stream.Collectors; +import java.util.stream.Stream; +import java.util.stream.StreamSupport; public class ModernFixEarlyConfig { private static final Logger LOGGER = LogManager.getLogger("ModernFixConfig"); @@ -84,7 +86,10 @@ public class ModernFixEarlyConfig { continue; try(Reader reader = new BufferedReader(new InputStreamReader(stream, StandardCharsets.UTF_8))) { JsonObject configObject = (JsonObject)new JsonParser().parse(reader); - JsonArray mixinList = configObject.getAsJsonArray("mixins"); + List mixinList = Stream.of("mixins", "client") + .map(key -> Optional.ofNullable(configObject.getAsJsonArray(key))) + .flatMap(arr -> arr.map(jsonElements -> StreamSupport.stream(jsonElements.spliterator(), false)).orElseGet(Stream::of)) + .collect(Collectors.toList()); String packageName = configObject.get("package").getAsString().replace('.', '/'); for(JsonElement mixin : mixinList) { mixinPaths.add(packageName + "/" + mixin.getAsString().replace('.', '/') + ".class");