c

com.digitalasset.canton.topology.processing

InitialTopologySnapshotValidator

class InitialTopologySnapshotValidator extends TopologyTransactionHandling

Validates an initial topology snapshot by:

  • running transaction authorization validation
  • deduplicating topology transactions
  • removing superfluous signatures
  • checking that serials are strictly monotonic
  • checking that rejected transactions in the initial snapshot also are rejected in stored snapshot
  • checking that the effective times valid_from and valid_until of the transactions are the same in the initial snapshot and the stored snapshot

Also compares the computed effective time with the effective provided in the snapshot.

Any inconsistency between the topology snapshot and the outcome of the validation is reported.

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

Instance Constructors

  1. new InitialTopologySnapshotValidator(pureCrypto: CryptoPureApi, store: TopologyStore[TopologyStoreId], timeouts: ProcessingTimeout, loggerFactory: NamedLoggerFactory)(implicit ec: ExecutionContext)

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. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  8. implicit def errorLoggingContext(implicit traceContext: TraceContext): ErrorLoggingContext
    Attributes
    protected
    Definition Classes
    NamedLogging
  9. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  10. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  11. def inspectAndAdvanceTopologyTransactionDelay(effectiveTimestamp: EffectiveTime, validated: Seq[GenericValidatedTopologyTransaction])(implicit traceContext: TraceContext): Unit
    Attributes
    protected
    Definition Classes
    TopologyTransactionHandling
  12. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  13. def logger: TracedLogger
    Attributes
    protected
    Definition Classes
    NamedLogging
  14. val loggerFactory: NamedLoggerFactory
  15. implicit def namedLoggingContext(implicit traceContext: TraceContext): NamedLoggingContext
    Attributes
    protected
    Definition Classes
    NamedLogging
  16. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  17. def noTracingLogger: Logger
    Attributes
    protected
    Definition Classes
    NamedLogging
  18. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  19. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  20. lazy val stateProcessor: TopologyStateProcessor
    Attributes
    protected
    Definition Classes
    InitialTopologySnapshotValidatorTopologyTransactionHandling
  21. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  22. val timeAdjuster: TopologyTimestampPlusEpsilonTracker
    Attributes
    protected
    Definition Classes
    TopologyTransactionHandling
  23. val timeouts: ProcessingTimeout
    Definition Classes
    TopologyTransactionHandling
  24. def toString(): String
    Definition Classes
    AnyRef → Any
  25. final def validateAndApplyInitialTopologySnapshot(initialSnapshot: GenericStoredTopologyTransactions)(implicit traceContext: TraceContext): EitherT[FutureUnlessShutdown, String, Unit]

    Runs the topology snapshot through the normal processing/validation pipeline of the TopologyStateProcessor.

    Runs the topology snapshot through the normal processing/validation pipeline of the TopologyStateProcessor.

    NOTICE:

    • the preparation and pre-processing of the provided topology snapshot is only done to support a wider variety of (legacy) topology snapshots.
    • The outcome of the validation and import is compared with the expected outcome of the snapshot. Any inconsistencies are raised as errors. This serves as a security barrier.
  26. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  27. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  28. 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

    (Since version 9)

Inherited from NamedLogging

Inherited from AnyRef

Inherited from Any

Ungrouped