Class ImmutableFullService.Builder

  • Enclosing class:
    ImmutableFullService

    @NotThreadSafe
    public static final class ImmutableFullService.Builder
    extends java.lang.Object
    Builds instances of type ImmutableFullService. 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 Detail

      • from

        @CanIgnoreReturnValue
        public final ImmutableFullService.Builder from​(FullService instance)
        Fill a builder with attribute values from the provided FullService 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
      • kind

        @CanIgnoreReturnValue
        public final ImmutableFullService.Builder kind​(java.lang.String kind)
        Initializes the optional value kind to kind.
        Parameters:
        kind - The value for kind
        Returns:
        this builder for chained invocation
      • kind

        @CanIgnoreReturnValue
        public final ImmutableFullService.Builder kind​(java.util.Optional<java.lang.String> kind)
        Initializes the optional value kind to kind.
        Parameters:
        kind - The value for kind
        Returns:
        this builder for use in a chained invocation
      • id

        @CanIgnoreReturnValue
        public final ImmutableFullService.Builder id​(java.lang.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 ImmutableFullService.Builder service​(java.lang.String service)
        Initializes the value for the service attribute.
        Parameters:
        service - The value for service
        Returns:
        this builder for use in a chained invocation
      • addTags

        @CanIgnoreReturnValue
        public final ImmutableFullService.Builder addTags​(java.lang.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 ImmutableFullService.Builder addTags​(java.lang.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 ImmutableFullService.Builder tags​(java.lang.Iterable<java.lang.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 ImmutableFullService.Builder addAllTags​(java.lang.Iterable<java.lang.String> elements)
        Adds elements to tags list.
        Parameters:
        elements - An iterable of tags elements
        Returns:
        this builder for use in a chained invocation
      • putMeta

        @CanIgnoreReturnValue
        public final ImmutableFullService.Builder putMeta​(java.lang.String key,
                                                          java.lang.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 ImmutableFullService.Builder putMeta​(java.util.Map.Entry<java.lang.String,​? extends java.lang.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 ImmutableFullService.Builder meta​(java.util.Map<java.lang.String,​? extends java.lang.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 ImmutableFullService.Builder putAllMeta​(java.util.Map<java.lang.String,​? extends java.lang.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 ImmutableFullService.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
      • address

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

        @CanIgnoreReturnValue
        public final ImmutableFullService.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 ImmutableFullService.Builder weights​(java.util.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
      • enableTagOverride

        @CanIgnoreReturnValue
        public final ImmutableFullService.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 ImmutableFullService.Builder enableTagOverride​(java.util.Optional<java.lang.Boolean> enableTagOverride)
        Initializes the optional value enableTagOverride to enableTagOverride.
        Parameters:
        enableTagOverride - The value for enableTagOverride
        Returns:
        this builder for use in a chained invocation
      • contentHash

        @CanIgnoreReturnValue
        public final ImmutableFullService.Builder contentHash​(java.lang.String contentHash)
        Initializes the value for the contentHash attribute.
        Parameters:
        contentHash - The value for contentHash
        Returns:
        this builder for use in a chained invocation
      • proxy

        @CanIgnoreReturnValue
        public final ImmutableFullService.Builder proxy​(ServiceProxy proxy)
        Initializes the optional value proxy to proxy.
        Parameters:
        proxy - The value for proxy
        Returns:
        this builder for chained invocation
      • proxy

        @CanIgnoreReturnValue
        public final ImmutableFullService.Builder proxy​(java.util.Optional<? extends ServiceProxy> proxy)
        Initializes the optional value proxy to proxy.
        Parameters:
        proxy - The value for proxy
        Returns:
        this builder for use in a chained invocation
      • build

        public ImmutableFullService build()
        Builds a new ImmutableFullService.
        Returns:
        An immutable instance of FullService
        Throws:
        java.lang.IllegalStateException - if any required attributes are missing