Interface DurableStateStoreBySliceQuery<A>
-
- All Superinterfaces:
DurableStateStore<A>
- All Known Implementing Classes:
PersistenceTestKitDurableStateStore
public interface DurableStateStoreBySliceQuery<A> extends DurableStateStore<A>
Query API for reading durable state objects.For Java API see
DurableStateStoreBySliceQuery
.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Source<DurableStateChange<A>,NotUsed>
changesBySlices(java.lang.String entityType, int minSlice, int maxSlice, Offset offset)
Get a source of the most recent changes made to objects of the given slice range since the passed in offset.Source<DurableStateChange<A>,NotUsed>
currentChangesBySlices(java.lang.String entityType, int minSlice, int maxSlice, Offset offset)
Get a source of the most recent changes made to objects with the given slice range since the passed in offset.int
sliceForPersistenceId(java.lang.String persistenceId)
scala.collection.immutable.Seq<scala.collection.immutable.Range>
sliceRanges(int numberOfRanges)
-
Methods inherited from interface akka.persistence.state.scaladsl.DurableStateStore
getObject
-
-
-
-
Method Detail
-
changesBySlices
Source<DurableStateChange<A>,NotUsed> changesBySlices(java.lang.String entityType, int minSlice, int maxSlice, Offset 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
DurableStateChange
elements can beUpdatedDurableState
orDeletedDurableState
.
-
currentChangesBySlices
Source<DurableStateChange<A>,NotUsed> currentChangesBySlices(java.lang.String entityType, int minSlice, int maxSlice, Offset 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
DurableStateChange
elements can beUpdatedDurableState
orDeletedDurableState
.
-
sliceForPersistenceId
int sliceForPersistenceId(java.lang.String persistenceId)
-
sliceRanges
scala.collection.immutable.Seq<scala.collection.immutable.Range> sliceRanges(int numberOfRanges)
-
-