t

com.digitalasset.canton.topology.client

TopologySnapshotLoader

trait TopologySnapshotLoader extends TopologySnapshot with PartyTopologySnapshotLoader with BaseTopologySnapshotClient with ParticipantTopologySnapshotLoader with KeyTopologySnapshotClientLoader with VettedPackagesSnapshotLoader with SynchronizerGovernanceSnapshotLoader with NamedLogging

Loading interface with a more optimal method to read data from a store

The topology information is stored in a particular way. In order to optimise loading and caching of the data, we use such loader interfaces, such that we can optimise caching and loading of the data while still providing a good and convenient access to the topology information.

Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. TopologySnapshotLoader
  2. NamedLogging
  3. SynchronizerGovernanceSnapshotLoader
  4. VettedPackagesSnapshotLoader
  5. VettedPackagesLoader
  6. KeyTopologySnapshotClientLoader
  7. ParticipantTopologySnapshotLoader
  8. PartyTopologySnapshotLoader
  9. PartyTopologySnapshotBaseClient
  10. TopologySnapshot
  11. PartyKeyTopologySnapshotClient
  12. MembersTopologySnapshotClient
  13. SynchronizerGovernanceSnapshotClient
  14. SequencerSynchronizerStateClient
  15. MediatorSynchronizerStateClient
  16. VettedPackagesSnapshotClient
  17. KeyTopologySnapshotClient
  18. ParticipantTopologySnapshotClient
  19. BaseTopologySnapshotClient
  20. PartyTopologySnapshotClient
  21. AnyRef
  22. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Abstract Value Members

  1. abstract def allKeys(members: Seq[Member])(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[Member, KeyCollection]]
    Definition Classes
    KeyTopologySnapshotClientLoader
  2. abstract def allKeys(owner: Member)(implicit traceContext: TraceContext): FutureUnlessShutdown[KeyCollection]

    abstract loading function used to obtain the full key collection for a key owner

    abstract loading function used to obtain the full key collection for a key owner

    Definition Classes
    KeyTopologySnapshotClientLoader
  3. abstract def allMembers()(implicit traceContext: TraceContext): FutureUnlessShutdown[Set[Member]]

    Convenience method to determine all members with isMemberKnown.

    Convenience method to determine all members with isMemberKnown.

    Definition Classes
    MembersTopologySnapshotClient
  4. abstract def areMembersKnown(members: Set[Member])(implicit traceContext: TraceContext): FutureUnlessShutdown[Set[Member]]

    Convenience method to check isMemberKnown for several members.

    Convenience method to check isMemberKnown for several members.

    Definition Classes
    MembersTopologySnapshotClient
  5. implicit abstract def executionContext: ExecutionContext
    Attributes
    protected
    Definition Classes
    BaseTopologySnapshotClient
  6. abstract def findDynamicSequencingParameters()(implicit traceContext: TraceContext): FutureUnlessShutdown[Either[String, DynamicSequencingParametersWithValidity]]
  7. abstract def findDynamicSynchronizerParameters()(implicit traceContext: TraceContext): FutureUnlessShutdown[Either[String, DynamicSynchronizerParametersWithValidity]]
  8. abstract def inspectKeys(filterOwner: String, filterOwnerType: Option[MemberCode], limit: Int)(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[Member, KeyCollection]]

    Returns a list of all known keys on this synchronizer

    Returns a list of all known keys on this synchronizer

    Definition Classes
    KeyTopologySnapshotClient
  9. abstract def inspectKnownParties(filterParty: String, filterParticipant: String)(implicit traceContext: TraceContext): FutureUnlessShutdown[Set[PartyId]]

    Returns a list of all known parties on this synchronizer.

    Returns a list of all known parties on this synchronizer.

    Definition Classes
    PartyTopologySnapshotClient
  10. abstract def isMemberKnown(member: Member)(implicit traceContext: TraceContext): FutureUnlessShutdown[Boolean]

    Determines if a member is known on the synchronizer (through a SynchronizerTrustCertificate, MediatorSynchronizerState, or SequencerSynchronizerState).

    Determines if a member is known on the synchronizer (through a SynchronizerTrustCertificate, MediatorSynchronizerState, or SequencerSynchronizerState). Note that a "known" member is not necessarily authorized to use the synchronizer.

    Definition Classes
    MembersTopologySnapshotClient
  11. abstract def listDynamicSynchronizerParametersChanges()(implicit traceContext: TraceContext): FutureUnlessShutdown[Seq[DynamicSynchronizerParametersWithValidity]]

    List all the dynamic synchronizer parameters (past and current)

    List all the dynamic synchronizer parameters (past and current)

    Definition Classes
    SynchronizerGovernanceSnapshotClient
  12. abstract def loadParticipantStates(participants: Seq[ParticipantId])(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[ParticipantId, ParticipantAttributes]]

    Loads the participant state for the given set of participant ids.

    Loads the participant state for the given set of participant ids. The result covers only active participants, i.e., only participants with SynchronizerTrustCertificates, ParticipantSynchronizerPermission (if the synchronizer is restricted), and signing and encryption keys.

    Definition Classes
    ParticipantTopologySnapshotLoader
  13. abstract def loadVettedPackages(participants: Seq[ParticipantId])(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[ParticipantId, Map[PackageId, VettedPackage]]]
    Definition Classes
    VettedPackagesLoader
  14. abstract def loadVettedPackages(participant: ParticipantId)(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[PackageId, VettedPackage]]
    Definition Classes
    VettedPackagesLoader
  15. abstract def loggerFactory: NamedLoggerFactory
    Attributes
    protected
    Definition Classes
    NamedLogging
  16. abstract def mediatorGroups()(implicit traceContext: TraceContext): FutureUnlessShutdown[Seq[MediatorGroup]]
  17. abstract def memberFirstKnownAt(member: Member)(implicit traceContext: TraceContext): FutureUnlessShutdown[Option[(SequencedTime, EffectiveTime)]]
  18. abstract def partyAuthorization(party: PartyId)(implicit traceContext: TraceContext): FutureUnlessShutdown[Option[PartyAuthorizationInfo]]

    returns authorization information for the party, including signing keys and threshold

    returns authorization information for the party, including signing keys and threshold

    Definition Classes
    PartyKeyTopologySnapshotClient
  19. abstract def sequencerGroup()(implicit traceContext: TraceContext): FutureUnlessShutdown[Option[SequencerGroup]]

    The returned sequencer group contains all sequencers that

    The returned sequencer group contains all sequencers that

    • are mentioned in the SequencerSynchronizerState topology transaction and
    • have at least 1 signing key
    Definition Classes
    SequencerSynchronizerStateClient
  20. abstract def timestamp: CantonTimestamp

    The official timestamp corresponding to this snapshot

    The official timestamp corresponding to this snapshot

    Definition Classes
    BaseTopologySnapshotClient

Concrete 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 activeParticipantsOf(party: LfPartyId)(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[ParticipantId, ParticipantAttributes]]

    Returns the set of active participants the given party is represented by as of the snapshot timestamp

    Returns the set of active participants the given party is represented by as of the snapshot timestamp

    Should never return a PartyParticipantRelationship where ParticipantPermission is DISABLED.

    Definition Classes
    PartyTopologySnapshotLoader → PartyTopologySnapshotClient
  5. def activeParticipantsOfAll(parties: List[LfPartyId])(implicit traceContext: TraceContext): EitherT[FutureUnlessShutdown, Set[LfPartyId], Set[ParticipantId]]
    Definition Classes
    PartyTopologySnapshotBaseClient
  6. final def activeParticipantsOfParties(parties: Seq[LfPartyId])(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[LfPartyId, Set[ParticipantId]]]

    Load the set of active participants for the given parties

    Load the set of active participants for the given parties

    Definition Classes
    PartyTopologySnapshotLoader → PartyTopologySnapshotClient
  7. final def activeParticipantsOfPartiesWithInfo(parties: Seq[LfPartyId])(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[LfPartyId, PartyInfo]]
    Definition Classes
    PartyTopologySnapshotLoader → PartyTopologySnapshotClient
  8. def allHaveActiveParticipants(parties: Set[LfPartyId], check: (ParticipantPermission) => Boolean = _ => true)(implicit traceContext: TraceContext): EitherT[FutureUnlessShutdown, Set[LfPartyId], Unit]
    Definition Classes
    PartyTopologySnapshotBaseClient
  9. def allHostedOn(partyIds: Set[LfPartyId], participantId: ParticipantId, permissionCheck: (ParticipantAttributes) => Boolean = _ => true)(implicit traceContext: TraceContext): FutureUnlessShutdown[Boolean]
    Definition Classes
    PartyTopologySnapshotBaseClient
  10. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  11. def canConfirm(participant: ParticipantId, parties: Set[LfPartyId])(implicit traceContext: TraceContext): FutureUnlessShutdown[Set[LfPartyId]]
    Definition Classes
    PartyTopologySnapshotBaseClient
  12. final def canNotSubmit(participant: ParticipantId, parties: Seq[LfPartyId])(implicit traceContext: TraceContext): FutureUnlessShutdown[Iterable[LfPartyId]]

    Returns the subset of parties the given participant can NOT submit on behalf of

    Returns the subset of parties the given participant can NOT submit on behalf of

    Definition Classes
    PartyTopologySnapshotLoader → PartyTopologySnapshotClient
  13. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
  14. final def consortiumThresholds(parties: Set[LfPartyId])(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[LfPartyId, PositiveInt]]

    Returns the consortium thresholds (how many votes from different participants that host the consortium party are required for the confirmation to become valid).

    Returns the consortium thresholds (how many votes from different participants that host the consortium party are required for the confirmation to become valid). For normal parties returns 1.

    Definition Classes
    PartyTopologySnapshotLoader → PartyTopologySnapshotClient
  15. final def determinePackagesWithNoVettingEntry(participantId: ParticipantId, packageIds: Set[PackageId])(implicit traceContext: TraceContext): FutureUnlessShutdown[Set[PackageId]]

    Checks the vetting state for the given packages and returns the packages that have no entry in the participant's VettedPackages topology transactions.

    Checks the vetting state for the given packages and returns the packages that have no entry in the participant's VettedPackages topology transactions. Note: this does not check the vetted packages for their validity period, but simply for their existence in the mapping.

    participantId

    the participant for which we want to check the package vettings

    packageIds

    the set of packages to check

    returns

    the packages that have no entry in the participant's VettedPackages mapping

    Definition Classes
    VettedPackagesSnapshotLoaderVettedPackagesSnapshotClient
  16. def encryptionKey(members: Seq[Member])(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[Member, EncryptionPublicKey]]

    returns the newest encryption public key

    returns the newest encryption public key

    Definition Classes
    KeyTopologySnapshotClientLoader → KeyTopologySnapshotClient
  17. def encryptionKey(owner: Member)(implicit traceContext: TraceContext): FutureUnlessShutdown[Option[EncryptionPublicKey]]

    returns newest encryption public key

    returns newest encryption public key

    Definition Classes
    KeyTopologySnapshotClientLoader → KeyTopologySnapshotClient
  18. def encryptionKeys(members: Seq[Member])(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[Member, Seq[EncryptionPublicKey]]]
    Definition Classes
    KeyTopologySnapshotClientLoader → KeyTopologySnapshotClient
  19. def encryptionKeys(owner: Member)(implicit traceContext: TraceContext): FutureUnlessShutdown[Seq[EncryptionPublicKey]]

    returns all encryption keys

    returns all encryption keys

    Definition Classes
    KeyTopologySnapshotClientLoader → KeyTopologySnapshotClient
  20. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  21. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  22. implicit def errorLoggingContext(implicit traceContext: TraceContext): ErrorLoggingContext
    Attributes
    protected
    Definition Classes
    NamedLogging
  23. def findDynamicSynchronizerParametersOrDefault(protocolVersion: ProtocolVersion, warnOnUsingDefault: Boolean = true)(implicit traceContext: TraceContext): FutureUnlessShutdown[DynamicSynchronizerParameters]
  24. final def findParticipantState(participantId: ParticipantId)(implicit traceContext: TraceContext): FutureUnlessShutdown[Option[ParticipantAttributes]]
    Definition Classes
    ParticipantTopologySnapshotLoader
  25. final def findUnvettedPackagesOrDependencies(participantId: ParticipantId, packages: Set[PackageId], ledgerTime: CantonTimestamp)(implicit traceContext: TraceContext): FutureUnlessShutdown[Set[PackageId]]

    Returns the set of packages that are not vetted by the given participant

    Returns the set of packages that are not vetted by the given participant

    participantId

    the participant for which we want to check the package vettings

    packages

    the set of packages that should be vetted

    returns

    Right the set of unvetted packages (which is empty if all packages are vetted) Left if a package is missing locally such that we can not verify the vetting state of the package dependencies

    Definition Classes
    VettedPackagesSnapshotLoaderVettedPackagesSnapshotClient
  26. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  27. def hasNoConfirmer(parties: Set[LfPartyId])(implicit traceContext: TraceContext): FutureUnlessShutdown[Set[LfPartyId]]
    Definition Classes
    PartyTopologySnapshotBaseClient
  28. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @IntrinsicCandidate() @native()
  29. def hostedOn(partyIds: Set[LfPartyId], participantId: ParticipantId)(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[LfPartyId, ParticipantAttributes]]
    Definition Classes
    PartyTopologySnapshotBaseClient
  30. def isHostedByAtLeastOneParticipantF(parties: Set[LfPartyId], check: (LfPartyId, ParticipantAttributes) => Boolean)(implicit traceContext: TraceContext): FutureUnlessShutdown[Set[LfPartyId]]
    Definition Classes
    PartyTopologySnapshotBaseClient
  31. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  32. def isMediatorActive(mediator: MediatorGroupRecipient)(implicit traceContext: TraceContext): FutureUnlessShutdown[Boolean]
  33. def isMediatorActive(mediatorId: MediatorId)(implicit traceContext: TraceContext): FutureUnlessShutdown[Boolean]

    Returns true if

    Returns true if

    • the mediator is a member of a mediator group with num_active_sequencers >= threshold
    • the mediator has an OwnerToKeyMapping with at least 1 signing key
    Definition Classes
    MediatorSynchronizerStateClient
  34. def isParticipantActive(participantId: ParticipantId)(implicit traceContext: TraceContext): FutureUnlessShutdown[Boolean]

    Checks whether the provided participant exists and is active.

    Checks whether the provided participant exists and is active. Active means:

    1. The participant has a SynchronizerTrustCertificate. 2. The synchronizer is either unrestricted or there is a ParticipantSynchronizerPermission for the participant. 3. The participant has an OwnerToKeyMapping with signing and encryption keys.
    Definition Classes
    ParticipantTopologySnapshotLoader → ParticipantTopologySnapshotClient
  35. def isParticipantActiveAndCanLoginAt(participantId: ParticipantId, timestamp: CantonTimestamp)(implicit traceContext: TraceContext): FutureUnlessShutdown[Boolean]

    Checks whether the provided participant exists, is active and can login at the given point in time

    Checks whether the provided participant exists, is active and can login at the given point in time

    (loginAfter is before timestamp)

    Definition Classes
    ParticipantTopologySnapshotLoader → ParticipantTopologySnapshotClient
  36. def isSequencerActive(sequencerId: SequencerId)(implicit traceContext: TraceContext): FutureUnlessShutdown[Boolean]

    Returns true if

    Returns true if

    • the sequencer is a member of the sequencer group
    • the sequencer has an OwnerToKeyMapping with at least 1 signing key
    Definition Classes
    SequencerSynchronizerStateClient
  37. def logger: TracedLogger
    Attributes
    protected
    Definition Classes
    NamedLogging
  38. def mediatorGroup(index: MediatorGroupIndex)(implicit traceContext: TraceContext): FutureUnlessShutdown[Option[MediatorGroup]]
  39. def mediatorGroupsOfAll(groups: Seq[MediatorGroupIndex])(implicit traceContext: TraceContext): EitherT[FutureUnlessShutdown, Seq[MediatorGroupIndex], Seq[MediatorGroup]]
  40. implicit def namedLoggingContext(implicit traceContext: TraceContext): NamedLoggingContext
    Attributes
    protected
    Definition Classes
    NamedLogging
  41. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  42. def noTracingLogger: Logger
    Attributes
    protected
    Definition Classes
    NamedLogging
  43. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  44. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @IntrinsicCandidate() @native()
  45. def referenceTime: CantonTimestamp

    Internally used reference time (representing when the last change happened that affected this snapshot)

    Internally used reference time (representing when the last change happened that affected this snapshot)

    Definition Classes
    BaseTopologySnapshotClient
  46. def signingKeys(members: Seq[Member], filterUsage: NonEmpty[Set[SigningKeyUsage]])(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[Member, Seq[SigningPublicKey]]]
    Definition Classes
    KeyTopologySnapshotClientLoader → KeyTopologySnapshotClient
  47. def signingKeys(owner: Member, filterUsage: NonEmpty[Set[SigningKeyUsage]])(implicit traceContext: TraceContext): FutureUnlessShutdown[Seq[SigningPublicKey]]

    Retrieves the signing keys for a given owner, filtering them based on the provided usage set.

    Retrieves the signing keys for a given owner, filtering them based on the provided usage set.

    owner

    The owner whose signing keys are being queried.

    filterUsage

    A non-empty set of usages to filter the signing keys by. At least one usage from this set must match with the key's usage.

    Definition Classes
    KeyTopologySnapshotClientLoader → KeyTopologySnapshotClient
  48. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  49. def toString(): String
    Definition Classes
    AnyRef → Any
  50. def trafficControlParameters(protocolVersion: ProtocolVersion, warnOnUsingDefault: Boolean = true)(implicit tc: TraceContext): FutureUnlessShutdown[Option[TrafficControlParameters]]
  51. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  52. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  53. 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 VettedPackagesLoader

Inherited from KeyTopologySnapshotClientLoader

Inherited from ParticipantTopologySnapshotLoader

Inherited from PartyTopologySnapshotLoader

Inherited from PartyTopologySnapshotBaseClient

Inherited from TopologySnapshot

Inherited from AnyRef

Inherited from Any

Ungrouped