Class ImmutableDatacenter.Builder

java.lang.Object
org.kiwiproject.consul.model.coordinate.ImmutableDatacenter.Builder
Enclosing class:
ImmutableDatacenter

public static final class ImmutableDatacenter.Builder extends Object
Builds instances of type ImmutableDatacenter. 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 ImmutableDatacenter.Builder from(Datacenter instance)
      Fill a builder with attribute values from the provided Datacenter 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
    • datacenter

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

      @CanIgnoreReturnValue public final ImmutableDatacenter.Builder addCoordinates(Coordinate element)
      Adds one element to coordinates list.
      Parameters:
      element - A coordinates element
      Returns:
      this builder for use in a chained invocation
    • addCoordinates

      @CanIgnoreReturnValue public final ImmutableDatacenter.Builder addCoordinates(Coordinate... elements)
      Adds elements to coordinates list.
      Parameters:
      elements - An array of coordinates elements
      Returns:
      this builder for use in a chained invocation
    • coordinates

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

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

      public ImmutableDatacenter build()
      Builds a new ImmutableDatacenter.
      Returns:
      An immutable instance of Datacenter
      Throws:
      IllegalStateException - if any required attributes are missing