Class ImmutableDetachedEntity.Builder

java.lang.Object
io.resys.hdes.client.api.ImmutableDetachedEntity.Builder
Enclosing class:
ImmutableDetachedEntity

@NotThreadSafe public static final class ImmutableDetachedEntity.Builder extends Object
Builds instances of type ImmutableDetachedEntity. 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 ImmutableDetachedEntity.Builder from(HdesStore.DetachedEntity instance)
      Fill a builder with attribute values from the provided DetachedEntity 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
    • hash

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

      @CanIgnoreReturnValue public final ImmutableDetachedEntity.Builder created(LocalDateTime created)
      Initializes the value for the created attribute.
      Parameters:
      created - The value for created
      Returns:
      this builder for use in a chained invocation
    • addBody

      @CanIgnoreReturnValue public final ImmutableDetachedEntity.Builder addBody(AstCommand element)
      Adds one element to body list.
      Parameters:
      element - A body element
      Returns:
      this builder for use in a chained invocation
    • addBody

      @CanIgnoreReturnValue public final ImmutableDetachedEntity.Builder addBody(AstCommand... elements)
      Adds elements to body list.
      Parameters:
      elements - An array of body elements
      Returns:
      this builder for use in a chained invocation
    • body

      @CanIgnoreReturnValue public final ImmutableDetachedEntity.Builder body(Iterable<? extends AstCommand> elements)
      Sets or replaces all elements for body list.
      Parameters:
      elements - An iterable of body elements
      Returns:
      this builder for use in a chained invocation
    • addAllBody

      @CanIgnoreReturnValue public final ImmutableDetachedEntity.Builder addAllBody(Iterable<? extends AstCommand> elements)
      Adds elements to body list.
      Parameters:
      elements - An iterable of body elements
      Returns:
      this builder for use in a chained invocation
    • build

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