Class ImmutableObjectMeta.Builder

  • Direct Known Subclasses:
    ObjectMeta.Builder
    Enclosing class:
    ImmutableObjectMeta

    public static class ImmutableObjectMeta.Builder
    extends Object
    Builds instances of type ImmutableObjectMeta. 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.

    • Constructor Detail

      • Builder

        public Builder()
        Creates a builder for ImmutableObjectMeta instances.
         new ObjectMeta.Builder()
            .name(String) // required name
            .putLabels|putAllLabels(String => String) // labels mappings
            .build();
         
    • Method Detail

      • from

        public final ObjectMeta.Builder from​(ObjectMeta instance)
        Fill a builder with attribute values from the provided ObjectMeta 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

        public final ObjectMeta.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
      • putLabels

        public final ObjectMeta.Builder putLabels​(String key,
                                                  String value)
        Put one entry to the labels map.
        Parameters:
        key - The key in the labels map
        value - The associated value in the labels map
        Returns:
        this builder for use in a chained invocation
      • putLabels

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

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

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