Skip to content

Commit 4512bc6

Browse files
committed
Generate config options from both 'mixins' and 'client' keys
1 parent 4f49ba3 commit 4512bc6

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

common/src/main/java/org/embeddedt/modernfix/core/config/ModernFixEarlyConfig.java

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@
2525
import java.util.function.BooleanSupplier;
2626
import java.util.regex.Pattern;
2727
import java.util.stream.Collectors;
28+
import java.util.stream.Stream;
29+
import java.util.stream.StreamSupport;
2830

2931
public class ModernFixEarlyConfig {
3032
private static final Logger LOGGER = LogManager.getLogger("ModernFixConfig");
@@ -84,7 +86,10 @@ private void scanForAndBuildMixinOptions() {
8486
continue;
8587
try(Reader reader = new BufferedReader(new InputStreamReader(stream, StandardCharsets.UTF_8))) {
8688
JsonObject configObject = (JsonObject)new JsonParser().parse(reader);
87-
JsonArray mixinList = configObject.getAsJsonArray("mixins");
89+
List<JsonElement> mixinList = Stream.of("mixins", "client")
90+
.map(key -> Optional.ofNullable(configObject.getAsJsonArray(key)))
91+
.flatMap(arr -> arr.map(jsonElements -> StreamSupport.stream(jsonElements.spliterator(), false)).orElseGet(Stream::of))
92+
.collect(Collectors.toList());
8893
String packageName = configObject.get("package").getAsString().replace('.', '/');
8994
for(JsonElement mixin : mixinList) {
9095
mixinPaths.add(packageName + "/" + mixin.getAsString().replace('.', '/') + ".class");

0 commit comments

Comments
 (0)