Class ConfigInitializer<T extends ConfigurationProvider<?>>

    • 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,
                               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:
        全小写,以“-”链接 的 路径名称