package persistence
- Alphabetic
- Public
- Protected
Package Members
Type Members
-   abstract  class AbstractPersistentActor extends AbstractActor with AbstractPersistentActorLikeJava API: an persistent actor - can be used to implement command or Event Sourcing. 
-   abstract  class AbstractPersistentActorWithAtLeastOnceDelivery extends AbstractPersistentActor with AtLeastOnceDeliveryLikeJava API: compatible with lambda expressions Java API: compatible with lambda expressions Use this class instead of AbstractPersistentActorto send messages with at-least-once delivery semantics to destinations. Full documentation in AtLeastOnceDelivery.
-   abstract  class AbstractPersistentActorWithTimers extends AbstractActor with Timers with AbstractPersistentActorLikeJava API: Combination of AbstractPersistentActor and akka.actor.AbstractActorWithTimers. 
-    trait AtLeastOnceDelivery extends PersistentActor with AtLeastOnceDeliveryLikeScala API: Mix-in this trait with your PersistentActorto send messages with at-least-once delivery semantics to destinations.Scala API: Mix-in this trait with your PersistentActorto send messages with at-least-once delivery semantics to destinations. It takes care of re-sending messages when they have not been confirmed within a configurable timeout. Use the AtLeastOnceDeliveryLike#deliver method to send a message to a destination. Call the AtLeastOnceDeliveryLike#confirmDelivery method when the destination has replied with a confirmation message.At-least-once delivery implies that original message send order is not always retained and the destination may receive duplicate messages due to possible resends. The interval between redelivery attempts can be defined by AtLeastOnceDeliveryLike#redeliverInterval. After a number of delivery attempts a AtLeastOnceDelivery.UnconfirmedWarning message will be sent to self. The re-sending will still continue, but you can choose to call AtLeastOnceDeliveryLike#confirmDelivery to cancel the re-sending.The AtLeastOnceDeliverytrait has a state consisting of unconfirmed messages and a sequence number. It does not store this state itself. You must persist events corresponding to thedeliverandconfirmDeliveryinvocations from yourPersistentActorso that the state can be restored by calling the same methods during the recovery phase of thePersistentActor. Sometimes these events can be derived from other business level events, and sometimes you must create separate events. During recovery calls todeliverwill not send out the message, but it will be sent later if no matchingconfirmDeliverywas performed.Support for snapshots is provided by AtLeastOnceDeliveryLike#getDeliverySnapshot and AtLeastOnceDeliveryLike#setDeliverySnapshot. The AtLeastOnceDeliverySnapshotcontains the full delivery state, including unconfirmed messages. If you need a custom snapshot for other parts of the actor state you must also include theAtLeastOnceDeliverySnapshot. It is serialized using protobuf with the ordinary Akka serialization mechanism. It is easiest to include the bytes of theAtLeastOnceDeliverySnapshotas a blob in your custom snapshot.- See also
- AbstractPersistentActorWithAtLeastOnceDelivery for Java API 
 
-    trait AtLeastOnceDeliveryLike extends Eventsourced- See also
 
-  final case class AtomicWrite(payload: Seq[PersistentRepr]) extends PersistentEnvelope with Message with Product with Serializable
-  sealed abstract class CapabilityFlag extends AnyRef
-  sealed trait CapabilityFlags extends AnyRef
-   final  case class DeleteMessagesFailure(cause: Throwable, toSequenceNr: Long) extends Response with Product with SerializableReply message to a failed JournalProtocol.DeleteMessagesTo request. 
-   final  case class DeleteMessagesSuccess(toSequenceNr: Long) extends Response with Product with SerializableReply message to a successful JournalProtocol.DeleteMessagesTo request. 
-   final  case class DeleteSnapshotFailure(metadata: SnapshotMetadata, cause: Throwable) extends Response with Product with SerializableSent to a PersistentActor after failed deletion of a snapshot. Sent to a PersistentActor after failed deletion of a snapshot. - metadata
- snapshot metadata. 
- cause
- failure cause. 
 - Annotations
- @SerialVersionUID()
 
-   final  case class DeleteSnapshotSuccess(metadata: SnapshotMetadata) extends Response with Product with SerializableSent to a PersistentActor after successful deletion of a snapshot. Sent to a PersistentActor after successful deletion of a snapshot. - metadata
- snapshot metadata. 
 - Annotations
- @SerialVersionUID()
 
-   final  case class DeleteSnapshotsFailure(criteria: SnapshotSelectionCriteria, cause: Throwable) extends Response with Product with SerializableSent to a PersistentActor after failed deletion of a range of snapshots. Sent to a PersistentActor after failed deletion of a range of snapshots. - criteria
- snapshot selection criteria. 
- cause
- failure cause. 
 - Annotations
- @SerialVersionUID()
 
-   final  case class DeleteSnapshotsSuccess(criteria: SnapshotSelectionCriteria) extends Response with Product with SerializableSent to a PersistentActor after successful deletion of specified range of snapshots. Sent to a PersistentActor after successful deletion of specified range of snapshots. - criteria
- snapshot selection criteria. 
 - Annotations
- @SerialVersionUID()
 
-  final class DiscardConfigurator extends StashOverflowStrategyConfigurator
-  trait JournalCapabilityFlags extends CapabilityFlags
-    class Persistence extends ExtensionPersistence extension. 
-    trait PersistenceIdentity extends AnyRefIdentification of PersistentActor. 
-  trait PersistenceRecovery extends AnyRef
-   final  class PersistenceSettings extends AnyRefPersistence configuration. 
-  trait PersistenceStash extends Stash with StashFactory
-    trait PersistentActor extends Eventsourced with PersistenceIdentityScala API: A persistent Actor - can be used to implement command or Event Sourcing. 
-    trait PersistentRepr extends MessagePlugin API: representation of a persistent message in the journal plugin API. Plugin API: representation of a persistent message in the journal plugin API. - Annotations
- @DoNotInherit()
- See also
 
-  abstract class PluginSpec extends TestKitBase with AnyWordSpecLike with Matchers with BeforeAndAfterAll with BeforeAndAfterEach
-   final  case class Recovery(fromSnapshot: SnapshotSelectionCriteria = SnapshotSelectionCriteria.Latest, toSequenceNr: Long = Long.MaxValue, replayMax: Long = Long.MaxValue) extends Product with SerializableRecovery mode configuration object to be returned in PersistentActor#recovery. Recovery mode configuration object to be returned in PersistentActor#recovery. By default recovers from latest snapshot replays through to the last available event (last sequenceId). Recovery will start from a snapshot if the persistent actor has previously saved one or more snapshots and at least one of these snapshots matches the specified fromSnapshotcriteria. Otherwise, recovery will start from scratch by replaying all stored events.If recovery starts from a snapshot, the persistent actor is offered that snapshot with a SnapshotOffer message, followed by replayed messages, if any, that are younger than the snapshot, up to the specified upper sequence number bound ( toSequenceNr).- fromSnapshot
- criteria for selecting a saved snapshot from which recovery should start. Default is latest (= youngest) snapshot. 
- toSequenceNr
- upper sequence number bound (inclusive) for recovery. Default is no upper bound. 
- replayMax
- maximum number of messages to replay. Default is no limit. 
 - Annotations
- @SerialVersionUID()
 
-  abstract class RecoveryCompleted extends AnyRef
-  final class RecoveryTimedOut extends RuntimeException with NoStackTrace
-   final  case class ReplyToStrategy(response: Any) extends StashOverflowStrategy with Product with SerializableReply to sender with predefined response, and discard the received message silently. Reply to sender with predefined response, and discard the received message silently. - response
- the message replying to sender with 
 
-  trait RuntimePluginConfig extends AnyRef
-   final  case class SaveSnapshotFailure(metadata: SnapshotMetadata, cause: Throwable) extends Response with Product with SerializableSent to a PersistentActor after failed saving of a snapshot. Sent to a PersistentActor after failed saving of a snapshot. - metadata
- snapshot metadata. 
- cause
- failure cause. 
 - Annotations
- @SerialVersionUID()
 
-   final  case class SaveSnapshotSuccess(metadata: SnapshotMetadata) extends Response with Product with SerializableSent to a PersistentActor after successful saving of a snapshot. Sent to a PersistentActor after successful saving of a snapshot. - metadata
- snapshot metadata. 
 - Annotations
- @SerialVersionUID()
 
-   final  case class SelectedSnapshot(metadata: SnapshotMetadata, snapshot: Any) extends Product with SerializablePlugin API: a selected snapshot matching SnapshotSelectionCriteria. Plugin API: a selected snapshot matching SnapshotSelectionCriteria. - metadata
- snapshot metadata. 
- snapshot
- snapshot. 
 
-   final  class SerializedEvent extends AnyRefSome journal implementations may support events of this type by writing the event payload and serialization information without having to serialize it. 
-   final  class SnapshotMetadata extends Product3[String, Long, Long] with SerializableSnapshot metadata. Snapshot metadata. - Annotations
- @SerialVersionUID()
 
-   final  case class SnapshotOffer(metadata: SnapshotMetadata, snapshot: Any) extends Product with SerializableOffers a PersistentActor a previously saved snapshotduring recovery.Offers a PersistentActor a previously saved snapshotduring recovery. This offer is received before any further replayed messages.- Annotations
- @SerialVersionUID()
 
-   final  case class SnapshotSelectionCriteria(maxSequenceNr: Long = Long.MaxValue, maxTimestamp: Long = Long.MaxValue, minSequenceNr: Long = 0L, minTimestamp: Long = 0L) extends Product with SerializableSelection criteria for loading and deleting snapshots. Selection criteria for loading and deleting snapshots. - maxSequenceNr
- upper bound for a selected snapshot's sequence number. Default is no upper bound, i.e. - Long.MaxValue
- maxTimestamp
- upper bound for a selected snapshot's timestamp. Default is no upper bound, i.e. - Long.MaxValue
- minSequenceNr
- lower bound for a selected snapshot's sequence number. Default is no lower bound, i.e. - 0L
- minTimestamp
- lower bound for a selected snapshot's timestamp. Default is no lower bound, i.e. - 0L
 - Annotations
- @SerialVersionUID()
- See also
 
-  trait SnapshotStoreCapabilityFlags extends CapabilityFlags
-    trait Snapshotter extends ActorSnapshot API on top of the internal snapshot protocol. 
-   sealed  trait StashOverflowStrategy extends AnyRefThis defines how to handle the current received message which failed to stash, when the size of Stash exceeding the capacity of Stash. 
-    trait StashOverflowStrategyConfigurator extends AnyRefImplement this interface in order to configure the stashOverflowStrategy for the internal stash of persistent actor. Implement this interface in order to configure the stashOverflowStrategy for the internal stash of persistent actor. An instance of this class must be instantiable using a no-arg constructor. 
-  final case class TestPayload(ref: ActorRef) extends Product with Serializable
-  class TestSerializer extends SerializerWithStringManifest
-  final class ThrowExceptionConfigurator extends StashOverflowStrategyConfigurator
Value Members
-  object AtLeastOnceDelivery
-  object AtomicWrite extends Serializable
-  object CapabilityFlag
-    case object DiscardToDeadLetterStrategy extends StashOverflowStrategy with Product with SerializableDiscard the message to akka.actor.DeadLetter. 
-    case object FilteredPayload extends Product with SerializableIn some use cases with projections and events by slice filtered events needs to be stored in the journal to keep the sequence numbers for a given persistence id gap free. In some use cases with projections and events by slice filtered events needs to be stored in the journal to keep the sequence numbers for a given persistence id gap free. This placeholder payload is used for those cases and serialized down to a 0-byte representation when stored in the database. This payload is not in general expected to show up for users but in some scenarios/queries it may. In the typed queries EventEnvelopethis should be flagged asfilteredand turned into a non-present payload by the query plugin implementations.
-    object Persistence extends ExtensionId[Persistence] with ExtensionIdProviderPersistence extension provider. 
-  object PersistentRepr extends Serializable
-  object Recovery extends Serializable
-    case object RecoveryCompleted extends RecoveryCompleted with Product with SerializableSent to a PersistentActor when the journal replay has been finished. Sent to a PersistentActor when the journal replay has been finished. - Annotations
- @SerialVersionUID()
 
-  object SelectedSnapshot extends Serializable
-  object SnapshotMetadata extends AbstractFunction3[String, Long, Long, SnapshotMetadata] with Serializable
-  object SnapshotSelectionCriteria extends Serializable
-    case object ThrowOverflowExceptionStrategy extends StashOverflowStrategy with Product with SerializableThrow akka.actor.StashOverflowException, hence the persistent actor will starting recovery if guarded by default supervisor strategy. Throw akka.actor.StashOverflowException, hence the persistent actor will starting recovery if guarded by default supervisor strategy. Be carefully if used together with persist/persistAll or has many messages needed to replay.