Package cc.carm.lib.configuration.core
Class ConfigInitializer<T extends ConfigurationProvider<?>>
- java.lang.Object
-
- cc.carm.lib.configuration.core.ConfigInitializer<T>
-
- Type Parameters:
T
-ConfigurationProvider
配置文件的数据来源
public class ConfigInitializer<T extends ConfigurationProvider<?>> extends java.lang.Object
配置文件类初始化方法 用于初始化Configuration
中的每个ConfigValue
对象- Author:
- CarmJos
-
-
Constructor Summary
Constructors Constructor Description ConfigInitializer(T provider)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected static @Nullable java.util.List<java.lang.String>
getClassHeaderComments(@NotNull java.lang.Class<?> clazz, @Nullable HeaderComment fieldAnnotation)
protected static @Nullable java.lang.String
getClassPath(@Nullable java.lang.Class<?> clazz, @Nullable java.lang.String parentPath, @Nullable java.lang.String filedName, @Nullable ConfigPath fieldAnnotation)
protected static @NotNull java.lang.String
getFieldPath(@NotNull java.lang.reflect.Field field, @Nullable java.lang.String parentPath)
static java.lang.String
getPathFromName(java.lang.String name)
得到指定元素的配置名称。void
initialize(@NotNull Configuration config)
初始化指定实例的所有ConfigValue
与内部Configuration
对象。void
initialize(@NotNull Configuration config, boolean saveDefaults)
初始化指定实例的所有ConfigValue
与内部Configuration
对象。void
initialize(@NotNull java.lang.Class<? extends Configuration> clazz, boolean saveDefaults)
初始化指定类以及其子类的所有ConfigValue
对象。void
initialize(@NotNull java.lang.Class<? extends Configuration> clazz, boolean saveDefaults, boolean loadSubClasses)
初始化指定类的所有ConfigValue
对象。protected void
initializeValue(@NotNull ConfigValue<?> value, @NotNull java.lang.String path, @Nullable HeaderComment fieldHeaderComment, @Nullable InlineComment fieldInlineComment, boolean saveDefaults)
protected static java.util.List<java.lang.String>
readHeaderComments(@Nullable HeaderComment annotation)
protected static @Nullable java.lang.String
readInlineComments(@Nullable InlineComment annotation)
-
-
-
Field Detail
-
provider
@NotNull protected final T extends ConfigurationProvider<?> provider
-
-
Constructor Detail
-
ConfigInitializer
public ConfigInitializer(@NotNull T provider)
-
-
Method Detail
-
initialize
public void initialize(@NotNull @NotNull java.lang.Class<? extends Configuration> clazz, boolean saveDefaults)
初始化指定类以及其子类的所有ConfigValue
对象。- Parameters:
clazz
- 配置文件类,须继承于Configuration
。saveDefaults
- 是否写入默认值(默认为 true)。
-
initialize
public void initialize(@NotNull @NotNull java.lang.Class<? extends Configuration> clazz, boolean saveDefaults, boolean loadSubClasses)
初始化指定类的所有ConfigValue
对象。- Parameters:
clazz
- 配置文件类,须继承于Configuration
。saveDefaults
- 是否写入默认值(默认为 true)。loadSubClasses
- 是否加载内部子类(默认为 true)。
-
initialize
public void initialize(@NotNull @NotNull Configuration config)
初始化指定实例的所有ConfigValue
与内部Configuration
对象。- Parameters:
config
- 配置文件实例类,须实现Configuration
。
-
initialize
public void initialize(@NotNull @NotNull Configuration config, boolean saveDefaults)
初始化指定实例的所有ConfigValue
与内部Configuration
对象。- Parameters:
config
- 配置文件实例类,须实现Configuration
。saveDefaults
- 是否写入默认值(默认为 true)。
-
initializeValue
protected void initializeValue(@NotNull @NotNull ConfigValue<?> value, @NotNull @NotNull java.lang.String path, @Nullable @Nullable HeaderComment fieldHeaderComment, @Nullable @Nullable InlineComment fieldInlineComment, boolean saveDefaults)
-
getClassHeaderComments
@Nullable protected static @Nullable java.util.List<java.lang.String> getClassHeaderComments(@NotNull @NotNull java.lang.Class<?> clazz, @Nullable @Nullable HeaderComment fieldAnnotation)
-
readHeaderComments
protected static java.util.List<java.lang.String> readHeaderComments(@Nullable @Nullable HeaderComment annotation)
-
readInlineComments
@Nullable protected static @Nullable java.lang.String readInlineComments(@Nullable @Nullable InlineComment annotation)
-
getClassPath
@Nullable protected static @Nullable java.lang.String getClassPath(@Nullable @Nullable java.lang.Class<?> clazz, @Nullable @Nullable java.lang.String parentPath, @Nullable @Nullable java.lang.String filedName, @Nullable @Nullable ConfigPath fieldAnnotation)
-
getFieldPath
@NotNull protected static @NotNull java.lang.String getFieldPath(@NotNull @NotNull java.lang.reflect.Field field, @Nullable @Nullable java.lang.String parentPath)
-
getPathFromName
public static java.lang.String getPathFromName(java.lang.String name)
得到指定元素的配置名称。 采用 全小写,以“-”链接 的命名规则。- Parameters:
name
- 源名称- Returns:
- 全小写,以“-”链接 的 路径名称
-
-