Class

no.nextgentel.oss.akkatools.aggregate

AbstractGeneralAggregate

Related Doc: package aggregate

Permalink

abstract class AbstractGeneralAggregate[S <: AggregateStateJava] extends GeneralAggregate[Any, AggregateStateJava]

Inspired by akka.actor.AbstractActor

Use CmdToEventBuilder the same way you use ReceiveBuilder

S

The type representing your state

Linear Supertypes
GeneralAggregate[Any, AggregateStateJava], EnhancedPersistentShardingActor[Any, AggregateError], EnhancedPersistentActor[Any, AggregateError], MdcSupport[Any], BeforeAndAfterEventAndCommand[Any], DiagnosticActorLogging, AtLeastOnceDelivery, AtLeastOnceDeliveryLike, PersistentActor, Eventsourced, PersistenceRecovery, PersistenceIdentity, StashFactory, Stash, RequiresMessageQueue[DequeBasedMessageQueueSemantics], UnrestrictedStash, StashSupport, Snapshotter, Actor, AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. AbstractGeneralAggregate
  2. GeneralAggregate
  3. EnhancedPersistentShardingActor
  4. EnhancedPersistentActor
  5. MdcSupport
  6. BeforeAndAfterEventAndCommand
  7. DiagnosticActorLogging
  8. AtLeastOnceDelivery
  9. AtLeastOnceDeliveryLike
  10. PersistentActor
  11. Eventsourced
  12. PersistenceRecovery
  13. PersistenceIdentity
  14. StashFactory
  15. Stash
  16. RequiresMessageQueue
  17. UnrestrictedStash
  18. StashSupport
  19. Snapshotter
  20. Actor
  21. AnyRef
  22. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AbstractGeneralAggregate(initialState: AggregateStateJava, dmSelf: ActorPath)

    Permalink

    initialState

    he initial value your state should start with - before anything has happened

    dmSelf

    dmSelf is used as the address where the DM-confirmation-messages should be sent. In a sharding environment, this has to be our dispatcher which knows how to reach the sharding mechanism. If null, we'll fallback to self - useful when testing

Type Members

  1. case class GenerateDMInfo(generateDMViaEvent: Option[PartialFunction[E, ResultingDurableMessages]], generateDMViaState: Option[PartialFunction[S, ResultingDurableMessages]], generateDMViaStateAndEvent: Option[PartialFunction[(S, E), ResultingDurableMessages]], applyEventBefore: Boolean) extends Product with Serializable

    Permalink
    Attributes
    protected
    Definition Classes
    GeneralAggregate
  2. type Receive = PartialFunction[Any, Unit]

    Permalink
    Definition Classes
    Actor

Abstract Value Members

  1. abstract def persistenceIdBase(): String

    Permalink

Concrete 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. def afterOnEvent(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    BeforeAndAfterEventAndCommand
  5. def afterTryCommand(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    BeforeAndAfterEventAndCommand
  6. def aroundPostRestart(reason: Throwable): Unit

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

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

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

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

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

    Permalink
    Definition Classes
    Any
  12. def beforeOnEvent(event: Any): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    MdcSupportBeforeAndAfterEventAndCommand
  13. def beforeTryCommand(cmd: AnyRef): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    MdcSupportBeforeAndAfterEventAndCommand
  14. def canSendAsDurableMessage(): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  15. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  16. def cmdToEvent: PartialFunction[AggregateCmd, ResultingEvent[Any]]

    Permalink
  17. def cmdToEvent(_cmdToEvent: PartialFunction[AggregateCmd, ResultingEventJava]): Unit

    Permalink
  18. def confirmDelivery(deliveryId: Long): Boolean

    Permalink
    Definition Classes
    AtLeastOnceDeliveryLike
  19. implicit val context: ActorContext

    Permalink
    Definition Classes
    Actor
  20. var currentLogLevelInfo: Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  21. def defaultMdc(): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    MdcSupport
  22. def defaultTimeToWaitAfterMaxRedeliverAttemptsBeforeTimeout(): FiniteDuration

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  23. def deferAsync[A](event: A)(handler: (A) ⇒ Unit): Unit

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

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

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

    Permalink
    Definition Classes
    Snapshotter
  27. def deliver(destination: ActorSelection)(deliveryIdToMessage: (Long) ⇒ Any): Unit

    Permalink
    Definition Classes
    AtLeastOnceDeliveryLike
  28. def deliver(destination: ActorPath)(deliveryIdToMessage: (Long) ⇒ Any): Unit

    Permalink
    Definition Classes
    AtLeastOnceDeliveryLike
  29. lazy val dispatchId: String

    Permalink
  30. def doUnconfirmedWarningProcessing(): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  31. def durableMessageNotDeliveredHandler(originalPayload: Any, errorMsg: String): Unit

    Permalink

    If doUnconfirmedWarningProcessing is turned on, then override this method to try to do something useful before we give up

    If doUnconfirmedWarningProcessing is turned on, then override this method to try to do something useful before we give up

    Attributes
    protected
    Definition Classes
    GeneralAggregateEnhancedPersistentActor
  32. implicit val ec: ExecutionContextExecutor

    Permalink
    Definition Classes
    EnhancedPersistentActor
  33. final def eq(arg0: AnyRef): Boolean

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

    Permalink
    Definition Classes
    AnyRef → Any
  35. def extractMdc(eventOrCmd: AnyRef): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    MdcSupport
  36. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  37. def generateDM: PartialFunction[AggregateStateJava, ResultingDurableMessages]

    Permalink
    Definition Classes
    GeneralAggregate
  38. def generateDMAfter: PartialFunction[Any, ResultingDurableMessages]

    Permalink
    Definition Classes
    GeneralAggregate
  39. def generateDMBefore: PartialFunction[Any, ResultingDurableMessages]

    Permalink
    Definition Classes
    GeneralAggregate
  40. def generateDMSE: PartialFunction[(AggregateStateJava, Any), ResultingDurableMessages]

    Permalink
    Definition Classes
    GeneralAggregate
  41. def generateEventsForFailedDurableMessage(originalPayload: Any, errorMsg: String): Seq[Any]

    Permalink

    Override this to decide if the failed outbound durableMessage should result in a persisted event.

    Override this to decide if the failed outbound durableMessage should result in a persisted event. If so, return these events. When these have been persisted, generateResultingDurableMessages() will be called as usual enabling you to perform some outbound action.

    Definition Classes
    GeneralAggregate
  42. def generateResultingDurableMessages: PartialFunction[Any, ResultingDurableMessages]

    Permalink
  43. def generateResultingDurableMessages(_generateResultingDurableMessages: PartialFunction[Any, ResultingDurableMessages]): Unit

    Permalink
  44. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  45. def getDMSelf(): ActorPath

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentShardingActorEnhancedPersistentActor
  46. def getDeliverySnapshot: AtLeastOnceDeliverySnapshot

    Permalink
    Definition Classes
    AtLeastOnceDeliveryLike
  47. def getState(): S

    Permalink
  48. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  49. def idleTimeout(): FiniteDuration

    Permalink
    Definition Classes
    EnhancedPersistentActor
  50. lazy val idleTimeoutValueToUse: FiniteDuration

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  51. def internalProcessUnconfirmedWarning(unconfirmedWarning: UnconfirmedWarning): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    GeneralAggregateEnhancedPersistentActor
  52. def isExpectedError(e: Exception): Boolean

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  53. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  54. def journalPluginId: String

    Permalink
    Definition Classes
    PersistenceIdentity
  55. def lastSequenceNr: Long

    Permalink
    Definition Classes
    Eventsourced
  56. def loadSnapshot(persistenceId: String, criteria: SnapshotSelectionCriteria, toSequenceNr: Long): Unit

    Permalink
    Definition Classes
    Snapshotter
  57. val log: DiagnosticLoggingAdapter

    Permalink
    Definition Classes
    DiagnosticActorLogging
  58. def logMessage(message: String): Unit

    Permalink
    Definition Classes
    EnhancedPersistentActor
  59. def maxUnconfirmedMessages: Int

    Permalink
    Definition Classes
    AtLeastOnceDeliveryLike
  60. def mdc(currentMessage: Any): MDC

    Permalink
    Definition Classes
    MdcSupport → DiagnosticActorLogging
  61. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  62. def nextState(): AggregateStateJava

    Permalink
    Definition Classes
    GeneralAggregate
  63. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  65. def numberOfUnconfirmed: Int

    Permalink
    Definition Classes
    AtLeastOnceDeliveryLike
  66. def onApplyingLiveEvent(event: Any): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  67. def onEvent: PartialFunction[Any, Unit]

    Permalink
  68. def onInactiveTimeout(): Unit

    Permalink

    Called when actor has been idle for too long..

    Called when actor has been idle for too long..

    If running in sharding, you should stop like this:

    getContext().parent().tell(new ShardRegion.Passivate(PoisonPill.getInstance()), self());

    Attributes
    protected
    Definition Classes
    EnhancedPersistentShardingActorEnhancedPersistentActor
  69. def onPersistFailure(cause: Throwable, event: Any, seqNr: Long): Unit

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

    Permalink
    Attributes
    protected
    Definition Classes
    Eventsourced
  71. def onReceiveRecover(event: Any): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  72. def onRecoveryFailure(cause: Throwable, event: Option[Any]): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    Eventsourced
  73. def persist[A](event: A)(handler: (A) ⇒ Unit): Unit

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

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

    Permalink
    Definition Classes
    Eventsourced
  76. def persistAndApplyEvent(event: Any, successHandler: () ⇒ Unit): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  77. def persistAndApplyEvent(event: Any): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  78. def persistAndApplyEvents(events: List[Any], successHandler: () ⇒ Unit): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  79. def persistAndApplyEvents(events: List[Any]): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  80. def persistAsync[A](event: A)(handler: (A) ⇒ Unit): Unit

    Permalink
    Definition Classes
    Eventsourced
  81. def persistenceId: String

    Permalink
    Definition Classes
    EnhancedPersistentShardingActor → PersistenceIdentity
  82. def postRestart(reason: Throwable): Unit

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

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

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

    Permalink
    Definition Classes
    EnhancedPersistentActor → Actor
  86. def previousState(): AggregateStateJava

    Permalink
    Definition Classes
    GeneralAggregate
  87. def receive: Receive

    Permalink
    Definition Classes
    PersistentActor → Actor
  88. def receiveCommand: Receive

    Permalink
    Definition Classes
    EnhancedPersistentActor → Eventsourced
  89. def receiveRecover: Receive

    Permalink
    Definition Classes
    EnhancedPersistentActor → Eventsourced
  90. def recovery: Recovery

    Permalink
    Definition Classes
    PersistenceRecovery
  91. def recoveryFinished: Boolean

    Permalink
    Definition Classes
    Eventsourced
  92. def recoveryRunning: Boolean

    Permalink
    Definition Classes
    Eventsourced
  93. def redeliverInterval: FiniteDuration

    Permalink
    Definition Classes
    AtLeastOnceDeliveryLike
  94. def redeliveryBurstLimit: Int

    Permalink
    Definition Classes
    AtLeastOnceDeliveryLike
  95. def saveSnapshot(snapshot: Any): Unit

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

    Permalink
    Definition Classes
    Actor
  97. def sendAsDurableMessage(sendAsDurableMessage: SendAsDurableMessage): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentShardingActorEnhancedPersistentActor
  98. def sendAsDurableMessage(payload: AnyRef, destinationActor: ActorPath): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentShardingActorEnhancedPersistentActor
  99. def sendAsDurableMessage(payload: AnyRef, destinationActor: ActorPath, confirmationRoutingInfo: AnyRef): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  100. final def sender(): ActorRef

    Permalink
    Definition Classes
    Actor
  101. def setDeliverySnapshot(snapshot: AtLeastOnceDeliverySnapshot): Unit

    Permalink
    Definition Classes
    AtLeastOnceDeliveryLike
  102. def setLogLevels(eventLogLevelInfo: Boolean, recoveringEventLogLevelInfo: Boolean, cmdLogLevelInfo: Boolean): Unit

    Permalink

    eventLogLevelInfo

    Used when processing events live - not recovering

    recoveringEventLogLevelInfo

    Used when recovering events

    cmdLogLevelInfo

    Used when processing commands

    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  103. def setMdcValue(name: String, value: String): Unit

    Permalink
    Attributes
    protected
    Definition Classes
    MdcSupport
  104. def snapshotPluginId: String

    Permalink
    Definition Classes
    PersistenceIdentity
  105. def snapshotSequenceNr: Long

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

    Permalink
    Definition Classes
    Eventsourced → Snapshotter
  107. def stash(): Unit

    Permalink
    Definition Classes
    StashSupport
  108. var state: AggregateStateJava

    Permalink
  109. def stateInfo(): String

    Permalink
    Attributes
    protected
    Definition Classes
    GeneralAggregateEnhancedPersistentActor
  110. def supervisorStrategy: SupervisorStrategy

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  113. def toStringForLogging[T](o: T): String

    Permalink
    Attributes
    protected
    Definition Classes
    EnhancedPersistentActor
  114. final def tryCommand: PartialFunction[AnyRef, Unit]

    Permalink
  115. def unhandled(message: Any): Unit

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

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

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

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  120. def warnAfterNumberOfUnconfirmedAttempts: Int

    Permalink
    Definition Classes
    AtLeastOnceDeliveryLike

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 GeneralAggregate[Any, AggregateStateJava]

Inherited from MdcSupport[Any]

Inherited from BeforeAndAfterEventAndCommand[Any]

Inherited from DiagnosticActorLogging

Inherited from AtLeastOnceDelivery

Inherited from AtLeastOnceDeliveryLike

Inherited from PersistentActor

Inherited from Eventsourced

Inherited from PersistenceRecovery

Inherited from PersistenceIdentity

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