Package io.dialob.executor.command
Class ImmutableComplete.Builder
- java.lang.Object
-
- io.dialob.executor.command.ImmutableComplete.Builder
-
- Enclosing class:
- ImmutableComplete
@NotThreadSafe public static final class ImmutableComplete.Builder extends Object
Builds instances of typeImmutableComplete. 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 ImmutableComplete.BuilderaddAllTriggers(Iterable<? extends Trigger<ItemState>> elements)Adds elements totriggerslist.ImmutableComplete.BuilderaddTriggers(Trigger<ItemState> element)Adds one element totriggerslist.ImmutableComplete.BuilderaddTriggers(Trigger<ItemState>... elements)Adds elements totriggerslist.ImmutableCompletebuild()Builds a newImmutableComplete.ImmutableComplete.Builderfrom(Complete instance)Fill a builder with attribute values from the providedCompleteinstance.ImmutableComplete.BuildertargetId(ItemId targetId)Initializes the value for thetargetIdattribute.ImmutableComplete.Buildertriggers(Iterable<? extends Trigger<ItemState>> elements)Sets or replaces all elements fortriggerslist.
-
-
-
Method Detail
-
from
@CanIgnoreReturnValue public final ImmutableComplete.Builder from(Complete instance)
Fill a builder with attribute values from the providedCompleteinstance. 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
-
addTriggers
@CanIgnoreReturnValue public final ImmutableComplete.Builder addTriggers(Trigger<ItemState> element)
Adds one element totriggerslist.- Parameters:
element- A triggers element- Returns:
thisbuilder for use in a chained invocation
-
addTriggers
@CanIgnoreReturnValue @SafeVarargs public final ImmutableComplete.Builder addTriggers(Trigger<ItemState>... elements)
Adds elements totriggerslist.- Parameters:
elements- An array of triggers elements- Returns:
thisbuilder for use in a chained invocation
-
triggers
@CanIgnoreReturnValue public final ImmutableComplete.Builder triggers(Iterable<? extends Trigger<ItemState>> elements)
Sets or replaces all elements fortriggerslist.- Parameters:
elements- An iterable of triggers elements- Returns:
thisbuilder for use in a chained invocation
-
addAllTriggers
@CanIgnoreReturnValue public final ImmutableComplete.Builder addAllTriggers(Iterable<? extends Trigger<ItemState>> elements)
Adds elements totriggerslist.- Parameters:
elements- An iterable of triggers elements- Returns:
thisbuilder for use in a chained invocation
-
targetId
@CanIgnoreReturnValue public final ImmutableComplete.Builder targetId(ItemId targetId)
Initializes the value for thetargetIdattribute.If not set, this attribute will have a default value as returned by the initializer of
targetId.- Parameters:
targetId- The value for targetId- Returns:
thisbuilder for use in a chained invocation
-
build
public ImmutableComplete build()
Builds a newImmutableComplete.- Returns:
- An immutable instance of Complete
- Throws:
IllegalStateException- if any required attributes are missing
-
-