Class ImmutableService.Builder

java.lang.Object
org.kiwiproject.consul.model.health.ImmutableService.Builder
Enclosing class:
ImmutableService

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

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

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

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

      @CanIgnoreReturnValue public final ImmutableService.Builder enableTagOverride(Optional<Boolean> enableTagOverride)
      Initializes the optional value enableTagOverride to enableTagOverride.
      Parameters:
      enableTagOverride - The value for enableTagOverride
      Returns:
      this builder for use in a chained invocation
    • addTags

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

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

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

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

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

      @CanIgnoreReturnValue public final ImmutableService.Builder putMeta(String key, String value)
      Put one entry to the meta map.
      Parameters:
      key - The key in the meta map
      value - The associated value in the meta map
      Returns:
      this builder for use in a chained invocation
    • putMeta

      @CanIgnoreReturnValue public final ImmutableService.Builder putMeta(Map.Entry<String,? extends String> entry)
      Put one entry to the meta map. Nulls are not permitted
      Parameters:
      entry - The key and value entry
      Returns:
      this builder for use in a chained invocation
    • meta

      @CanIgnoreReturnValue public final ImmutableService.Builder meta(Map<String,? extends String> entries)
      Sets or replaces all mappings from the specified map as entries for the meta map. Nulls are not permitted
      Parameters:
      entries - The entries that will be added to the meta map
      Returns:
      this builder for use in a chained invocation
    • putAllMeta

      @CanIgnoreReturnValue public final ImmutableService.Builder putAllMeta(Map<String,? extends String> entries)
      Put all mappings from the specified map as entries to meta map. Nulls are not permitted
      Parameters:
      entries - The entries that will be added to the meta map
      Returns:
      this builder for use in a chained invocation
    • port

      @CanIgnoreReturnValue public final ImmutableService.Builder port(int port)
      Initializes the value for the port attribute.
      Parameters:
      port - The value for port
      Returns:
      this builder for use in a chained invocation
    • weights

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

      @CanIgnoreReturnValue public final ImmutableService.Builder weights(Optional<? extends ServiceWeights> weights)
      Initializes the optional value weights to weights.
      Parameters:
      weights - The value for weights
      Returns:
      this builder for use in a chained invocation
    • build

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