Interface IValueConfigurator

    • 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.