Package akka.persistence.typed.scaladsl
Class EventSourcedBehavior$
- java.lang.Object
-
- akka.persistence.typed.scaladsl.EventSourcedBehavior$
-
public class EventSourcedBehavior$ extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description static EventSourcedBehavior$MODULE$Static reference to the singleton instance of this Scala object.
-
Constructor Summary
Constructors Constructor Description EventSourcedBehavior$()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <Command,Event,State>
EventSourcedBehavior<Command,Event,State>apply(PersistenceId persistenceId, State emptyState, scala.Function2<State,Command,Effect<Event,State>> commandHandler, scala.Function2<State,Event,State> eventHandler)Create aBehaviorfor a persistent actor.<M> scala.Option<M>currentMetadata(ActorContext<?> context, scala.reflect.ClassTag<M> evidence$1)The metadata of the given type that was persisted with an event, if any.longlastSequenceNumber(ActorContext<?> context)The last sequence number that was persisted, can only be called from inside the handlers of anEventSourcedBehavior<Command,Event,State>
EventSourcedBehavior<Command,Event,State>withEnforcedReplies(PersistenceId persistenceId, State emptyState, scala.Function2<State,Command,ReplyEffect<Event,State>> commandHandler, scala.Function2<State,Event,State> eventHandler)Create aBehaviorfor a persistent actor that is enforcing that replies to commands are not forgotten.<Command,Event,State>
EventSourcedBehavior<Command,Event,State>withEnforcedRepliesMutableState(PersistenceId persistenceId, scala.Function0<State> emptyStateFactory, scala.Function2<State,Command,ReplyEffect<Event,State>> commandHandler, scala.Function2<State,Event,State> eventHandler)Create aBehaviorwith mutable state for a persistent actor that is enforcing that replies to commands are not forgotten.<Command,Event,State>
EventSourcedBehavior<Command,Event,State>withMutableState(PersistenceId persistenceId, scala.Function0<State> emptyStateFactory, scala.Function2<State,Command,Effect<Event,State>> commandHandler, scala.Function2<State,Event,State> eventHandler)Create aBehaviorwith mutable state for a persistent actor.
-
-
-
Field Detail
-
MODULE$
public static final EventSourcedBehavior$ MODULE$
Static reference to the singleton instance of this Scala object.
-
-
Method Detail
-
apply
public <Command,Event,State> EventSourcedBehavior<Command,Event,State> apply(PersistenceId persistenceId, State emptyState, scala.Function2<State,Command,Effect<Event,State>> commandHandler, scala.Function2<State,Event,State> eventHandler)
Create aBehaviorfor a persistent actor.This can be used when the state is immutable, but if the state is mutable, it is important to use the
withMutableStatethat takesemptyStateFactory: () => Stateparameter.- Parameters:
persistenceId- stable unique identifier for the event sourced behavioremptyState- the intial state for the entity before any events have been processedcommandHandler- map commands to effects e.g. persisting events, replying to commandseventHandler- compute the new state given the current state when an event has been persisted
-
withMutableState
public <Command,Event,State> EventSourcedBehavior<Command,Event,State> withMutableState(PersistenceId persistenceId, scala.Function0<State> emptyStateFactory, scala.Function2<State,Command,Effect<Event,State>> commandHandler, scala.Function2<State,Event,State> eventHandler)
Create aBehaviorwith mutable state for a persistent actor.When the state is mutable, it is important to use this variant to make sure that the state instance is recreated in case of failure restarts.
- Parameters:
persistenceId- stable unique identifier for the event sourced behavioremptyStateFactory- factory function of the intial state for the entity before any events have been processedcommandHandler- map commands to effects e.g. persisting events, replying to commandseventHandler- compute the new state given the current state when an event has been persisted
-
withEnforcedReplies
public <Command,Event,State> EventSourcedBehavior<Command,Event,State> withEnforcedReplies(PersistenceId persistenceId, State emptyState, scala.Function2<State,Command,ReplyEffect<Event,State>> commandHandler, scala.Function2<State,Event,State> eventHandler)
Create aBehaviorfor a persistent actor that is enforcing that replies to commands are not forgotten. Then there will be compilation errors if the returned effect isn't aReplyEffect, which can be created withEffect.reply,Effect.noReply,EffectBuilder.thenReply, orEffectBuilder.thenNoReply.This can be used when the state is immutable, but if the state is mutable, it is important to use the
withEnforcedRepliesMutableStatethat takesemptyStateFactory: () => Stateparameter.
-
withEnforcedRepliesMutableState
public <Command,Event,State> EventSourcedBehavior<Command,Event,State> withEnforcedRepliesMutableState(PersistenceId persistenceId, scala.Function0<State> emptyStateFactory, scala.Function2<State,Command,ReplyEffect<Event,State>> commandHandler, scala.Function2<State,Event,State> eventHandler)
Create aBehaviorwith mutable state for a persistent actor that is enforcing that replies to commands are not forgotten. Then there will be compilation errors if the returned effect isn't aReplyEffect, which can be created withEffect.reply,Effect.noReply,EffectBuilder.thenReply, orEffectBuilder.thenNoReply.When the state is mutable, it is important to use this variant to make sure that the state instance is recreated in case of failure restarts.
-
lastSequenceNumber
public long lastSequenceNumber(ActorContext<?> context)
The last sequence number that was persisted, can only be called from inside the handlers of anEventSourcedBehavior
-
currentMetadata
public <M> scala.Option<M> currentMetadata(ActorContext<?> context, scala.reflect.ClassTag<M> evidence$1)
The metadata of the given type that was persisted with an event, if any. Can only be called from inside the event handler orRecoveryCompletedof anEventSourcedBehavior.
-
-