Class/Object

net.artsy.atomic.AtomicEventStore

EventLog

Related Docs: object EventLog | package AtomicEventStore

Permalink

class EventLog extends PersistentFSM[EventLogState, EventLogData, EventLogInternalEvent] with Stash

Actor responsible for processing and persisting events within a scope.

When reading the code below, it's important to note that there are 3 distinct senses of the term event:

- External events -- the permanent events clients care about - Internal events -- represent all changes to the stored data, whether for internal use (transient) or external visibility (permanent) - Persistent FSM Events -- wrappers for internal events that bundle the stored data as well

In addition, there are 2 distinct senses of the idea of state:

- Persistent FSM state -- the two modes the actor can be in - Actor state -- the locally managed data

Linear Supertypes
PersistentFSM[EventLogState, EventLogData, EventLogInternalEvent], PersistentFSMBase[EventLogState, EventLogData, EventLogInternalEvent], ActorLogging, Listeners, PersistentActor, Eventsourced, PersistenceRecovery, PersistenceIdentity, PersistenceStash, StashFactory, Stash, RequiresMessageQueue[DequeBasedMessageQueueSemantics], UnrestrictedStash, StashSupport, Snapshotter, Actor, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. EventLog
  2. PersistentFSM
  3. PersistentFSMBase
  4. ActorLogging
  5. Listeners
  6. PersistentActor
  7. Eventsourced
  8. PersistenceRecovery
  9. PersistenceIdentity
  10. PersistenceStash
  11. StashFactory
  12. Stash
  13. RequiresMessageQueue
  14. UnrestrictedStash
  15. StashSupport
  16. Snapshotter
  17. Actor
  18. AnyRef
  19. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Instance Constructors

  1. new EventLog(scopeId: String, validationTimeout: FiniteDuration)

    Permalink

    scopeId

    separates this log from others, both by storage and provided atomicity

Type Members

  1. type Event = akka.persistence.fsm.PersistentFSM.Event[EventLogData]

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

    Permalink
    Definition Classes
    Actor
  3. type State = akka.persistence.fsm.PersistentFSM.State[EventLogState, EventLogData, EventLogInternalEvent]

    Permalink
    Definition Classes
    PersistentFSMBase
  4. type StateFunction = PartialFunction[Event, State]

    Permalink
    Definition Classes
    PersistentFSMBase
  5. type StopEvent = akka.persistence.fsm.PersistentFSM.StopEvent[EventLogState, EventLogData]

    Permalink
    Definition Classes
    PersistentFSMBase
  6. type Timeout = Option[FiniteDuration]

    Permalink
    Definition Classes
    PersistentFSMBase
  7. final class TransformHelper extends AnyRef

    Permalink
    Definition Classes
    PersistentFSMBase
  8. type TransitionHandler = PartialFunction[(EventLogState, EventLogState), Unit]

    Permalink
    Definition Classes
    PersistentFSMBase

Value Members

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  3. val ->: akka.persistence.fsm.PersistentFSM.->.type

    Permalink
    Definition Classes
    PersistentFSMBase
  4. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  5. val Event: akka.persistence.fsm.PersistentFSM.Event.type

    Permalink
    Definition Classes
    PersistentFSMBase
  6. val StateTimeout: akka.persistence.fsm.PersistentFSM.StateTimeout.type

    Permalink
    Definition Classes
    PersistentFSMBase
  7. val StopEvent: akka.persistence.fsm.PersistentFSM.StopEvent.type

    Permalink
    Definition Classes
    PersistentFSMBase
  8. def applyEvent(domainEvent: EventLogInternalEvent, currentData: EventLogData): EventLogData

    Permalink
    Definition Classes
    EventLog → PersistentFSM
  9. def aroundPostRestart(reason: Throwable): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Eventsourced → Actor
  10. def aroundPostStop(): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Eventsourced → Actor
  11. def aroundPreRestart(reason: Throwable, message: Option[Any]): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Eventsourced → Actor
  12. def aroundPreStart(): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Eventsourced → Actor
  13. def aroundReceive(receive: Receive, message: Any): Unit

    Permalink
    Attributes
    protected[akka]
    Definition Classes
    Eventsourced → Actor
  14. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  15. final def cancelTimer(name: String): Unit

    Permalink
    Definition Classes
    PersistentFSMBase
  16. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  17. implicit val context: ActorContext

    Permalink
    Definition Classes
    Actor
  18. def deferAsync[A](event: A)(handler: (A) ⇒ Unit): Unit

    Permalink
    Definition Classes
    Eventsourced
  19. def deleteMessages(toSequenceNr: Long): Unit

    Permalink
    Definition Classes
    Eventsourced
  20. def deleteSnapshot(sequenceNr: Long): Unit

    Permalink
    Definition Classes
    Snapshotter
  21. def deleteSnapshots(criteria: SnapshotSelectionCriteria): Unit

    Permalink
    Definition Classes
    Snapshotter
  22. def domainEventClassTag: ClassTag[EventLogInternalEvent]

    Permalink
    Definition Classes
    EventLog → PersistentFSM
  23. val domainEventTag: ClassTag[EventLogInternalEvent]

    Permalink
    Definition Classes
    PersistentFSM
  24. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef → Any
  26. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  27. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  28. def gossip(msg: Any)(implicit sender: ActorRef): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Listeners
  29. final def goto(nextStateName: EventLogState): State

    Permalink
    Definition Classes
    PersistentFSMBase
  30. val handleQuery: StateFunction

    Permalink

    StateFunction for managing queries.

    StateFunction for managing queries. This is factored out so that it can be composed with the state-specific StateFunctions below, so that it is always available.

  31. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  32. final def initialize(): Unit

    Permalink
    Definition Classes
    PersistentFSMBase
  33. def internalStashOverflowStrategy: StashOverflowStrategy

    Permalink
    Definition Classes
    PersistenceStash
  34. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  35. final def isTimerActive(name: String): Boolean

    Permalink
    Definition Classes
    PersistentFSMBase
  36. def journalPluginId: String

    Permalink
    Definition Classes
    PersistenceIdentity
  37. def lastSequenceNr: Long

    Permalink
    Definition Classes
    Eventsourced
  38. def listenerManagement: akka.actor.Actor.Receive

    Permalink
    Attributes
    protected
    Definition Classes
    Listeners
  39. val listeners: Set[ActorRef]

    Permalink
    Attributes
    protected
    Definition Classes
    Listeners
  40. def loadSnapshot(persistenceId: String, criteria: SnapshotSelectionCriteria, toSequenceNr: Long): Unit

    Permalink
    Definition Classes
    Snapshotter
  41. def log: LoggingAdapter

    Permalink
    Definition Classes
    ActorLogging
  42. def logTermination(reason: Reason): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    PersistentFSMBase
  43. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  44. final def nextStateData: EventLogData

    Permalink
    Definition Classes
    PersistentFSMBase
  45. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  47. def onPersistFailure(cause: Throwable, event: Any, seqNr: Long): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Eventsourced
  48. def onPersistRejected(cause: Throwable, event: Any, seqNr: Long): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Eventsourced
  49. def onRecoveryCompleted(): Unit

    Permalink
    Definition Classes
    PersistentFSM
  50. def onRecoveryFailure(cause: Throwable, event: Option[Any]): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Eventsourced
  51. final def onTermination(terminationHandler: PartialFunction[StopEvent, Unit]): Unit

    Permalink
    Definition Classes
    PersistentFSMBase
  52. final def onTransition(transitionHandler: TransitionHandler): Unit

    Permalink
    Definition Classes
    PersistentFSMBase
  53. def persist[A](event: A)(handler: (A) ⇒ Unit): Unit

    Permalink
    Definition Classes
    Eventsourced
  54. def persistAll[A](events: Seq[A])(handler: (A) ⇒ Unit): Unit

    Permalink
    Definition Classes
    Eventsourced
  55. def persistAllAsync[A](events: Seq[A])(handler: (A) ⇒ Unit): Unit

    Permalink
    Definition Classes
    Eventsourced
  56. def persistAsync[A](event: A)(handler: (A) ⇒ Unit): Unit

    Permalink
    Definition Classes
    Eventsourced
  57. def persistenceId: String

    Permalink
    Definition Classes
    EventLog → PersistenceIdentity
  58. def postRestart(reason: Throwable): Unit

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

    Permalink
    Definition Classes
    PersistentFSMBase → Actor
  60. def preRestart(reason: Throwable, message: Option[Any]): Unit

    Permalink
    Definition Classes
    UnrestrictedStash → Actor
  61. def preStart(): Unit

    Permalink
    Definition Classes
    Actor
    Annotations
    @throws( classOf[java.lang.Exception] )
  62. def receive: Receive

    Permalink
    Definition Classes
    PersistentFSMBase → Actor
  63. def receiveCommand: Receive

    Permalink
    Definition Classes
    PersistentFSM → Eventsourced
  64. def receiveRecover: Receive

    Permalink
    Definition Classes
    PersistentFSM → Eventsourced
  65. def recovery: Recovery

    Permalink
    Definition Classes
    PersistenceRecovery
  66. def recoveryFinished: Boolean

    Permalink
    Definition Classes
    Eventsourced
  67. def recoveryRunning: Boolean

    Permalink
    Definition Classes
    Eventsourced
  68. def saveSnapshot(snapshot: Any): Unit

    Permalink
    Definition Classes
    Snapshotter
  69. implicit final val self: ActorRef

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

    Permalink
    Definition Classes
    Actor
  71. final def setStateTimeout(state: EventLogState, timeout: Timeout): Unit

    Permalink
    Definition Classes
    PersistentFSMBase
  72. final def setTimer(name: String, msg: Any, timeout: FiniteDuration, repeat: Boolean): Unit

    Permalink
    Definition Classes
    PersistentFSMBase
  73. def snapshotPluginId: String

    Permalink
    Definition Classes
    PersistenceIdentity
  74. def snapshotSequenceNr: Long

    Permalink
    Definition Classes
    Eventsourced → Snapshotter
  75. def snapshotterId: String

    Permalink
    Definition Classes
    Eventsourced → Snapshotter
  76. final def startWith(stateName: EventLogState, stateData: EventLogData, timeout: Timeout): Unit

    Permalink
    Definition Classes
    PersistentFSMBase
  77. def stash(): Unit

    Permalink
    Definition Classes
    StashSupport
  78. final def stateData: EventLogData

    Permalink
    Definition Classes
    PersistentFSMBase
  79. final def stateName: EventLogState

    Permalink
    Definition Classes
    PersistentFSMBase
  80. lazy val statesMap: Map[String, EventLogState]

    Permalink
    Definition Classes
    PersistentFSM
  81. final def stay(): State

    Permalink
    Definition Classes
    PersistentFSMBase
  82. final def stop(reason: Reason, stateData: EventLogData): State

    Permalink
    Definition Classes
    PersistentFSMBase
  83. final def stop(reason: Reason): State

    Permalink
    Definition Classes
    PersistentFSMBase
  84. final def stop(): State

    Permalink
    Definition Classes
    PersistentFSMBase
  85. def supervisorStrategy: SupervisorStrategy

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  88. implicit final def total2pf(transitionHandler: (EventLogState, EventLogState) ⇒ Unit): TransitionHandler

    Permalink
    Definition Classes
    PersistentFSMBase
  89. final def transform(func: StateFunction): TransformHelper

    Permalink
    Definition Classes
    PersistentFSMBase
  90. def unhandled(message: Any): Unit

    Permalink
    Definition Classes
    Eventsourced → Actor
  91. def unstashAll(): Unit

    Permalink
    Definition Classes
    Eventsourced → StashSupport
  92. final def wait(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  95. final def when(stateName: EventLogState, stateTimeout: FiniteDuration)(stateFunction: StateFunction): Unit

    Permalink
    Definition Classes
    PersistentFSMBase
  96. final def whenUnhandled(stateFunction: StateFunction): Unit

    Permalink
    Definition Classes
    PersistentFSMBase

Deprecated Value Members

  1. def persist[A](events: Seq[A])(handler: (A) ⇒ Unit): Unit

    Permalink
    Definition Classes
    Eventsourced
    Annotations
    @deprecated
    Deprecated

    (Since version 2.4) use persistAll instead

  2. def persistAsync[A](events: Seq[A])(handler: (A) ⇒ Unit): Unit

    Permalink
    Definition Classes
    Eventsourced
    Annotations
    @deprecated
    Deprecated

    (Since version 2.4) use persistAllAsync instead

Inherited from PersistentFSM[EventLogState, EventLogData, EventLogInternalEvent]

Inherited from PersistentFSMBase[EventLogState, EventLogData, EventLogInternalEvent]

Inherited from ActorLogging

Inherited from Listeners

Inherited from PersistentActor

Inherited from Eventsourced

Inherited from PersistenceRecovery

Inherited from PersistenceIdentity

Inherited from PersistenceStash

Inherited from StashFactory

Inherited from Stash

Inherited from RequiresMessageQueue[DequeBasedMessageQueueSemantics]

Inherited from UnrestrictedStash

Inherited from StashSupport

Inherited from Snapshotter

Inherited from Actor

Inherited from AnyRef

Inherited from Any

Ungrouped