com.digitalasset.canton.participant.store.memory
InMemoryParticipantEventLog
Companion object InMemoryParticipantEventLog
class InMemoryParticipantEventLog extends InMemorySingleDimensionEventLog[ParticipantEventLogId] with ParticipantEventLog
- Alphabetic
- By Inheritance
- InMemoryParticipantEventLog
- ParticipantEventLog
- AutoCloseable
- InMemorySingleDimensionEventLog
- NamedLogging
- SingleDimensionEventLog
- SingleDimensionEventLogLookup
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new InMemoryParticipantEventLog(id: ParticipantEventLogId, loggerFactory: NamedLoggerFactory)(implicit ec: ExecutionContext)
Type Members
- case class Entries(eventsByOffset: SortedMap[LocalOffset, TimestampedEvent], eventsByEventId: Map[EventId, TimestampedEvent]) extends Product with Serializable
- Attributes
- protected
- Definition Classes
- InMemorySingleDimensionEventLog
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
- def close(): Unit
- Definition Classes
- InMemoryParticipantEventLog → AutoCloseable
- def deleteAfter(exclusive: LocalOffset)(implicit traceContext: TraceContext): Future[Unit]
Deletes all events whose local offset is greater than
exclusive
.Deletes all events whose local offset is greater than
exclusive
. This operation need not execute atomically.- Definition Classes
- InMemorySingleDimensionEventLog → SingleDimensionEventLog
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- implicit def errorLoggingContext(implicit traceContext: TraceContext): ErrorLoggingContext
- Attributes
- protected
- Definition Classes
- NamedLogging
- def eventAt(offset: LocalOffset)(implicit traceContext: TraceContext): OptionT[Future, TimestampedEvent]
- Definition Classes
- InMemorySingleDimensionEventLog → SingleDimensionEventLogLookup
- def eventById(eventId: EventId)(implicit traceContext: TraceContext): OptionT[Future, TimestampedEvent]
- Definition Classes
- InMemorySingleDimensionEventLog → SingleDimensionEventLog
- def eventByTransactionId(transactionId: LedgerTransactionId)(implicit traceContext: TraceContext): OptionT[Future, TimestampedEvent]
- Definition Classes
- SingleDimensionEventLog
- implicit val executionContext: ExecutionContext
- Attributes
- protected
- Definition Classes
- InMemorySingleDimensionEventLog → SingleDimensionEventLog
- def existsBetween(timestampInclusive: CantonTimestamp, localOffsetInclusive: LocalOffset)(implicit traceContext: TraceContext): Future[Boolean]
Returns whether there exists an event in the event log with an com.digitalasset.canton.participant.LocalOffset of at most
localOffset
whose timestamp is at leasttimestamp
.Returns whether there exists an event in the event log with an com.digitalasset.canton.participant.LocalOffset of at most
localOffset
whose timestamp is at leasttimestamp
.In an event logs where timestamps need not increase with offsets, this can be used to check that whether there are events with lower offsets and larger timestamps.
- Definition Classes
- InMemorySingleDimensionEventLog → SingleDimensionEventLog
- def firstEventWithAssociatedDomainAtOrAfter(associatedDomain: DomainId, atOrAfter: CantonTimestamp)(implicit traceContext: TraceContext): Future[Option[TimestampedEvent]]
Returns the first event (by offset ordering) whose com.digitalasset.canton.participant.sync.TimestampedEvent.EventId has the given
associatedDomain
and whose timestamp is at or afteratOrAfter
.Returns the first event (by offset ordering) whose com.digitalasset.canton.participant.sync.TimestampedEvent.EventId has the given
associatedDomain
and whose timestamp is at or afteratOrAfter
.- Definition Classes
- InMemoryParticipantEventLog → ParticipantEventLog
- Exceptions thrown
java.lang.UnsupportedOperationException
if this event log is not the participant event log.
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- val id: ParticipantEventLogId
- Definition Classes
- InMemorySingleDimensionEventLog → SingleDimensionEventLog
- def insert(event: TimestampedEvent)(implicit traceContext: TraceContext): Future[Unit]
Publishes an event and fails upon an event ID clash.
Publishes an event and fails upon an event ID clash.
- Definition Classes
- SingleDimensionEventLog
- Exceptions thrown
java.lang.IllegalArgumentException
if a different event has already been published with the same com.digitalasset.canton.participant.LocalOffset or an event with the same com.digitalasset.canton.participant.sync.TimestampedEvent.EventId has been published with a different (unpruned) com.digitalasset.canton.participant.LocalOffset.
- def insertsUnlessEventIdClash(events: Seq[TimestampedEvent])(implicit traceContext: TraceContext): Future[Seq[Either[TimestampedEvent, Unit]]]
Publishes many events.
Publishes many events.
- returns
For each event in
events
in the same order: scala.Left$ of the conficting event if an event with the same event ID has been published with a different (unpruned) com.digitalasset.canton.participant.LocalOffset. scala.Right$ if the event has been successfully inserted or has already been present in the event log
- Definition Classes
- InMemorySingleDimensionEventLog → SingleDimensionEventLog
- Exceptions thrown
java.lang.IllegalArgumentException
if a different event has already been published with the same com.digitalasset.canton.participant.LocalOffset as one of the events inevents
.
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def lastOffset(implicit traceContext: TraceContext): OptionT[Future, LocalOffset]
- Definition Classes
- InMemorySingleDimensionEventLog → SingleDimensionEventLog
- def logger: TracedLogger
- Attributes
- protected
- Definition Classes
- NamedLogging
- val loggerFactory: NamedLoggerFactory
- Attributes
- protected
- Definition Classes
- InMemorySingleDimensionEventLog → NamedLogging
- def lookupEventRange(fromExclusive: Option[LocalOffset], toInclusive: Option[LocalOffset], fromTimestampInclusive: Option[CantonTimestamp], toTimestampInclusive: Option[CantonTimestamp], limit: Option[Int])(implicit traceContext: TraceContext): Future[SortedMap[LocalOffset, TimestampedEvent]]
- Definition Classes
- InMemorySingleDimensionEventLog → SingleDimensionEventLogLookup
- implicit def namedLoggingContext(implicit traceContext: TraceContext): NamedLoggingContext
- Attributes
- protected
- Definition Classes
- NamedLogging
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def nextLocalOffset()(implicit traceContext: TraceContext): Future[LocalOffset]
Allocates the next local offset
Allocates the next local offset
- Definition Classes
- ParticipantEventLog
- def nextLocalOffsets(count: NonNegativeInt)(implicit traceContext: TraceContext): Future[Seq[LocalOffset]]
Allocates
count
many new offsets and returns all of them.Allocates
count
many new offsets and returns all of them.- Definition Classes
- InMemoryParticipantEventLog → ParticipantEventLog
- def noTracingLogger: Logger
- Attributes
- protected
- Definition Classes
- NamedLogging
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
- def prune(beforeAndIncluding: LocalOffset)(implicit traceContext: TraceContext): Future[Unit]
- Definition Classes
- InMemorySingleDimensionEventLog → SingleDimensionEventLog
- val state: AtomicReference[Entries]
- Attributes
- protected
- Definition Classes
- InMemorySingleDimensionEventLog
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])