Interface IValueConfigurator
-
- All Known Subinterfaces:
IAnyValueBuilder
,IBooleanValueBuilder
,IConstValueBuilder<V>
,IFloatValueBuilder
,IIntegerValueBuilder
,ILargeStringValueBuilder
,IListValueBuilder<V>
,IMapValueBuilder<V>
,INullValueBuilder
,IRecordValueBuilder
,IStringValueBuilder
,ISubTypeValueBuilder<T,Builder>
,ITupleValueBuilder
,IUnionValueBuilder<D>
,IValueBuilder<T>
,IVoidValueBuilder
public interface IValueConfigurator
Base interface for builders that can configure a value of a certain type. A value builder is usually derived from aIValueDescriptor
and ensures that the values that is built conforms to the restrictions imposed by the value descriptor.- Since:
- 8.2.0
- Author:
- XIMA MEDIA GmbH
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default IBooleanValueBuilder
asBoolean()
Casts this builder to a boolean value builder.default IConstValueBuilder<?>
asConst()
Casts this builder to a constant value builder.default IFloatValueBuilder
asFloat()
Casts this builder to a floating point value builder.default IIntegerValueBuilder
asInteger()
Casts this builder to an integer value builder.default <S> IListValueBuilder<S>
asList()
Casts this builder to a list value builder.default <V> IMapValueBuilder<V>
asMap()
Casts this builder to a map value builder.default INullValueBuilder
asNull()
Casts this builder to a null value builder.default IRecordValueBuilder
asRecord()
Casts this builder to a record value builder.default IStringValueBuilder
asString()
Casts this builder to a string value builder.default ITupleValueBuilder
asTuple()
Casts this builder to a tuple value builder.default IUnionValueBuilder<?>
asUnion()
Casts this builder to a union value builder.default IVoidValueBuilder
asVoid()
Casts this builder to a void value builder.default boolean
is(Class<? extends IValueBuilder> clazz)
default <TItem,TBuilder extends IValueBuilder<TItem>>
TBuilderunwrap(Class<? extends TBuilder> clazz)
Casts this builder to the given type.IValueConfigurator
value(Object value)
Applies the given value to this builder.default IValueConfigurator
whenBoolean(Consumer<? super IBooleanValueBuilder> action)
Execute the given action with this builder as a boolean value builder, if this builder is of that type.default IValueConfigurator
whenConst(Consumer<? super IConstValueBuilder<?>> action)
Execute the given action with this builder as a const value builder, if this builder is of that type.default IValueConfigurator
whenFloat(Consumer<? super IFloatValueBuilder> action)
Execute the given action with this builder as a float value builder, if this builder is of that type.default IValueConfigurator
whenInteger(Consumer<? super IIntegerValueBuilder> action)
Execute the given action with this builder as a integer value builder, if this builder is of that type.default IValueConfigurator
whenList(Consumer<? super IListValueBuilder<?>> action)
Execute the given action with this builder as a list value builder, if this builder is of that type.default IValueConfigurator
whenMap(Consumer<? super IMapValueBuilder<?>> action)
Execute the given action with this builder as a map value builder, if this builder is of that type.default IValueConfigurator
whenNull(Consumer<? super INullValueBuilder> action)
Execute the given action with this builder as a null value builder, if this builder is of that type.default IValueConfigurator
whenRecord(Consumer<? super IRecordValueBuilder> action)
Execute the given action with this builder as a record value builder, if this builder is of that type.default IValueConfigurator
whenString(Consumer<? super IStringValueBuilder> action)
Execute the given action with this builder as a string value builder, if this builder is of that type.default IValueConfigurator
whenTuple(Consumer<? super ITupleValueBuilder> action)
Execute the given action with this builder as a tuple value builder, if this builder is of that type.default <D> IValueConfigurator
whenUnion(Class<D> discriminatorClass, Consumer<? super IUnionValueBuilder<D>> action)
Execute the given action with this builder as a union value builder, if this builder is of that type.default IValueConfigurator
whenUnion(Consumer<? super IUnionValueBuilder<?>> action)
Execute the given action with this builder as a union value builder, if this builder is of that type.default IValueConfigurator
whenVoid(Consumer<? super IVoidValueBuilder> action)
Execute the given action with this builder as a void value builder, if this builder is of that type.
-
-
-
Method Detail
-
asBoolean
default IBooleanValueBuilder asBoolean()
Casts this builder to a boolean value builder.- Returns:
- getThis() builder cast to a boolean value builder.
- Throws:
ClassCastException
- When this builder cannot be cast to the desired type.
-
asConst
default IConstValueBuilder<?> asConst()
Casts this builder to a constant value builder.- Returns:
- getThis() builder cast to a constant value builder.
- Throws:
ClassCastException
- When this builder cannot be cast to the desired type.
-
asFloat
default IFloatValueBuilder asFloat()
Casts this builder to a floating point value builder.- Returns:
- getThis() builder cast to a floating point value builder.
- Throws:
ClassCastException
- When this builder cannot be cast to the desired type.
-
asInteger
default IIntegerValueBuilder asInteger()
Casts this builder to an integer value builder.- Returns:
- getThis() builder cast to an integer value builder.
- Throws:
ClassCastException
- When this builder cannot be cast to the desired type.
-
asList
default <S> IListValueBuilder<S> asList()
Casts this builder to a list value builder.- Returns:
- getThis() builder cast to a list value builder.
- Throws:
ClassCastException
- When this builder cannot be cast to the desired type.
-
asMap
default <V> IMapValueBuilder<V> asMap()
Casts this builder to a map value builder.- Returns:
- getThis() builder cast to a map value builder.
- Throws:
ClassCastException
- When this builder cannot be cast to the desired type.
-
asNull
default INullValueBuilder asNull()
Casts this builder to a null value builder.- Returns:
- getThis() builder cast to a null value builder.
- Throws:
ClassCastException
- When this builder cannot be cast to the desired type.
-
asRecord
default IRecordValueBuilder asRecord()
Casts this builder to a record value builder.- Returns:
- getThis() builder cast to a record value builder.
- Throws:
ClassCastException
- When this builder cannot be cast to the desired type.
-
asString
default IStringValueBuilder asString()
Casts this builder to a string value builder.- Returns:
- getThis() builder cast to a string value builder.
- Throws:
ClassCastException
- When this builder cannot be cast to the desired type.
-
asTuple
default ITupleValueBuilder asTuple()
Casts this builder to a tuple value builder.- Returns:
- getThis() builder cast to a tuple value builder.
- Throws:
ClassCastException
- When this builder cannot be cast to the desired type.
-
asUnion
default IUnionValueBuilder<?> asUnion()
Casts this builder to a union value builder.- Returns:
- getThis() builder cast to a union value builder.
- Throws:
ClassCastException
- When this builder cannot be cast to the desired type.
-
asVoid
default IVoidValueBuilder asVoid()
Casts this builder to a void value builder.- Returns:
- getThis() builder cast to a void value builder.
- Throws:
ClassCastException
- When this builder cannot be cast to the desired type.
-
is
default boolean is(Class<? extends IValueBuilder> clazz)
- Parameters:
clazz
- Class to check.- Returns:
- Whether this builder can be cast to the given class.
- See Also:
unwrap(Class)
-
unwrap
default <TItem,TBuilder extends IValueBuilder<TItem>> TBuilder unwrap(Class<? extends TBuilder> clazz)
Casts this builder to the given type. Make sure you are certain it is of the given type.- Type Parameters:
TItem
- Type of the values described by the descriptor.TBuilder
- Type of the builder.- Parameters:
clazz
- Class to which to cast this builder.- Returns:
- getThis() value builder cast to the given type.
- Throws:
ClassCastException
- When this descriptor cannot be cast to the given type.- See Also:
is(Class)
-
value
IValueConfigurator value(Object value)
Applies the given value to this builder. Implementations are allowed to perform validity checks on the passed value and reject the given value or parts of it (in case of lists etc.) when they do not conform to the restrictions imposed by this builder.- Parameters:
value
- Sets the value created by this builder.- Returns:
- getThis() builder instance for chaining method calls.
-
whenBoolean
@CanIgnoreReturnValue default IValueConfigurator whenBoolean(Consumer<? super IBooleanValueBuilder> action)
Execute the given action with this builder as a boolean value builder, if this builder is of that type. Does nothing otherwise.- Parameters:
action
- Action to execute if this builder is of the desired type.- Returns:
- getThis() builder instance to chain method calls.
-
whenConst
@CanIgnoreReturnValue default IValueConfigurator whenConst(Consumer<? super IConstValueBuilder<?>> action)
Execute the given action with this builder as a const value builder, if this builder is of that type. Does nothing otherwise.- Parameters:
action
- Action to execute if this builder is of the desired type.- Returns:
- getThis() builder instance to chain method calls.
-
whenFloat
@CanIgnoreReturnValue default IValueConfigurator whenFloat(Consumer<? super IFloatValueBuilder> action)
Execute the given action with this builder as a float value builder, if this builder is of that type. Does nothing otherwise.- Parameters:
action
- Action to execute if this builder is of the desired type.- Returns:
- getThis() builder instance to chain method calls.
-
whenInteger
@CanIgnoreReturnValue default IValueConfigurator whenInteger(Consumer<? super IIntegerValueBuilder> action)
Execute the given action with this builder as a integer value builder, if this builder is of that type. Does nothing otherwise.- Parameters:
action
- Action to execute if this builder is of the desired type.- Returns:
- getThis() builder instance to chain method calls.
-
whenList
@CanIgnoreReturnValue default IValueConfigurator whenList(Consumer<? super IListValueBuilder<?>> action)
Execute the given action with this builder as a list value builder, if this builder is of that type. Does nothing otherwise.- Parameters:
action
- Action to execute if this builder is of the desired type.- Returns:
- getThis() builder instance to chain method calls.
-
whenMap
@CanIgnoreReturnValue default IValueConfigurator whenMap(Consumer<? super IMapValueBuilder<?>> action)
Execute the given action with this builder as a map value builder, if this builder is of that type. Does nothing otherwise.- Parameters:
action
- Action to execute if this builder is of the desired type.- Returns:
- getThis() builder instance to chain method calls.
-
whenNull
@CanIgnoreReturnValue default IValueConfigurator whenNull(Consumer<? super INullValueBuilder> action)
Execute the given action with this builder as a null value builder, if this builder is of that type. Does nothing otherwise.- Parameters:
action
- Action to execute if this builder is of the desired type.- Returns:
- getThis() builder instance to chain method calls.
-
whenRecord
@CanIgnoreReturnValue default IValueConfigurator whenRecord(Consumer<? super IRecordValueBuilder> action)
Execute the given action with this builder as a record value builder, if this builder is of that type. Does nothing otherwise.- Parameters:
action
- Action to execute if this builder is of the desired type.- Returns:
- getThis() builder instance to chain method calls.
-
whenString
@CanIgnoreReturnValue default IValueConfigurator whenString(Consumer<? super IStringValueBuilder> action)
Execute the given action with this builder as a string value builder, if this builder is of that type. Does nothing otherwise.- Parameters:
action
- Action to execute if this builder is of the desired type.- Returns:
- getThis() builder instance to chain method calls.
-
whenTuple
@CanIgnoreReturnValue default IValueConfigurator whenTuple(Consumer<? super ITupleValueBuilder> action)
Execute the given action with this builder as a tuple value builder, if this builder is of that type. Does nothing otherwise.- Parameters:
action
- Action to execute if this builder is of the desired type.- Returns:
- getThis() builder instance to chain method calls.
-
whenUnion
@CanIgnoreReturnValue default IValueConfigurator whenUnion(Consumer<? super IUnionValueBuilder<?>> action)
Execute the given action with this builder as a union value builder, if this builder is of that type. Does nothing otherwise.- Parameters:
action
- Action to execute if this builder is of the desired type.- Returns:
- getThis() builder instance to chain method calls.
-
whenUnion
@CanIgnoreReturnValue default <D> IValueConfigurator whenUnion(Class<D> discriminatorClass, Consumer<? super IUnionValueBuilder<D>> action)
Execute the given action with this builder as a union value builder, if this builder is of that type. Does nothing otherwise.- Type Parameters:
D
- Type of the discriminating value.- Parameters:
discriminatorClass
- Type of the discriminating value.action
- Action to execute if this builder is of the desired type.- Returns:
- getThis() builder instance to chain method calls.
-
whenVoid
@CanIgnoreReturnValue default IValueConfigurator whenVoid(Consumer<? super IVoidValueBuilder> action)
Execute the given action with this builder as a void value builder, if this builder is of that type. Does nothing otherwise.- Parameters:
action
- Action to execute if this builder is of the desired type.- Returns:
- getThis() builder instance to chain method calls.
-
-