Class Persistence

  • All Implemented Interfaces:
    Extension

    public class Persistence
    extends java.lang.Object
    implements Extension
    Persistence extension.
    • Method Detail

      • JournalFallbackConfigPath

        public static java.lang.String JournalFallbackConfigPath()
        Config path to fall-back to if a setting is not defined in a specific plugin's config section
      • SnapshotStoreFallbackConfigPath

        public static java.lang.String SnapshotStoreFallbackConfigPath()
        Config path to fall-back to if a setting is not defined in a specific snapshot plugin's config section
      • apply

        public static T apply​(ActorSystem system)
      • hashCode

        public static final int hashCode()
      • equals

        public static final boolean equals​(java.lang.Object other)
      • defaultInternalStashOverflowStrategy

        public StashOverflowStrategy defaultInternalStashOverflowStrategy()
      • adaptersFor

        public final EventAdapters adaptersFor​(java.lang.String journalPluginId)
        Returns an EventAdapters object which serves as a per-journal collection of bound event adapters. If no adapters are registered for a given journal the EventAdapters object will simply return the identity adapter for each class, otherwise the most specific adapter matching a given class will be returned.
      • adaptersFor

        public final EventAdapters adaptersFor​(java.lang.String journalPluginId,
                                               com.typesafe.config.Config journalPluginConfig)
        Returns an EventAdapters object which serves as a per-journal collection of bound event adapters. If no adapters are registered for a given journal the EventAdapters object will simply return the identity adapter for each class, otherwise the most specific adapter matching a given class will be returned.

        The provided journalPluginConfig will be used to configure the plugin instead of the actor system config.

      • persistenceId

        public java.lang.String persistenceId​(ActorRef persistentActor)
        Creates a canonical persistent actor id from a persistent actor ref.
      • numberOfSlices

        public final int numberOfSlices()
        A slice is deterministically defined based on the persistence id. numberOfSlices is not configurable because changing the value would result in different slice for a persistence id than what was used before, which would result in invalid eventsBySlices.

        numberOfSlices is 1024

      • sliceForPersistenceId

        public final int sliceForPersistenceId​(java.lang.String persistenceId)
        A slice is deterministically defined based on the persistence id. The purpose is to evenly distribute all persistence ids over the slices and be able to query the events for a range of slices.
      • sliceRanges

        public final scala.collection.immutable.IndexedSeq<scala.collection.immutable.Range> sliceRanges​(int numberOfRanges)
        Scala API: Split the total number of slices into ranges by the given numberOfRanges.

        For example, numberOfSlices is 1024 and given 4 numberOfRanges this method will return ranges (0 to 255), (256 to 511), (512 to 767) and (768 to 1023).

      • getSliceRanges

        public final java.util.List<Pair<java.lang.Integer,​java.lang.Integer>> getSliceRanges​(int numberOfRanges)
        Java API: Split the total number of slices into ranges by the given numberOfRanges.

        For example, numberOfSlices is 128 and given 4 numberOfRanges this method will return ranges (0 to 255), (256 to 511), (512 to 767) and (768 to 1023).