Class ImmutableCustomTypeMeta.Builder

java.lang.Object
org.nuiton.db.meta.ImmutableCustomTypeMeta.Builder
Enclosing class:
ImmutableCustomTypeMeta

@Generated(from="CustomTypeMeta", generator="Immutables") public static final class ImmutableCustomTypeMeta.Builder extends Object
Builds instances of type ImmutableCustomTypeMeta. Initialize attributes and then invoke the build() method to create an immutable instance.

Builder is not thread-safe and generally should not be stored in a field or collection, but instead used immediately to create instances.

  • Method Details

    • from

      @CanIgnoreReturnValue public final ImmutableCustomTypeMeta.Builder from(CustomTypeMeta instance)
      Fill a builder with attribute values from the provided CustomTypeMeta instance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values. Collection elements and entries will be added, not replaced.
      Parameters:
      instance - The instance from which to copy values
      Returns:
      this builder for use in a chained invocation
    • name

      @CanIgnoreReturnValue public final ImmutableCustomTypeMeta.Builder name(String name)
      Initializes the value for the name attribute.
      Parameters:
      name - The value for name
      Returns:
      this builder for use in a chained invocation
    • comment

      @CanIgnoreReturnValue public final ImmutableCustomTypeMeta.Builder comment(String comment)
      Initializes the optional value comment to comment.
      Parameters:
      comment - The value for comment
      Returns:
      this builder for chained invocation
    • comment

      @CanIgnoreReturnValue public final ImmutableCustomTypeMeta.Builder comment(Optional<String> comment)
      Initializes the optional value comment to comment.
      Parameters:
      comment - The value for comment
      Returns:
      this builder for use in a chained invocation
    • enumEquivalence

      @CanIgnoreReturnValue public final ImmutableCustomTypeMeta.Builder enumEquivalence(Class<? extends Enum> enumEquivalence)
      Initializes the optional value enumEquivalence to enumEquivalence.
      Parameters:
      enumEquivalence - The value for enumEquivalence
      Returns:
      this builder for chained invocation
    • enumEquivalence

      @CanIgnoreReturnValue public final ImmutableCustomTypeMeta.Builder enumEquivalence(Optional<? extends Class<? extends Enum>> enumEquivalence)
      Initializes the optional value enumEquivalence to enumEquivalence.
      Parameters:
      enumEquivalence - The value for enumEquivalence
      Returns:
      this builder for use in a chained invocation
    • addValues

      @CanIgnoreReturnValue public final ImmutableCustomTypeMeta.Builder addValues(String element)
      Adds one element to values list.
      Parameters:
      element - A values element
      Returns:
      this builder for use in a chained invocation
    • addValues

      @CanIgnoreReturnValue public final ImmutableCustomTypeMeta.Builder addValues(String... elements)
      Adds elements to values list.
      Parameters:
      elements - An array of values elements
      Returns:
      this builder for use in a chained invocation
    • values

      @CanIgnoreReturnValue public final ImmutableCustomTypeMeta.Builder values(Iterable<String> elements)
      Sets or replaces all elements for values list.
      Parameters:
      elements - An iterable of values elements
      Returns:
      this builder for use in a chained invocation
    • addAllValues

      @CanIgnoreReturnValue public final ImmutableCustomTypeMeta.Builder addAllValues(Iterable<String> elements)
      Adds elements to values list.
      Parameters:
      elements - An iterable of values elements
      Returns:
      this builder for use in a chained invocation
    • build

      public ImmutableCustomTypeMeta build()
      Returns:
      An immutable instance of CustomTypeMeta
      Throws:
      IllegalStateException - if any required attributes are missing