1
mirror of https://github.com/CarmJos/EasyConfiguration.git synced 2026-06-05 11:54:13 +08:00

[1.1.0] 实现 ConfigurationSerializable 相关数据的加载、获取与写入。

This commit is contained in:
2022-04-18 05:19:06 +08:00
parent a13ea7569c
commit 0bda97d82a
43 changed files with 575 additions and 110 deletions
@@ -8,7 +8,7 @@ import cc.carm.lib.configuration.core.value.type.ConfiguredList;
import cc.carm.lib.configuration.core.value.type.ConfiguredMap;
import cc.carm.lib.configuration.core.value.type.ConfiguredSection;
import cc.carm.lib.configuration.core.value.type.ConfiguredValue;
import config.misc.TestUser;
import config.model.TestModel;
import java.util.List;
import java.util.Map;
@@ -18,11 +18,11 @@ import java.util.UUID;
public class ComplexConfiguration extends ConfigurationRoot {
@ConfigComment({"User测试"})
public static final ConfigValue<TestUser> USER = ConfiguredSection
.builder(TestUser.class)
.defaults(new TestUser("Carm", UUID.randomUUID()))
.parseValue((section, defaultValue) -> TestUser.deserialize(section))
.serializeValue(TestUser::serialize).build();
public static final ConfigValue<TestModel> USER = ConfiguredSection
.builder(TestModel.class)
.defaults(new TestModel("Carm", UUID.randomUUID()))
.parseValue((section, defaultValue) -> TestModel.deserialize(section))
.serializeValue(TestModel::serialize).build();
@ConfigComment({"[ID-UUID] 对照表", "", "用于测试Map类型的解析与序列化保存"})
public static final ConfigValue<Map<Integer, UUID>> USERS = ConfiguredMap
@@ -0,0 +1,14 @@
package config.source;
import cc.carm.lib.configuration.core.ConfigurationRoot;
import cc.carm.lib.configuration.core.annotation.ConfigPath;
import cc.carm.lib.configuration.core.value.ConfigValue;
import cc.carm.lib.configuration.yaml.value.ConfiguredSerializable;
import config.model.TestModel;
@ConfigPath("ImplConfiguration")
public class ImplConfiguration extends ConfigurationRoot {
public static final ConfigValue<TestModel> TEST = ConfiguredSerializable.of(TestModel.class);
}