Class AbstractConfigBuilder<TYPE,RESULT extends ConfigValue<TYPE>,HOLDER extends ConfigurationHolder<?>,SELF extends AbstractConfigBuilder<TYPE,RESULT,HOLDER,SELF>>
- java.lang.Object
-
- cc.carm.lib.configuration.builder.AbstractConfigBuilder<TYPE,RESULT,HOLDER,SELF>
-
- Direct Known Subclasses:
CommonConfigBuilder
public abstract class AbstractConfigBuilder<TYPE,RESULT extends ConfigValue<TYPE>,HOLDER extends ConfigurationHolder<?>,SELF extends AbstractConfigBuilder<TYPE,RESULT,HOLDER,SELF>> extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description protected @NotNull java.util.function.Supplier<@Nullable TYPE>
defaultValueSupplier
protected HOLDER
holder
protected @NotNull java.util.function.BiConsumer<ConfigurationHolder<?>,java.lang.String>
initializer
protected @Nullable java.lang.String
path
protected java.lang.Class<? super HOLDER>
providerClass
protected ValueType<TYPE>
type
-
Constructor Summary
Constructors Modifier Constructor Description protected
AbstractConfigBuilder(java.lang.Class<? super HOLDER> providerClass, ValueType<TYPE> type)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description SELF
append(@NotNull java.util.function.BiConsumer<ConfigurationHolder<?>,java.lang.String> initializer)
SELF
append(@NotNull java.util.function.Consumer<ConfigurationHolder<?>> initializer)
abstract RESULT
build()
protected @NotNull ValueManifest<TYPE>
buildManifest()
SELF
defaults(@NotNull java.util.function.Supplier<@Nullable TYPE> supplier)
SELF
defaults(TYPE defaultValue)
SELF
holder(HOLDER holder)
SELF
initializer(@NotNull java.util.function.BiConsumer<ConfigurationHolder<?>,java.lang.String> initializer)
<M> SELF
meta(@NotNull ConfigurationMetadata<M> type, M value)
<M> SELF
meta(@NotNull java.util.function.Consumer<@NotNull ConfigurationMetaHolder> metaConsumer)
SELF
path(@Nullable java.lang.String path)
protected abstract SELF
self()
@NotNull ValueType<TYPE>
type()
-
-
-
Field Detail
-
providerClass
protected final java.lang.Class<? super HOLDER extends ConfigurationHolder<?>> providerClass
-
holder
@Nullable protected HOLDER extends ConfigurationHolder<?> holder
-
path
@Nullable protected @Nullable java.lang.String path
-
defaultValueSupplier
@NotNull protected @NotNull java.util.function.Supplier<@Nullable TYPE> defaultValueSupplier
-
initializer
@NotNull protected @NotNull java.util.function.BiConsumer<ConfigurationHolder<?>,java.lang.String> initializer
-
-
Method Detail
-
self
@NotNull protected abstract SELF self()
-
build
@NotNull public abstract RESULT build()
-
path
@NotNull public SELF path(@Nullable @Nullable java.lang.String path)
-
initializer
@NotNull public SELF initializer(@NotNull @NotNull java.util.function.BiConsumer<ConfigurationHolder<?>,java.lang.String> initializer)
-
append
@NotNull public SELF append(@NotNull @NotNull java.util.function.BiConsumer<ConfigurationHolder<?>,java.lang.String> initializer)
-
append
@NotNull public SELF append(@NotNull @NotNull java.util.function.Consumer<ConfigurationHolder<?>> initializer)
-
defaults
@NotNull public SELF defaults(@NotNull @NotNull java.util.function.Supplier<@Nullable TYPE> supplier)
-
meta
@NotNull public <M> SELF meta(@NotNull @NotNull java.util.function.Consumer<@NotNull ConfigurationMetaHolder> metaConsumer)
-
meta
@NotNull public <M> SELF meta(@NotNull @NotNull ConfigurationMetadata<M> type, @Nullable M value)
-
buildManifest
@NotNull protected @NotNull ValueManifest<TYPE> buildManifest()
-
-