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.
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- InitialTopologySnapshotValidator
- TopologyTransactionHandling
- NamedLogging
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- Protected
Instance Constructors
- new InitialTopologySnapshotValidator(pureCrypto: CryptoPureApi, store: TopologyStore[TopologyStoreId], timeouts: ProcessingTimeout, loggerFactory: NamedLoggerFactory)(implicit ec: 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]) @IntrinsicCandidate() @native()
- 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
- @IntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def inspectAndAdvanceTopologyTransactionDelay(effectiveTimestamp: EffectiveTime, validated: Seq[GenericValidatedTopologyTransaction])(implicit traceContext: TraceContext): Unit
- Attributes
- protected
- Definition Classes
- TopologyTransactionHandling
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def logger: TracedLogger
- Attributes
- protected
- Definition Classes
- NamedLogging
- val loggerFactory: NamedLoggerFactory
- Definition Classes
- TopologyTransactionHandling → 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
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- lazy val stateProcessor: TopologyStateProcessor
- Attributes
- protected
- Definition Classes
- InitialTopologySnapshotValidator → TopologyTransactionHandling
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- val timeAdjuster: TopologyTimestampPlusEpsilonTracker
- Attributes
- protected
- Definition Classes
- TopologyTransactionHandling
- val timeouts: ProcessingTimeout
- Definition Classes
- TopologyTransactionHandling
- def toString(): String
- Definition Classes
- AnyRef → Any
- 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.
- 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])