Class

com.rbmhtechnology.eventuate

AbstractEventsourcedView

Related Doc: package eventuate

Permalink

abstract class AbstractEventsourcedView extends AbstractEventsourcedComponent

Java API for actors that implement EventsourcedView.

Actor handlers may be initialized once in the constructor with various set-methods (e.g. setOnCommand, setOnEvent) or by overriding the respective handler (e.g. onCommand(...), onEvent(...)). If a handler is overridden, the behaviour of it's respective set-method will be ignored.

Example:

public class HelloActor extends AbstractEventsourcedView {
   public HelloActor(final String id, final ActorRef eventLog) {
     super(id, eventLog);

     onCommand(ReceiveBuilder
       .match(String.class, str -> str.equals("Hello"), value -> sender().tell("World", self())
       .matchAny(ev -> value -> sender().tell("Please try again", self())
       .build());
   }

   public PartialFunction<Object, BoxedUnit> onEvent() {
     return ReceiveBuilder
       .matchAny(HelloEvent.class, ev -> handleEvent(ev))
       .build();
   }
}
See also

EventsourcedView

Linear Supertypes
AbstractEventsourcedComponent, ConditionalRequests, EventsourcedVersion, EventsourcedView, Stash, RequiresMessageQueue[DequeBasedMessageQueueSemantics], UnrestrictedStash, StashSupport, Actor, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AbstractEventsourcedView
  2. AbstractEventsourcedComponent
  3. ConditionalRequests
  4. EventsourcedVersion
  5. EventsourcedView
  6. Stash
  7. RequiresMessageQueue
  8. UnrestrictedStash
  9. StashSupport
  10. Actor
  11. AnyRef
  12. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AbstractEventsourcedView(id: String, eventLog: ActorRef)

    Permalink

Type Members

  1. type Handler[A] = (Try[A]) ⇒ Unit

    Permalink
    Definition Classes
    EventsourcedView
  2. type Receive = PartialFunction[Any, Unit]

    Permalink
    Definition Classes
    Actor

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def aggregateId: Option[String]

    Permalink

    Optional aggregate id.

    Optional aggregate id. It is used for routing DurableEvents to event-sourced destinations which can be EventsourcedViews or EventsourcedActors. By default, an event is routed to an event-sourced destination with an undefined aggregateId. If a destination's aggregateId is defined it will only receive events with a matching aggregate id in DurableEvent#destinationAggregateIds.

    Definition Classes
    AbstractEventsourcedComponent → EventsourcedView
  5. def aroundPostRestart(reason: Throwable): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  6. def aroundPostStop(): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  7. def aroundPreRestart(reason: Throwable, message: Option[Any]): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  8. def aroundPreStart(): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  9. def aroundReceive(receive: akka.actor.Actor.Receive, msg: Any): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Actor
    Annotations
    @InternalApi()
  10. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  11. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  12. def commandContext: BehaviorContext

    Permalink

    Returns the command BehaviorContext.

    Returns the command BehaviorContext.

    Definition Classes
    EventsourcedView
  13. implicit val context: ActorContext

    Permalink
    Definition Classes
    Actor
  14. def createOnCommand(): akka.actor.AbstractActor.Receive

    Permalink

    Java API of the command handler.

    Java API of the command handler.

    Returns a receive object that defines the actor's command handling behaviour. Use ReceiveBuilder to define the behaviour.

    Definition Classes
    AbstractEventsourcedComponent
    See also

    EventsourcedView

  15. def createOnEvent(): akka.actor.AbstractActor.Receive

    Permalink

    Java API of the event handler.

    Java API of the event handler.

    Returns a receive object that defines the actor's event handling behaviour. Use ReceiveBuilder to define the behaviour.

    See also

    EventsourcedView

  16. def createOnRecovery(): ResultHandler[Unit]

    Permalink

    Java API of the recovery handler.

    Java API of the recovery handler.

    Returns a result handler that defines the actor's recover handling behaviour. Use ResultHandler to define the behaviour.

    Definition Classes
    AbstractEventsourcedComponent
    See also

    EventsourcedView

  17. def createOnSnapshot(): akka.actor.AbstractActor.Receive

    Permalink

    Java API of the snapshot handler.

    Java API of the snapshot handler.

    Returns a receive object that defines the actor's snapshot handling behaviour. Use ReceiveBuilder to define the behaviour.

    Definition Classes
    AbstractEventsourcedComponent
    See also

    EventsourcedView

  18. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  19. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  20. def eventContext: BehaviorContext

    Permalink

    Returns the event BehaviorContext.

    Returns the event BehaviorContext.

    Definition Classes
    EventsourcedView
  21. val eventLog: ActorRef

    Permalink

    Event log actor.

    Event log actor.

    Definition Classes
    AbstractEventsourcedViewEventsourcedView
  22. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  23. def getAggregateId: Optional[String]

    Permalink

    Java API of aggregateId.

    Java API of aggregateId.

    Definition Classes
    AbstractEventsourcedComponent
    See also

    EventsourcedView

  24. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  25. final def getCommandContext: AbstractEventsourcedComponent.BehaviorContext

    Permalink

    Java API of commandContext.

    Java API of commandContext.

    Returns the command BehaviorContext.

    Definition Classes
    AbstractEventsourcedComponent
    See also

    EventsourcedView

  26. def getContext: ActorContext

    Permalink

    Returns this AbstractActor's ActorContext.

    Returns this AbstractActor's ActorContext. Mimics AbstractActor.getContext.

    Definition Classes
    AbstractEventsourcedComponent
  27. final def getEventContext: AbstractEventsourcedComponent.BehaviorContext

    Permalink

    Java API of eventContext.

    Java API of eventContext.

    Returns the event BehaviorContext.

    Definition Classes
    AbstractEventsourcedComponent
    See also

    EventsourcedView

  28. final def getLastEmitterAggregateId: Optional[String]

    Permalink

    Java API of lastEmitterAggregateId.

    Definition Classes
    AbstractEventsourcedComponent
    See also

    EventsourcedView

  29. final def getLastEmitterId: String

    Permalink

    Java API of lastEmitterId.

    Java API of lastEmitterId.

    Definition Classes
    AbstractEventsourcedComponent
    See also

    EventsourcedView

  30. final def getLastSequenceNr: Long

    Permalink

    Java API of lastSequenceNr.

    Java API of lastSequenceNr.

    Definition Classes
    AbstractEventsourcedComponent
    See also

    EventsourcedView

  31. final def getLastSystemTimestamp: Long

    Permalink

    Java API of lastSystemTimestamp.

    Java API of lastSystemTimestamp.

    Definition Classes
    AbstractEventsourcedComponent
    See also

    EventsourcedView

  32. final def getLastVectorTimestamp: VectorTime

    Permalink

    Java API of lastVectorTimestamp.

    Java API of lastVectorTimestamp.

    Definition Classes
    AbstractEventsourcedComponent
    See also

    EventsourcedView

  33. def getSelf: ActorRef

    Permalink

    Returns the ActorRef for this actor.

    Returns the ActorRef for this actor. Mimics AbstractActor.getSelf.

    Definition Classes
    AbstractEventsourcedComponent
  34. def getSender: ActorRef

    Permalink

    The reference sender Actor of the currently processed message.

    The reference sender Actor of the currently processed message. Mimics AbstractActor.getSender.

    Definition Classes
    AbstractEventsourcedComponent
  35. final def getSnapshotContext: AbstractEventsourcedComponent.BehaviorContext

    Permalink

    Java API of snapshotContext.

    Java API of snapshotContext.

    Returns the snapshot BehaviorContext.

    Definition Classes
    AbstractEventsourcedComponent
    See also

    EventsourcedView

  36. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  37. val id: String

    Permalink

    Global unique actor id.

    Global unique actor id.

    Definition Classes
    AbstractEventsourcedViewEventsourcedView
  38. val instanceId: Int

    Permalink
    Definition Classes
    EventsourcedView
  39. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  40. final def isRecovering: Boolean

    Permalink

    Java API of lastEmirecoveringterId.

    Definition Classes
    AbstractEventsourcedComponent
    See also

    EventsourcedView

  41. final def lastEmitterAggregateId: Option[String]

    Permalink

    Emitter aggregate id of the last handled event.

    Emitter aggregate id of the last handled event.

    Definition Classes
    EventsourcedView
  42. final def lastEmitterId: String

    Permalink

    Emitter id of the last handled event.

    Emitter id of the last handled event.

    Definition Classes
    EventsourcedView
  43. final def lastProcessId: String

    Permalink

    Id of the local event log that initially wrote the event.

    Id of the local event log that initially wrote the event.

    Definition Classes
    EventsourcedView
  44. final def lastSequenceNr: Long

    Permalink

    Sequence number of the last handled event.

    Sequence number of the last handled event.

    Definition Classes
    EventsourcedView
  45. final def lastSystemTimestamp: Long

    Permalink

    Wall-clock timestamp of the last handled event.

    Wall-clock timestamp of the last handled event.

    Definition Classes
    EventsourcedView
  46. final def lastVectorTimestamp: VectorTime

    Permalink

    Vector timestamp of the last handled event.

    Vector timestamp of the last handled event.

    Definition Classes
    EventsourcedView
  47. val logger: LoggingAdapter

    Permalink

    This actor's logging adapter.

    This actor's logging adapter.

    Definition Classes
    EventsourcedView
  48. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  49. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  50. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  51. final def onCommand: Receive

    Permalink

    Command handler.

    Command handler.

    Definition Classes
    AbstractEventsourcedComponent → EventsourcedView
  52. final def onEvent: Receive

    Permalink

    Event handler.

    Event handler.

    Definition Classes
    AbstractEventsourcedViewEventsourcedView
  53. final def onRecovery: Handler[Unit]

    Permalink

    Recovery completion handler.

    Recovery completion handler. If called with a Failure, the actor will be stopped in any case, regardless of the action taken by the returned handler. The default handler implementation does nothing and can be overridden by implementations.

    Definition Classes
    AbstractEventsourcedComponent → EventsourcedView
  54. final def onSnapshot: Receive

    Permalink

    Snapshot handler.

    Snapshot handler.

    Definition Classes
    AbstractEventsourcedComponent → EventsourcedView
  55. def postRestart(reason: Throwable): Unit

    Permalink
    Definition Classes
    Actor
    Annotations
    @throws( classOf[java.lang.Exception] )
  56. def postStop(): Unit

    Permalink

    Sets recovering to false before calling super.postStop.

    Sets recovering to false before calling super.postStop.

    Definition Classes
    EventsourcedView → UnrestrictedStash → Actor
  57. def preRestart(reason: Throwable, message: Option[Any]): Unit

    Permalink

    Sets recovering to false before calling super.preRestart.

    Sets recovering to false before calling super.preRestart.

    Definition Classes
    EventsourcedView → UnrestrictedStash → Actor
  58. def preStart(): Unit

    Permalink

    Initiates recovery.

    Initiates recovery.

    Definition Classes
    EventsourcedView → Actor
  59. final def receive: Receive

    Permalink

    Initialization behavior.

    Initialization behavior.

    Definition Classes
    EventsourcedView → Actor
  60. final def receiveBuilder(): ReceiveBuilder

    Permalink

    Creates a new empty ReceiveBuilder.

    Creates a new empty ReceiveBuilder. Mimics AbstractActor.receiveBuilder.

    Definition Classes
    AbstractEventsourcedComponent
  61. final def recovering: Boolean

    Permalink

    Returns true if this actor is currently recovering internal state by consuming replayed events from the event log.

    Returns true if this actor is currently recovering internal state by consuming replayed events from the event log. Returns false after recovery completed and the actor switches to consuming live events.

    Definition Classes
    EventsourcedView
  62. def replayBatchSize: Int

    Permalink

    Maximum number of events to be replayed to this actor before replaying is suspended.

    Maximum number of events to be replayed to this actor before replaying is suspended. A suspended replay is resumed automatically after all replayed events haven been handled by this actor's event handler (= backpressure). The default value for the maximum replay batch size is given by configuration item eventuate.log.replay-batch-size. Configured values can be overridden by overriding this method.

    Definition Classes
    EventsourcedView
  63. def replayFromSequenceNr: Option[Long]

    Permalink

    Override to provide an application-defined log sequence number from which event replay will start.

    Override to provide an application-defined log sequence number from which event replay will start.

    If Some(snr) is returned snapshot loading will be skipped and replay will start from the given sequence number snr.

    If None is returned the actor proceeds with the regular snapshot loading procedure.

    Definition Classes
    EventsourcedView
  64. def save(snapshot: Any, handler: ResultHandler[SnapshotMetadata]): Unit

    Permalink

    Java API of save.

    Java API of save.

    Must be supplied with a ResultHandler to process successful or failed results.

    Definition Classes
    AbstractEventsourcedComponent
    See also

    EventsourcedView

  65. final def save(snapshot: Any)(handler: Handler[SnapshotMetadata]): Unit

    Permalink

    Asynchronously saves the given snapshot and calls handler with the generated snapshot metadata.

    Asynchronously saves the given snapshot and calls handler with the generated snapshot metadata. The handler can obtain a reference to the initial message sender with sender().

    Definition Classes
    EventsourcedView
  66. implicit final val self: ActorRef

    Permalink
    Definition Classes
    Actor
  67. final def sender(): ActorRef

    Permalink
    Definition Classes
    Actor
  68. def snapshotContext: BehaviorContext

    Permalink

    Returns the snapshot BehaviorContext.

    Returns the snapshot BehaviorContext.

    Definition Classes
    EventsourcedView
  69. def stash(): Unit

    Permalink

    Adds the current command to the user's command stash.

    Adds the current command to the user's command stash. Must not be used in the event handler.

    Definition Classes
    EventsourcedView → StashSupport
  70. def supervisorStrategy: SupervisorStrategy

    Permalink
    Definition Classes
    Actor
  71. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  72. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  73. def unhandled(message: Any): Unit

    Permalink
    Definition Classes
    Actor
  74. def unstashAll(): Unit

    Permalink

    Prepends all stashed commands to the actor's mailbox and then clears the command stash.

    Prepends all stashed commands to the actor's mailbox and then clears the command stash. Has no effect if the actor is recovering i.e. if recovering returns true.

    Definition Classes
    EventsourcedView → StashSupport
  75. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  76. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  77. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AbstractEventsourcedComponent

Inherited from ConditionalRequests

Inherited from EventsourcedVersion

Inherited from EventsourcedView

Inherited from Stash

Inherited from RequiresMessageQueue[DequeBasedMessageQueueSemantics]

Inherited from UnrestrictedStash

Inherited from StashSupport

Inherited from Actor

Inherited from AnyRef

Inherited from Any

Ungrouped