Package io.dialob.executor.command
Class ImmutableSetAnswer
- java.lang.Object
-
- io.dialob.executor.command.ImmutableSetAnswer
-
- All Implemented Interfaces:
AbstractUpdateCommand<ItemId,ItemState>,Command<ItemState>,ItemUpdateCommand,SetAnswer,UpdateCommand<ItemId,ItemState>,Serializable
@ParametersAreNonnullByDefault @Generated("org.immutables.processor.ProxyProcessor") @Immutable @CheckReturnValue public final class ImmutableSetAnswer extends Object implements SetAnswer
Immutable implementation ofSetAnswer.Use the builder to create immutable instances:
ImmutableSetAnswer.builder(). Use the static factory method to create immutable instances:ImmutableSetAnswer.of().- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classImmutableSetAnswer.BuilderBuilds instances of typeImmutableSetAnswer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static ImmutableSetAnswer.Builderbuilder()Creates a builder forImmutableSetAnswer.static ImmutableSetAnswercopyOf(SetAnswer instance)Creates an immutable copy of aSetAnswervalue.booleanequals(Object another)This instance is equal to all instances ofImmutableSetAnswerthat have equal attribute values.ObjectgetAnswer()ItemIdgetTargetId()com.google.common.collect.ImmutableList<Trigger<ItemState>>getTriggers()inthashCode()Computes a hash code from attributes:triggers,targetId,answer.static ImmutableSetAnswerof(ItemId targetId, Object answer, Iterable<? extends Trigger<ItemState>> triggers)Construct a new immutableSetAnswerinstance.static ImmutableSetAnswerof(ItemId targetId, Object answer, List<Trigger<ItemState>> triggers)Construct a new immutableSetAnswerinstance.StringtoString()Prints the immutable valueSetAnswerwith attribute values.ImmutableSetAnswerwithAnswer(Object value)Copy the current immutable object by setting a value for theanswerattribute.ImmutableSetAnswerwithTargetId(ItemId value)Copy the current immutable object by setting a value for thetargetIdattribute.ImmutableSetAnswerwithTriggers(Trigger<ItemState>... elements)Copy the current immutable object with elements that replace the content oftriggers.ImmutableSetAnswerwithTriggers(Iterable<? extends Trigger<ItemState>> elements)Copy the current immutable object with elements that replace the content oftriggers.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface io.dialob.executor.command.Command
getEventMatchers
-
-
-
-
Method Detail
-
getTriggers
public com.google.common.collect.ImmutableList<Trigger<ItemState>> getTriggers()
- Specified by:
getTriggersin interfaceCommand<ItemState>- Returns:
- The value of the
triggersattribute
-
getTargetId
public ItemId getTargetId()
- Specified by:
getTargetIdin interfaceUpdateCommand<ItemId,ItemState>- Returns:
- The value of the
targetIdattribute
-
getAnswer
@Nullable public Object getAnswer()
-
withTriggers
@SafeVarargs public final ImmutableSetAnswer withTriggers(Trigger<ItemState>... elements)
Copy the current immutable object with elements that replace the content oftriggers.- Parameters:
elements- The elements to set- Returns:
- A modified copy of
thisobject
-
withTriggers
public final ImmutableSetAnswer withTriggers(Iterable<? extends Trigger<ItemState>> elements)
Copy the current immutable object with elements that replace the content oftriggers. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
elements- An iterable of triggers elements to set- Returns:
- A modified copy of
thisobject
-
withTargetId
public final ImmutableSetAnswer withTargetId(ItemId value)
Copy the current immutable object by setting a value for thetargetIdattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Specified by:
withTargetIdin interfaceUpdateCommand<ItemId,ItemState>- Parameters:
value- A new value for targetId- Returns:
- A modified copy of the
thisobject
-
withAnswer
public final ImmutableSetAnswer withAnswer(@Nullable Object value)
Copy the current immutable object by setting a value for theanswerattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for answer (can benull)- Returns:
- A modified copy of the
thisobject
-
equals
public boolean equals(@Nullable Object another)This instance is equal to all instances ofImmutableSetAnswerthat have equal attribute values.
-
hashCode
public int hashCode()
Computes a hash code from attributes:triggers,targetId,answer.
-
toString
public String toString()
Prints the immutable valueSetAnswerwith attribute values.
-
of
public static ImmutableSetAnswer of(ItemId targetId, @Nullable Object answer, List<Trigger<ItemState>> triggers)
Construct a new immutableSetAnswerinstance.- Parameters:
targetId- The value for thetargetIdattributeanswer- The value for theanswerattributetriggers- The value for thetriggersattribute- Returns:
- An immutable SetAnswer instance
-
of
public static ImmutableSetAnswer of(ItemId targetId, @Nullable Object answer, Iterable<? extends Trigger<ItemState>> triggers)
Construct a new immutableSetAnswerinstance.- Parameters:
targetId- The value for thetargetIdattributeanswer- The value for theanswerattributetriggers- The value for thetriggersattribute- Returns:
- An immutable SetAnswer instance
-
copyOf
public static ImmutableSetAnswer copyOf(SetAnswer instance)
Creates an immutable copy of aSetAnswervalue. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.- Parameters:
instance- The instance to copy- Returns:
- A copied immutable SetAnswer instance
-
builder
public static ImmutableSetAnswer.Builder builder()
Creates a builder forImmutableSetAnswer.ImmutableSetAnswer.builder() .addTriggers|addAllTriggers(io.dialob.executor.command.Trigger<io.dialob.executor.model.ItemState>) //triggerselements .targetId(io.dialob.executor.model.ItemId) // requiredtargetId.answer(Object | null) // nullableanswer.build();- Returns:
- A new ImmutableSetAnswer builder
-
-