com.digitalasset.canton.participant.protocol.submission
CommandDeduplicator
Companion object CommandDeduplicator
trait CommandDeduplicator extends AnyRef
Implements the command deduplication logic.
All method calls should be coordinated by the InFlightSubmissionTracker.
In particular, checkDeduplication
must not be called concurrently with
processPublications
for the same com.digitalasset.canton.ledger.participant.state.v2.ChangeIds.
- Alphabetic
- By Inheritance
- CommandDeduplicator
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def checkDuplication(changeIdHash: ChangeIdHash, deduplicationPeriod: DeduplicationPeriod)(implicit traceContext: TraceContext): EitherT[Future, DeduplicationFailed, DeduplicationOffset]
Perform deduplication for the given com.digitalasset.canton.participant.protocol.submission.ChangeIdHash and com.digitalasset.canton.ledger.api.DeduplicationPeriod.
Perform deduplication for the given com.digitalasset.canton.participant.protocol.submission.ChangeIdHash and com.digitalasset.canton.ledger.api.DeduplicationPeriod.
- changeIdHash
The change ID hash of the submission to be deduplicated
- deduplicationPeriod
The deduplication period specified with the submission
- returns
The com.digitalasset.canton.ledger.api.DeduplicationPeriod.DeduplicationOffset to be included in the command completion's com.digitalasset.canton.ledger.participant.state.v2.CompletionInfo. Canton always returns a com.digitalasset.canton.ledger.api.DeduplicationPeriod.DeduplicationOffset because it cannot meet the record time requirements for the other kinds of com.digitalasset.canton.ledger.api.DeduplicationPeriods.
- abstract def processPublications(publications: Seq[Publication])(implicit traceContext: TraceContext): Future[Unit]
Register the publication of the events in the com.digitalasset.canton.participant.store.CommandDeduplicationStore
Concrete 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() @HotSpotIntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- 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])