trait TopologySnapshot extends PartyTopologySnapshotClient with BaseTopologySnapshotClient with ParticipantTopologySnapshotClient with KeyTopologySnapshotClient with VettedPackagesSnapshotClient with MediatorSynchronizerStateClient with SequencerSynchronizerStateClient with SynchronizerGovernanceSnapshotClient with MembersTopologySnapshotClient with PartyKeyTopologySnapshotClient
- Self Type
- TopologySnapshot with BaseTopologySnapshotClient with NamedLogging
- Alphabetic
- By Inheritance
- TopologySnapshot
- PartyKeyTopologySnapshotClient
- MembersTopologySnapshotClient
- SynchronizerGovernanceSnapshotClient
- SequencerSynchronizerStateClient
- MediatorSynchronizerStateClient
- VettedPackagesSnapshotClient
- KeyTopologySnapshotClient
- ParticipantTopologySnapshotClient
- BaseTopologySnapshotClient
- PartyTopologySnapshotClient
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract 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
- PartyTopologySnapshotClient
- abstract def activeParticipantsOfAll(parties: List[LfPartyId])(implicit traceContext: TraceContext): EitherT[FutureUnlessShutdown, Set[LfPartyId], Set[ParticipantId]]
Returns all active participants of all the given parties.
Returns all active participants of all the given parties. Returns a Left if some of the parties don't have active participants, in which case the parties with missing active participants are returned. Note that it will return an empty set as a Right when given an empty list of parties.
- Definition Classes
- PartyTopologySnapshotClient
- abstract 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
- PartyTopologySnapshotClient
- abstract def activeParticipantsOfPartiesWithInfo(parties: Seq[LfPartyId])(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[LfPartyId, PartyInfo]]
- Definition Classes
- PartyTopologySnapshotClient
- abstract def allHaveActiveParticipants(parties: Set[LfPartyId], check: (ParticipantPermission) => Boolean = _ => true)(implicit traceContext: TraceContext): EitherT[FutureUnlessShutdown, Set[LfPartyId], Unit]
Returns Right if all parties have at least an active participant passing the check.
Returns Right if all parties have at least an active participant passing the check. Otherwise, all parties not passing are passed as Left
- Definition Classes
- PartyTopologySnapshotClient
- abstract def allHostedOn(partyIds: Set[LfPartyId], participantId: ParticipantId, permissionCheck: (ParticipantAttributes) => Boolean = _ => true)(implicit traceContext: TraceContext): FutureUnlessShutdown[Boolean]
Returns true if all given party ids are hosted on a certain participant
Returns true if all given party ids are hosted on a certain participant
- Definition Classes
- PartyTopologySnapshotClient
- 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
- 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
- abstract def canConfirm(participant: ParticipantId, parties: Set[LfPartyId])(implicit traceContext: TraceContext): FutureUnlessShutdown[Set[LfPartyId]]
Returns whether a participant can confirm on behalf of a party.
Returns whether a participant can confirm on behalf of a party.
- Definition Classes
- PartyTopologySnapshotClient
- abstract 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
- PartyTopologySnapshotClient
- abstract 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
- PartyTopologySnapshotClient
- abstract 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
- VettedPackagesSnapshotClient
- abstract def encryptionKey(members: Seq[Member])(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[Member, EncryptionPublicKey]]
returns newest encryption public key
returns newest encryption public key
- Definition Classes
- KeyTopologySnapshotClient
- abstract def encryptionKey(owner: Member)(implicit traceContext: TraceContext): FutureUnlessShutdown[Option[EncryptionPublicKey]]
returns newest encryption public key
returns newest encryption public key
- Definition Classes
- KeyTopologySnapshotClient
- abstract def encryptionKeys(members: Seq[Member])(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[Member, Seq[EncryptionPublicKey]]]
- Definition Classes
- KeyTopologySnapshotClient
- abstract def encryptionKeys(owner: Member)(implicit traceContext: TraceContext): FutureUnlessShutdown[Seq[EncryptionPublicKey]]
returns all encryption keys
returns all encryption keys
- Definition Classes
- KeyTopologySnapshotClient
- implicit abstract def executionContext: ExecutionContext
- Attributes
- protected
- Definition Classes
- BaseTopologySnapshotClient
- abstract def findDynamicSequencingParameters()(implicit traceContext: TraceContext): FutureUnlessShutdown[Either[String, DynamicSequencingParametersWithValidity]]
- Definition Classes
- SynchronizerGovernanceSnapshotClient
- abstract def findDynamicSynchronizerParameters()(implicit traceContext: TraceContext): FutureUnlessShutdown[Either[String, DynamicSynchronizerParametersWithValidity]]
- Definition Classes
- SynchronizerGovernanceSnapshotClient
- abstract 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
- VettedPackagesSnapshotClient
- abstract def hasNoConfirmer(parties: Set[LfPartyId])(implicit traceContext: TraceContext): FutureUnlessShutdown[Set[LfPartyId]]
Returns parties with no hosting participant that can confirm for them.
Returns parties with no hosting participant that can confirm for them.
- Definition Classes
- PartyTopologySnapshotClient
- abstract def hostedOn(partyIds: Set[LfPartyId], participantId: ParticipantId)(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[LfPartyId, ParticipantAttributes]]
Returns the participant permission for that particular participant (if there is one)
Returns the participant permission for that particular participant (if there is one)
- Definition Classes
- PartyTopologySnapshotClient
- 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
- 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
- abstract def isHostedByAtLeastOneParticipantF(parties: Set[LfPartyId], check: (LfPartyId, ParticipantAttributes) => Boolean)(implicit traceContext: TraceContext): FutureUnlessShutdown[Set[LfPartyId]]
Returns true if there is at least one participant that satisfies the predicate
Returns true if there is at least one participant that satisfies the predicate
- Definition Classes
- PartyTopologySnapshotClient
- 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
- abstract 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:
- 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
- ParticipantTopologySnapshotClient
- abstract 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
- ParticipantTopologySnapshotClient
- 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
- abstract def mediatorGroups()(implicit traceContext: TraceContext): FutureUnlessShutdown[Seq[MediatorGroup]]
- Definition Classes
- MediatorSynchronizerStateClient
- abstract def memberFirstKnownAt(member: Member)(implicit traceContext: TraceContext): FutureUnlessShutdown[Option[(SequencedTime, EffectiveTime)]]
- Definition Classes
- MembersTopologySnapshotClient
- 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
- 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
- abstract def signingKeys(members: Seq[Member], filterUsage: NonEmpty[Set[SigningKeyUsage]])(implicit traceContext: TraceContext): FutureUnlessShutdown[Map[Member, Seq[SigningPublicKey]]]
- Definition Classes
- KeyTopologySnapshotClient
- abstract 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
- KeyTopologySnapshotClient
- abstract def timestamp: CantonTimestamp
The official timestamp corresponding to this snapshot
The official timestamp corresponding to this snapshot
- Definition Classes
- BaseTopologySnapshotClient
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]) @IntrinsicCandidate() @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def findDynamicSynchronizerParametersOrDefault(protocolVersion: ProtocolVersion, warnOnUsingDefault: Boolean = true)(implicit traceContext: TraceContext): FutureUnlessShutdown[DynamicSynchronizerParameters]
- Definition Classes
- SynchronizerGovernanceSnapshotClient
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isMediatorActive(mediator: MediatorGroupRecipient)(implicit traceContext: TraceContext): FutureUnlessShutdown[Boolean]
- Definition Classes
- MediatorSynchronizerStateClient
- 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
- 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
- def mediatorGroup(index: MediatorGroupIndex)(implicit traceContext: TraceContext): FutureUnlessShutdown[Option[MediatorGroup]]
- Definition Classes
- MediatorSynchronizerStateClient
- def mediatorGroupsOfAll(groups: Seq[MediatorGroupIndex])(implicit traceContext: TraceContext): EitherT[FutureUnlessShutdown, Seq[MediatorGroupIndex], Seq[MediatorGroup]]
- Definition Classes
- MediatorSynchronizerStateClient
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- 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
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def trafficControlParameters(protocolVersion: ProtocolVersion, warnOnUsingDefault: Boolean = true)(implicit tc: TraceContext): FutureUnlessShutdown[Option[TrafficControlParameters]]
- Definition Classes
- SynchronizerGovernanceSnapshotClient
- 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])