Packages

c

com.digitalasset.canton.domain.sequencing.integrations.state

InMemorySequencerStateManagerStore

class InMemorySequencerStateManagerStore extends SequencerStateManagerStore with NamedLogging

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. InMemorySequencerStateManagerStore
  2. NamedLogging
  3. SequencerStateManagerStore
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new InMemorySequencerStateManagerStore(loggerFactory: NamedLoggerFactory)

Type Members

  1. case class MemberIndex(addedAt: CantonTimestamp, events: Seq[OrdinarySerializedEvent] = Seq.empty, lastAcknowledged: Option[CantonTimestamp] = None, isEnabled: Boolean = true) extends Product with Serializable
  2. case class State(indices: Map[Member, MemberIndex] = Map.empty, pruningLowerBound: Option[CantonTimestamp] = None) extends Product with Serializable

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. def acknowledge(member: Member, timestamp: CantonTimestamp)(implicit traceContext: TraceContext): Future[Unit]

    Write an acknowledgement that member has processed earlier timestamps.

    Write an acknowledgement that member has processed earlier timestamps. Only the latest timestamp needs to be stored. Earlier timestamps can be overwritten. Acknowledgements of earlier timestamps should be ignored.

    Definition Classes
    InMemorySequencerStateManagerStoreSequencerStateManagerStore
  5. def addEvents(events: MemberSignedEvents)(implicit traceContext: TraceContext): Future[Unit]

    Add a new events to the sequencer store.

    Add a new events to the sequencer store. Callers must ensure that all members receiving a counter update have been registered and that the counter values are correct. Callers must also ensure that the timestamp is correct and later than all prior events as this is also not validated by all store implementations. Counter updates for invalid counter values (<0) will cause a java.lang.IllegalArgumentException to be throw. Implementations may throw a java.lang.IllegalArgumentException if a counter update is incorrect (not following the current head), but may not if this is not possible to efficiently do (like with database persistence that would require executing a query to check). Implementations should ensure that all events are written atomically (or none written if a failure is hit).

    Definition Classes
    InMemorySequencerStateManagerStoreSequencerStateManagerStore
  6. def addMember(member: Member, addedAt: CantonTimestamp)(implicit traceContext: TraceContext): Future[Unit]

    Adds a new member to the sequencer.

    Adds a new member to the sequencer. Callers are expected to ensure that the member is not already registered.

    Definition Classes
    InMemorySequencerStateManagerStoreSequencerStateManagerStore
  7. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  8. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  9. def disableMember(member: Member)(implicit traceContext: TraceContext): Future[Unit]

    Prevents member from sending and reading from the sequencer, and allows unread data for this member to be pruned.

    Prevents member from sending and reading from the sequencer, and allows unread data for this member to be pruned. It however won't stop any sends addressed to this member.

    Definition Classes
    InMemorySequencerStateManagerStoreSequencerStateManagerStore
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  12. implicit def errorLoggingContext(implicit traceContext: TraceContext): ErrorLoggingContext
    Attributes
    protected
    Definition Classes
    NamedLogging
  13. def fetchLowerBound()(implicit traceContext: TraceContext): Future[Option[CantonTimestamp]]

    Fetch the lower bound of events that can be read.

    Fetch the lower bound of events that can be read. Returns None if all events can be read.

    Definition Classes
    InMemorySequencerStateManagerStoreSequencerStateManagerStore
  14. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  15. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  16. def isEnabled(member: Member)(implicit traceContext: TraceContext): Future[Boolean]

    Check whether the member is enabled.

    Check whether the member is enabled. Currently used when receiving a request for reading.

    Definition Classes
    InMemorySequencerStateManagerStoreSequencerStateManagerStore
  17. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  18. def latestAcknowledgements()(implicit traceContext: TraceContext): Future[Map[Member, CantonTimestamp]]

    Return the latest acknowledgements for all members

    Return the latest acknowledgements for all members

    Attributes
    protected[integrations.state]
    Definition Classes
    InMemorySequencerStateManagerStoreSequencerStateManagerStore
  19. def logger: TracedLogger
    Attributes
    protected
    Definition Classes
    NamedLogging
  20. val loggerFactory: NamedLoggerFactory
    Attributes
    protected
    Definition Classes
    InMemorySequencerStateManagerStoreNamedLogging
  21. implicit def namedLoggingContext(implicit traceContext: TraceContext): NamedLoggingContext
    Attributes
    protected
    Definition Classes
    NamedLogging
  22. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  23. def noTracingLogger: Logger
    Attributes
    protected
    Definition Classes
    NamedLogging
  24. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  25. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  26. def numberOfEvents()(implicit traceContext: TraceContext): Future[Long]
  27. def prune(requestedTimestamp: CantonTimestamp)(implicit traceContext: TraceContext): Future[PruningResult]
  28. def pruneSync(requestedTimestamp: CantonTimestamp): PruningResult
    Annotations
    @SuppressWarnings()
  29. def readAtTimestamp(timestamp: CantonTimestamp)(implicit traceContext: TraceContext): Future[EphemeralState]

    Rehydrate the sequencer EphemeralState from the backing persisted store

    Rehydrate the sequencer EphemeralState from the backing persisted store

    timestamp

    The timestamp for which the EphemeralState is computed

    Definition Classes
    InMemorySequencerStateManagerStoreSequencerStateManagerStore
  30. def readRange(member: Member, startInclusive: SequencerCounter, endExclusive: SequencerCounter)(implicit traceContext: TraceContext): Source[OrdinarySerializedEvent, NotUsed]

    Extract a range of events for a member.

    Extract a range of events for a member. It is expected that the sequencer will validate requests against its current state so read requests for unregistered members or counter ranges that do not exist should just return an empty source.

    Definition Classes
    InMemorySequencerStateManagerStoreSequencerStateManagerStore
    Exceptions thrown

    java.lang.IllegalArgumentException if startInclusive is not less than endExclusive

  31. def saveLowerBound(ts: CantonTimestamp)(implicit traceContext: TraceContext): EitherT[Future, SaveLowerBoundError, Unit]

    Save an updated lower bound of events that can be read.

    Save an updated lower bound of events that can be read. Must be equal or greater than any prior set lower bound.

    Definition Classes
    InMemorySequencerStateManagerStoreSequencerStateManagerStore
  32. def status()(implicit traceContext: TraceContext): Future[InternalSequencerPruningStatus]

    Build a status object representing the current state of the sequencer.

    Build a status object representing the current state of the sequencer.

    Definition Classes
    InMemorySequencerStateManagerStoreSequencerStateManagerStore
  33. def statusSync(): InternalSequencerPruningStatus
  34. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  35. def toString(): String
    Definition Classes
    AnyRef → Any
  36. def unregisterUnauthenticatedMember(member: UnauthenticatedMemberId): Future[Unit]
  37. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  38. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  39. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from NamedLogging

Inherited from AnyRef

Inherited from Any

Ungrouped