Class ValueManifest<T>

  • Type Parameters:
    T - 配置值类型
    Direct Known Subclasses:
    ConfigValue

    public class ValueManifest<T>
    extends java.lang.Object
    配置值描述清单。用于描述一个配置值的相关基础信息。
    Author:
    CarmJos
    • Field Detail

      • configPath

        @Nullable
        protected @Nullable java.lang.String configPath
      • headerComments

        @Nullable
        protected @Nullable java.util.List<java.lang.String> headerComments
      • inlineComment

        @Nullable
        protected @Nullable java.lang.String inlineComment
      • defaultValue

        @Nullable
        protected T defaultValue
    • Constructor Detail

      • ValueManifest

        public ValueManifest​(@Nullable
                             @Nullable ConfigurationProvider<?> provider,
                             @Nullable
                             @Nullable java.lang.String configPath,
                             @Nullable
                             @Nullable java.util.List<java.lang.String> headerComments,
                             @Nullable
                             @Nullable java.lang.String inlineComment,
                             @Nullable
                             T defaultValue)
        Parameters:
        provider - 配置文件提供者
        configPath - 配置路径
        headerComments - 头部注释内容
        inlineComment - 行内注释内容
        defaultValue - 默认参数值
    • Method Detail

      • of

        public static <V> ValueManifest<V> of​(@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)
      • of

        public static <V> ValueManifest<V> of​(@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
                                              V defaultValue)
      • initialize

        protected void initialize​(@NotNull
                                  @NotNull ConfigurationProvider<?> provider,
                                  @NotNull
                                  @NotNull java.lang.String configPath,
                                  @Nullable
                                  @Nullable java.util.List<java.lang.String> headerComments,
                                  @Nullable
                                  @Nullable java.lang.String inlineComment)
        此方法提供给 ConfigInitializer,以便对配置值的相关信息进行统一初始化操作。
        Parameters:
        provider - 配置文件提供者
        configPath - 配置路径
        headerComments - 头部注释内容
        inlineComment - 行内注释内容
      • getDefaultValue

        @Nullable
        public T getDefaultValue()
      • setDefaultValue

        public void setDefaultValue​(@Nullable
                                    T defaultValue)
      • getConfigPath

        @NotNull
        public @NotNull java.lang.String getConfigPath()
      • getValue

        protected java.lang.Object getValue()
      • setValue

        protected void setValue​(@Nullable
                                @Nullable java.lang.Object value)
      • getInlineComment

        @Nullable
        public @Nullable java.lang.String getInlineComment()
      • getHeaderComments

        @Nullable
        public @Unmodifiable @Nullable java.util.List<java.lang.String> getHeaderComments()