class DefaultMediatorEventDeduplicator extends MediatorEventDeduplicator with NamedLogging
- Alphabetic
- By Inheritance
- DefaultMediatorEventDeduplicator
- NamedLogging
- MediatorEventDeduplicator
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new DefaultMediatorEventDeduplicator(store: MediatorDeduplicationStore, verdictSender: VerdictSender, getDeduplicationTimeout: (Traced[CantonTimestamp]) => Future[Duration], getDecisionTime: (Traced[CantonTimestamp]) => Future[CantonTimestamp], protocolVersion: ProtocolVersion, loggerFactory: NamedLoggerFactory)(implicit executionContext: ExecutionContext)
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()
- 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
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def logger: TracedLogger
- Attributes
- protected
- Definition Classes
- NamedLogging
- val loggerFactory: NamedLoggerFactory
- Attributes
- protected
- Definition Classes
- DefaultMediatorEventDeduplicator → NamedLogging
- implicit def namedLoggingContext(implicit traceContext: TraceContext): NamedLoggingContext
- Attributes
- protected
- Definition Classes
- NamedLogging
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- 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 rejectDuplicates(requestTimestamp: CantonTimestamp, envelopes: Seq[DefaultOpenEnvelope])(implicit traceContext: TraceContext, callerCloseContext: CloseContext): Future[(Seq[DefaultOpenEnvelope], Future[Unit])]
See the comment of the other
rejectDuplicatesmethod.See the comment of the other
rejectDuplicatesmethod.- returns
(uniqueEnvelopes, storeF), whereuniqueEnvelopescontains those elements ofenvelopesthat have no UUID or a unique UUID andstoreFcompletes when the persistent state has been updated and all rejections have been sent.
- Definition Classes
- DefaultMediatorEventDeduplicator → MediatorEventDeduplicator
- def rejectDuplicates(envelopesByEvent: Seq[(TracedProtocolEvent, Seq[DefaultOpenEnvelope])])(implicit executionContext: ExecutionContext, callerCloseContext: CloseContext): Future[(Seq[(TracedProtocolEvent, Seq[DefaultOpenEnvelope])], Future[Unit])]
Reads the request uuids of envelopes and checks for duplicates: If the uuid of an envelope has been used previously and the previous usage has not expired by the sequencer timestamp of the corresponding event, then the event is rejected through the sequencer client.
Reads the request uuids of envelopes and checks for duplicates: If the uuid of an envelope has been used previously and the previous usage has not expired by the sequencer timestamp of the corresponding event, then the event is rejected through the sequencer client. If the uuid of an envelope is fresh, it will be stored as being "in use".
The method should not be called concurrently. The method may be invoked again, as soon as the future returned by the previous invocation has completed, i.e.,
rejectDuplicates(...).isComplete.- returns
(uniqueEnvelopesByEvent, storeF):uniqueEnvelopesByEventcontains those elements ofenvelopesByEventthat have no UUID or a unique UUID.storeFcompletes when the persistent state has been updated and all rejections have been sent. The methodrejectDuplicatesmay be invoked again whilestoreFis still running; The event should be considered clean only whenstoreFis completed.
- Definition Classes
- MediatorEventDeduplicator
- 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])