PersistenceTestKitDurableStateStore

org.apache.pekko.persistence.testkit.state.javadsl.PersistenceTestKitDurableStateStore
See thePersistenceTestKitDurableStateStore companion object

Attributes

Companion
object
Source
PersistenceTestKitDurableStateStore.scala
Graph
Supertypes
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

Get a source of the most recent changes made to objects of the given tag since the passed in offset.

Get a source of the most recent changes made to objects of the given tag since the passed in offset.

The returned source will never terminate, it effectively watches for changes to the objects and emits changes as they happen.

Not all changes that occur are guaranteed to be emitted, this call only guarantees that eventually, the most recent change for each object since the offset will be emitted. In particular, multiple updates to a given object in quick succession are likely to be skipped, with only the last update resulting in a change from this source.

The pekko.persistence.query.DurableStateChange elements can be pekko.persistence.query.UpdatedDurableState or pekko.persistence.query.DeletedDurableState.

Value parameters

offset

The offset to get changes since. Must either be pekko.persistence.query.NoOffset to get changes since the beginning of time, or an offset that has been previously returned by this query. Any other offsets are invalid.

tag

The tag to get changes for.

Attributes

Returns

A source of change in state.

Source
PersistenceTestKitDurableStateStore.scala
override def changesBySlices(entityType: String, minSlice: Int, maxSlice: Int, offset: Offset): Source[DurableStateChange[A], NotUsed]

Get a source of the most recent changes made to objects of the given slice range since the passed in offset.

Get a source of the most recent changes made to objects of the given slice range since the passed in offset.

A slice is deterministically defined based on the persistence id. The purpose is to evenly distribute all persistence ids over the slices.

The returned source will never terminate, it effectively watches for changes to the objects and emits changes as they happen.

Not all changes that occur are guaranteed to be emitted, this call only guarantees that eventually, the most recent change for each object since the offset will be emitted. In particular, multiple updates to a given object in quick succession are likely to be skipped, with only the last update resulting in a change from this source.

The pekko.persistence.query.DurableStateChange elements can be pekko.persistence.query.UpdatedDurableState or pekko.persistence.query.DeletedDurableState.

Attributes

Definition Classes
Source
PersistenceTestKitDurableStateStore.scala

Get a source of the most recent changes made to objects with the given tag since the passed in offset.

Get a source of the most recent changes made to objects with the given tag since the passed in offset.

Note that this only returns the most recent change to each object, if an object has been updated multiple times since the offset, only the most recent of those changes will be part of the stream.

This will return changes that occurred up to when the Source returned by this call is materialized. Changes to objects made since materialization are not guaranteed to be included in the results.

The pekko.persistence.query.DurableStateChange elements can be pekko.persistence.query.UpdatedDurableState or pekko.persistence.query.DeletedDurableState.

Value parameters

offset

The offset to get changes since. Must either be pekko.persistence.query.NoOffset to get changes since the beginning of time, or an offset that has been previously returned by this query. Any other offsets are invalid.

tag

The tag to get changes for.

Attributes

Returns

A source of change in state.

Source
PersistenceTestKitDurableStateStore.scala
override def currentChangesBySlices(entityType: String, minSlice: Int, maxSlice: Int, offset: Offset): Source[DurableStateChange[A], NotUsed]

Get a source of the most recent changes made to objects with the given slice range since the passed in offset.

Get a source of the most recent changes made to objects with the given slice range since the passed in offset.

A slice is deterministically defined based on the persistence id. The purpose is to evenly distribute all persistence ids over the slices.

Note that this only returns the most recent change to each object, if an object has been updated multiple times since the offset, only the most recent of those changes will be part of the stream.

This will return changes that occurred up to when the Source returned by this call is materialized. Changes to objects made since materialization are not guaranteed to be included in the results.

The pekko.persistence.query.DurableStateChange elements can be pekko.persistence.query.UpdatedDurableState or pekko.persistence.query.DeletedDurableState.

Attributes

Definition Classes
Source
PersistenceTestKitDurableStateStore.scala
override def currentPersistenceIds(afterId: Optional[String], limit: Long): Source[String, NotUsed]

Get the current persistence ids.

Get the current persistence ids.

Not all plugins may support in database paging, and may simply use drop/take Pekko streams operators to manipulate the result set according to the paging parameters.

Value parameters

afterId

The ID to start returning results from, or empty to return all ids. This should be an id returned from a previous invocation of this command. Callers should not assume that ids are returned in sorted order.

limit

The maximum results to return. Use Long.MAX_VALUE to return all results. Must be greater than zero.

Attributes

Returns

A source containing all the persistence ids, limited as specified.

Definition Classes
Source
PersistenceTestKitDurableStateStore.scala
def deleteObject(persistenceId: String): CompletionStage[Done]

Delete the object with the given persistenceId. This deprecated function ignores whether the object is deleted or not.

Delete the object with the given persistenceId. This deprecated function ignores whether the object is deleted or not.

Value parameters

persistenceId

the persistenceId of the object to delete

revision

the revision of the object to delete

Attributes

Returns

a CompletionStage that completes when the object has been deleted

Source
PersistenceTestKitDurableStateStore.scala
def deleteObject(persistenceId: String, revision: Long): CompletionStage[Done]

Delete the object with the given persistenceId and revision.

Delete the object with the given persistenceId and revision.

Since Pekko v1.1, if the revision does not match the current revision of the object, the delete operation will fail. The returned CompletionStage will complete with a failed result wrapping the exception.

Value parameters

persistenceId

the persistenceId of the object to delete

revision

the revision of the object to delete

Attributes

Returns

a CompletionStage that completes when the object has been deleted

Source
PersistenceTestKitDurableStateStore.scala
def getObject(persistenceId: String): CompletionStage[GetObjectResult[A]]
override def sliceForPersistenceId(persistenceId: String): Int
override def sliceRanges(numberOfRanges: Int): List[Pair[Integer, Integer]]
def upsertObject(persistenceId: String, seqNr: Long, value: A, tag: String): CompletionStage[Done]

Upsert the object with the given persistenceId and revision.

Upsert the object with the given persistenceId and revision.

Value parameters

persistenceId

the persistenceId of the object to upsert

revision

the revision of the object to upsert

tag

a tag to associate with the object

value

the value to upsert

Attributes

Returns

a CompletionStage that completes when the object has been upserted

Source
PersistenceTestKitDurableStateStore.scala