Package io.dialob.executor.command
Class ImmutableDynamicTrigger<T>
- java.lang.Object
-
- io.dialob.executor.command.ImmutableDynamicTrigger<T>
-
- All Implemented Interfaces:
DynamicTrigger<T>,Trigger<T>,Serializable
@ParametersAreNonnullByDefault @Generated("org.immutables.processor.ProxyProcessor") @Immutable @CheckReturnValue public final class ImmutableDynamicTrigger<T> extends Object implements DynamicTrigger<T>
Immutable implementation ofDynamicTrigger.Use the builder to create immutable instances:
ImmutableDynamicTrigger.builder(). Use the static factory method to create immutable instances:ImmutableDynamicTrigger.of().- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classImmutableDynamicTrigger.Builder<T>Builds instances of typeImmutableDynamicTrigger.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static <T> ImmutableDynamicTrigger.Builder<T>builder()Creates a builder forImmutableDynamicTrigger.static <T> ImmutableDynamicTrigger<T>copyOf(DynamicTrigger<T> instance)Creates an immutable copy of aDynamicTriggervalue.booleanequals(Object another)This instance is equal to all instances ofImmutableDynamicTriggerthat have equal attribute values.Triggers.EventsProvider<T>getEventsProvider()BiPredicate<T,T>getWhen()inthashCode()Computes a hash code from attributes:when,eventsProvider.static <T> ImmutableDynamicTrigger<T>of(BiPredicate<T,T> when, Triggers.EventsProvider<T> eventsProvider)Construct a new immutableDynamicTriggerinstance.StringtoString()Prints the immutable valueDynamicTriggerwith attribute values.ImmutableDynamicTrigger<T>withEventsProvider(Triggers.EventsProvider<T> value)Copy the current immutable object by setting a value for theeventsProviderattribute.ImmutableDynamicTrigger<T>withWhen(BiPredicate<T,T> value)Copy the current immutable object by setting a value for thewhenattribute.-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface io.dialob.executor.command.DynamicTrigger
apply, getAllEvents
-
Methods inherited from interface io.dialob.executor.command.Trigger
createEvent
-
-
-
-
Method Detail
-
getWhen
public BiPredicate<T,T> getWhen()
-
getEventsProvider
public Triggers.EventsProvider<T> getEventsProvider()
- Specified by:
getEventsProviderin interfaceDynamicTrigger<T>- Returns:
- The value of the
eventsProviderattribute
-
withWhen
public final ImmutableDynamicTrigger<T> withWhen(BiPredicate<T,T> value)
Copy the current immutable object by setting a value for thewhenattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for when- Returns:
- A modified copy of the
thisobject
-
withEventsProvider
public final ImmutableDynamicTrigger<T> withEventsProvider(Triggers.EventsProvider<T> value)
Copy the current immutable object by setting a value for theeventsProviderattribute. A shallow reference equality check is used to prevent copying of the same value by returningthis.- Parameters:
value- A new value for eventsProvider- Returns:
- A modified copy of the
thisobject
-
equals
public boolean equals(@Nullable Object another)This instance is equal to all instances ofImmutableDynamicTriggerthat have equal attribute values.
-
hashCode
public int hashCode()
Computes a hash code from attributes:when,eventsProvider.
-
toString
public String toString()
Prints the immutable valueDynamicTriggerwith attribute values.
-
of
public static <T> ImmutableDynamicTrigger<T> of(BiPredicate<T,T> when, Triggers.EventsProvider<T> eventsProvider)
Construct a new immutableDynamicTriggerinstance.- Type Parameters:
T- generic parameter T- Parameters:
when- The value for thewhenattributeeventsProvider- The value for theeventsProviderattribute- Returns:
- An immutable DynamicTrigger instance
-
copyOf
public static <T> ImmutableDynamicTrigger<T> copyOf(DynamicTrigger<T> instance)
Creates an immutable copy of aDynamicTriggervalue. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.- Type Parameters:
T- generic parameter T- Parameters:
instance- The instance to copy- Returns:
- A copied immutable DynamicTrigger instance
-
builder
public static <T> ImmutableDynamicTrigger.Builder<T> builder()
Creates a builder forImmutableDynamicTrigger.ImmutableDynamicTrigger.<T>builder() .when(function.BiPredicate<T, T>) // requiredwhen.eventsProvider(io.dialob.executor.command.Triggers.EventsProvider<T>) // requiredeventsProvider.build();- Type Parameters:
T- generic parameter T- Returns:
- A new ImmutableDynamicTrigger builder
-
-