1
mirror of https://github.com/CarmJos/EasyConfiguration.git synced 2026-06-04 10:38:19 +08:00

feaT(unit): Add unit meta

This commit is contained in:
2025-02-17 01:40:41 +08:00
parent 9847399e56
commit bf6ea97b99
2 changed files with 12 additions and 0 deletions
@@ -3,6 +3,7 @@ package cc.carm.lib.configuration.source.loader;
import cc.carm.lib.configuration.Configuration;
import cc.carm.lib.configuration.source.ConfigurationHolder;
import cc.carm.lib.configuration.source.meta.ConfigurationMetadata;
import cc.carm.lib.configuration.source.meta.StandardMeta;
import cc.carm.lib.configuration.source.option.StandardOptions;
import cc.carm.lib.configuration.value.ConfigValue;
import org.jetbrains.annotations.NotNull;
@@ -168,6 +169,7 @@ public class ConfigurationInitializer {
String path = getFieldPath(holder, parent, field);
if (path == null) return;
value.initialize(holder, path);
holder.metadata(path).set(StandardMeta.UNIT, true); // Mark the minimal config value unit.
try {
this.fieldInitializer.whenInitialize(holder, path, field);
} catch (Exception e) {
@@ -0,0 +1,10 @@
package cc.carm.lib.configuration.source.meta;
public interface StandardMeta {
/**
* To mark the {@link cc.carm.lib.configuration.value.ConfigValue} as a minimal unit path.
*/
ConfigurationMetadata<Boolean> UNIT = ConfigurationMetadata.of(false);
}