From cce5c00cec8f1d9898477fdcdc4bb3bc7715a55d Mon Sep 17 00:00:00 2001 From: padrewin <97427230+padrewin@users.noreply.github.com> Date: Sun, 29 Dec 2024 21:10:09 +0200 Subject: [PATCH 1/2] Update ColdSettingSerializers.java --- .../config/ColdSettingSerializers.java | 34 +++++++++++++++++-- 1 file changed, 32 insertions(+), 2 deletions(-) diff --git a/src/main/java/dev/padrewin/colddev/config/ColdSettingSerializers.java b/src/main/java/dev/padrewin/colddev/config/ColdSettingSerializers.java index c40a156..5b7c1b3 100644 --- a/src/main/java/dev/padrewin/colddev/config/ColdSettingSerializers.java +++ b/src/main/java/dev/padrewin/colddev/config/ColdSettingSerializers.java @@ -1,9 +1,11 @@ package dev.padrewin.colddev.config; +import java.util.Collections; import java.util.List; import java.util.Objects; import java.util.function.Function; import java.util.stream.Collectors; +import java.util.stream.IntStream; import org.bukkit.Material; public final class ColdSettingSerializers { @@ -78,6 +80,34 @@ public void write(CommentedConfigurationSection config, String key, T value, Str } }; } - //endregion -} \ No newline at end of file + public static ColdSettingSerializer> list(ColdSettingSerializer elementSerializer) { + return new ColdSettingSerializer>() { + @Override + public List read(CommentedConfigurationSection config, String setting) { + List rawList = config.getList(setting); + if (rawList == null) { + return Collections.emptyList(); + } + return rawList.stream() + .map(element -> elementSerializer.read(config, setting + "." + rawList.indexOf(element))) + .filter(Objects::nonNull) + .collect(Collectors.toList()); + } + + @Override + public void write(CommentedConfigurationSection config, String key, List value, String... comments) { + config.addPathedComments(key, comments); // Adaugă comentarii pentru secțiune + + // Dacă lista este null sau goală, scrie-o explicit ca o listă YAML + if (value == null || value.isEmpty()) { + config.set(key, Collections.emptyList()); + } else { + config.set(key, value); + } + } + }; + } + + //endregion +} From 68b4d8bb1ede6fe833544670a2dc394ca5a6381e Mon Sep 17 00:00:00 2001 From: padrewin <97427230+padrewin@users.noreply.github.com> Date: Sun, 29 Dec 2024 21:10:12 +0200 Subject: [PATCH 2/2] Update pom.xml --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index e66db1b..14d5d76 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ dev.padrewin colddev - 1.4.6 + 1.4.7 jar ColdDev