Package io.dialob.program.model
Class ImmutableLabel.Builder
- java.lang.Object
-
- io.dialob.program.model.ImmutableLabel.Builder
-
- Enclosing class:
- ImmutableLabel
@NotThreadSafe public static final class ImmutableLabel.Builder extends Object
Builds instances of typeImmutableLabel. Initialize attributes and then invoke thebuild()method to create an immutable instance.Builderis not thread-safe and generally should not be stored in a field or collection, but instead used immediately to create instances.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ImmutableLabelbuild()Builds a newImmutableLabel.ImmutableLabel.Builderfrom(Label instance)Fill a builder with attribute values from the providedLabelinstance.ImmutableLabel.Builderlabels(Map<String,? extends String> entries)Sets or replaces all mappings from the specified map as entries for thelabelsmap.ImmutableLabel.BuilderputAllLabels(Map<String,? extends String> entries)Put all mappings from the specified map as entries tolabelsmap.ImmutableLabel.BuilderputLabels(String key, String value)Put one entry to thelabelsmap.ImmutableLabel.BuilderputLabels(Map.Entry<String,? extends String> entry)Put one entry to thelabelsmap.
-
-
-
Method Detail
-
from
@CanIgnoreReturnValue public final ImmutableLabel.Builder from(Label instance)
Fill a builder with attribute values from the providedLabelinstance. 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:
thisbuilder for use in a chained invocation
-
putLabels
@CanIgnoreReturnValue public final ImmutableLabel.Builder putLabels(String key, String value)
Put one entry to thelabelsmap.- Parameters:
key- The key in the labels mapvalue- The associated value in the labels map- Returns:
thisbuilder for use in a chained invocation
-
putLabels
@CanIgnoreReturnValue public final ImmutableLabel.Builder putLabels(Map.Entry<String,? extends String> entry)
Put one entry to thelabelsmap. Nulls are not permitted- Parameters:
entry- The key and value entry- Returns:
thisbuilder for use in a chained invocation
-
labels
@CanIgnoreReturnValue public final ImmutableLabel.Builder labels(Map<String,? extends String> entries)
Sets or replaces all mappings from the specified map as entries for thelabelsmap. Nulls are not permitted- Parameters:
entries- The entries that will be added to the labels map- Returns:
thisbuilder for use in a chained invocation
-
putAllLabels
@CanIgnoreReturnValue public final ImmutableLabel.Builder putAllLabels(Map<String,? extends String> entries)
Put all mappings from the specified map as entries tolabelsmap. Nulls are not permitted- Parameters:
entries- The entries that will be added to the labels map- Returns:
thisbuilder for use in a chained invocation
-
build
public ImmutableLabel build()
Builds a newImmutableLabel.- Returns:
- An immutable instance of Label
- Throws:
IllegalStateException- if any required attributes are missing
-
-