Class ConfigValue<T>
- java.lang.Object
-
- cc.carm.lib.configuration.core.value.ValueManifest<T>
-
- cc.carm.lib.configuration.core.value.ConfigValue<T>
-
- Direct Known Subclasses:
CachedConfigValue
public abstract class ConfigValue<T> extends ValueManifest<T>
-
-
Field Summary
-
Fields inherited from class cc.carm.lib.configuration.core.value.ValueManifest
configPath, defaultValue, headerComments, inlineComment, provider
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
ConfigValue(@NotNull ValueManifest<T> manifest)
protected
ConfigValue(@Nullable ConfigurationProvider<?> provider, @Nullable java.lang.String configPath, @Nullable java.util.List<java.lang.String> headerComments, @Nullable java.lang.String inlineComments, T defaultValue)
Deprecated.请使用ConfigValue(ValueManifest)
构造器。
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description static @NotNull ConfigBuilder
builder()
abstract T
get()
得到该配置的设定值(即读取到的值)。T
getNotNull()
得到该配置的非空值。@NotNull java.util.Optional<@Nullable T>
getOptional()
T
getOrDefault()
得到该配置的设定值,若不存在,则返回默认值。void
initialize(@NotNull ConfigurationProvider<?> provider, boolean saveDefault, @NotNull java.lang.String configPath, @Nullable java.util.List<java.lang.String> headerComments, @Nullable java.lang.String inlineComments)
boolean
isDefault()
判断加载的配置是否与默认值相同。abstract void
set(T value)
设定该配置的值。void
setDefault()
初始化该配置的默认值。void
setDefault(boolean override)
将该配置的值设置为默认值。-
Methods inherited from class cc.carm.lib.configuration.core.value.ValueManifest
getConfigPath, getConfiguration, getDefaultValue, getHeaderComments, getInlineComment, getProvider, getValue, initialize, of, of, setDefaultValue, setValue
-
-
-
-
Constructor Detail
-
ConfigValue
protected ConfigValue(@NotNull @NotNull ValueManifest<T> manifest)
-
ConfigValue
@Deprecated protected ConfigValue(@Nullable @Nullable ConfigurationProvider<?> provider, @Nullable @Nullable java.lang.String configPath, @Nullable @Nullable java.util.List<java.lang.String> headerComments, @Nullable @Nullable java.lang.String inlineComments, @Nullable T defaultValue)
Deprecated.请使用ConfigValue(ValueManifest)
构造器。- Parameters:
provider
- 配置文件提供者configPath
- 配置路径headerComments
- 头部注释内容inlineComments
- 行内注释内容defaultValue
- 默认参数值
-
-
Method Detail
-
builder
@NotNull public static @NotNull ConfigBuilder builder()
-
initialize
public void initialize(@NotNull @NotNull ConfigurationProvider<?> provider, boolean saveDefault, @NotNull @NotNull java.lang.String configPath, @Nullable @Nullable java.util.List<java.lang.String> headerComments, @Nullable @Nullable java.lang.String inlineComments)
-
get
@Nullable public abstract T get()
得到该配置的设定值(即读取到的值)。
若初始化时未写入默认值,则可以通过getOrDefault()
方法在该设定值为空时获取默认值。- Returns:
- 设定值
-
getOrDefault
@Nullable public T getOrDefault()
得到该配置的设定值,若不存在,则返回默认值。- Returns:
- 设定值或默认值
-
getNotNull
@NotNull public T getNotNull()
得到该配置的非空值。- Returns:
- 非空值
- Throws:
java.lang.NullPointerException
- 对应数据为空时抛出
-
getOptional
@NotNull public @NotNull java.util.Optional<@Nullable T> getOptional()
-
set
public abstract void set(@Nullable T value)
设定该配置的值。
设定后,不会自动保存配置文件;若需要保存,请调用ConfigurationProvider.save()
方法。- Parameters:
value
- 配置的值
-
setDefault
public void setDefault()
初始化该配置的默认值。
设定后,不会自动保存配置文件;若需要保存,请调用ConfigurationProvider.save()
方法。
-
setDefault
public void setDefault(boolean override)
将该配置的值设置为默认值。
设定后,不会自动保存配置文件;若需要保存,请调用ConfigurationProvider.save()
方法。- Parameters:
override
- 是否覆盖已设定的值
-
isDefault
public boolean isDefault()
判断加载的配置是否与默认值相同。- Returns:
- 获取当前值是否为默认值。
-
-