Class AbstractConfigBuilder<TYPE,UNIT,RESULT extends ConfigValue<TYPE,UNIT>,HOLDER extends ConfigurationHolder<?>,SELF extends AbstractConfigBuilder<TYPE,UNIT,RESULT,HOLDER,SELF>>

java.lang.Object
cc.carm.lib.configuration.builder.AbstractConfigBuilder<TYPE,UNIT,RESULT,HOLDER,SELF>
Direct Known Subclasses:
CommonConfigBuilder

public abstract class AbstractConfigBuilder<TYPE,UNIT,RESULT extends ConfigValue<TYPE,UNIT>,HOLDER extends ConfigurationHolder<?>,SELF extends AbstractConfigBuilder<TYPE,UNIT,RESULT,HOLDER,SELF>> extends Object
  • Field Details

  • Constructor Details

  • Method Details

    • type

      @NotNull public @NotNull ValueType<TYPE> type()
    • self

      protected abstract SELF self()
    • build

      @NotNull public abstract RESULT build()
    • holder

      public SELF holder(@Nullable HOLDER holder)
    • path

      public SELF path(@Nullable @Nullable String path)
    • validator

      public SELF validator(@NotNull @NotNull ValueValidator<UNIT> validator)
      Set the ValueValidator for the value.
      Parameters:
      validator - The validator to set.
      Returns:
      this builder
    • validator

      public SELF validator(@NotNull @NotNull DataValidator<? super UNIT> validator)
      Set the DataValidator for the value.
      Parameters:
      validator - The validator to set.
      Returns:
      this builder
    • validate

      public SELF validate(@NotNull @NotNull ValueValidator<? super UNIT> validator)
      Validate the value with the specified condition.
      Parameters:
      validator - The validator to append.
      Returns:
      this builder
    • validate

      public SELF validate(@NotNull @NotNull DataValidator<? super UNIT> validator)
      Validate the value with the specified condition.
      Parameters:
      validator - The validator to append.
      Returns:
      this builder
    • validate

      public SELF validate(@NotNull @NotNull Predicate<? super UNIT> condition, @NotNull @NotNull Exception exception)
      Validate the value with the specified condition.
      Parameters:
      condition - The condition to check, if the condition is false, an exception will be thrown.
      exception - The exception to throw if the condition is false.
      Returns:
      this builder
    • validate

      public SELF validate(@NotNull @NotNull Predicate<? super UNIT> condition, @NotNull @NotNull String msg)
      Validate the value with the specified condition.
      Parameters:
      condition - The condition to check, if the condition is false, an exception will be thrown.
      msg - The message to throw if the condition is false.
      Returns:
      this builder
    • initializer

      public SELF initializer(@NotNull @NotNull BiConsumer<ConfigurationHolder<?>,String> initializer)
    • append

      public SELF append(@NotNull @NotNull BiConsumer<ConfigurationHolder<?>,String> initializer)
    • append

      public SELF append(@NotNull @NotNull Consumer<ConfigurationHolder<?>> initializer)
    • defaults

      public SELF defaults(@Nullable TYPE defaultValue)
    • defaults

      public SELF defaults(@NotNull @NotNull Supplier<@Nullable TYPE> supplier)
    • meta

      public SELF meta(@NotNull @NotNull Consumer<@NotNull ConfigurationMetaHolder> metaConsumer)
    • meta

      public <M> SELF meta(@NotNull @NotNull ConfigurationMetadata<M> type, @Nullable M value)
    • buildManifest

      @NotNull protected @NotNull ValueManifest<TYPE,UNIT> buildManifest()