Class Persistence

java.lang.Object
org.apache.pekko.persistence.Persistence
All Implemented Interfaces:
Extension

public class Persistence extends Object implements Extension
Persistence extension.
  • Constructor Details

  • Method Details

    • get

      public static Persistence get(ActorSystem system)
      Java API.
    • get

      public static Persistence get(ClassicActorSystemProvider system)
    • createExtension

      public static Persistence createExtension(ExtendedActorSystem system)
    • lookup

      public static Persistence$ lookup()
    • JournalFallbackConfigPath

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

      public static 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)
    • apply

      public static T apply(ClassicActorSystemProvider system)
    • hashCode

      public static final int hashCode()
    • equals

      public static final boolean equals(Object other)
    • system

      public ExtendedActorSystem system()
    • defaultInternalStashOverflowStrategy

      public StashOverflowStrategy defaultInternalStashOverflowStrategy()
    • settings

      public PersistenceSettings settings()
    • adaptersFor

      public final EventAdapters adaptersFor(String journalPluginId)
      Returns an pekko.persistence.journal.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(String journalPluginId, com.typesafe.config.Config journalPluginConfig)
      Returns an pekko.persistence.journal.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 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(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 List<Pair<Integer,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).