Packages

package topology

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Package Members

  1. package admin
  2. package client
  3. package processing
  4. package store
  5. package transaction

Type Members

  1. class AuthorizedTopologyManager extends LocalTopologyManager[AuthorizedStore]
  2. sealed trait ConfiguredPhysicalSynchronizerId extends PrettyPrinting
  3. final case class ExternalParty(partyId: PartyId, signingFingerprints: NonEmpty[Seq[Fingerprint]]) extends Party with Product with Serializable
  4. sealed abstract class ForceFlag extends AnyRef

    A force flag is used to override specific safety checks in the topology manager.

  5. final case class ForceFlags(flags: Set[ForceFlag]) extends Product with Serializable

    A container for a set of force flags to pass around.

  6. trait HasNamespace extends HasFingerprint
  7. trait HasUniqueIdentifier extends HasNamespace
  8. sealed trait Identity extends HasUniqueIdentifier with Product with Serializable with PrettyPrinting

    Top level trait representing an identity within the system

  9. final case class KeyCollection(signingKeys: Seq[SigningPublicKey], encryptionKeys: Seq[EncryptionPublicKey]) extends Product with Serializable
  10. final case class KnownPhysicalSynchronizerId(psid: PhysicalSynchronizerId) extends ConfiguredPhysicalSynchronizerId with Product with Serializable
  11. abstract class LocalTopologyManager[StoreId <: TopologyStoreId] extends TopologyManager[StoreId, Crypto]
  12. final case class MediatorGroup(index: MediatorGroupIndex, active: Seq[MediatorId], passive: Seq[MediatorId], threshold: PositiveInt) extends Product with Serializable

    Represents a mediator group, containing only mediators that have at least 1 signing key.

    Represents a mediator group, containing only mediators that have at least 1 signing key.

    index

    uniquely identifies the group, just like MediatorId for single mediators.

    active

    the active mediators belonging to the group

    passive

    the passive mediators belonging to the group

    threshold

    the minimum size of a quorum

  13. final case class MediatorId(uid: UniqueIdentifier) extends Member with NodeIdentity with Product with Serializable
  14. sealed trait Member extends Identity with Product with Serializable

    A member in a synchronizer such as a participant and or synchronizer entities

    A member in a synchronizer such as a participant and or synchronizer entities

    A member can be addressed and talked to on the transaction level through the sequencer.

  15. sealed trait MemberCode extends AnyRef
  16. final case class Namespace(fingerprint: Fingerprint) extends HasFingerprint with PrettyPrinting with Product with Serializable

    A namespace spanned by the fingerprint of a pub-key

    A namespace spanned by the fingerprint of a pub-key

    This is based on the assumption that the fingerprint is unique to the public-key

  17. sealed trait NodeIdentity extends Identity
  18. final case class ParticipantId(uid: UniqueIdentifier) extends Member with NodeIdentity with Product with Serializable

    A participant identifier

  19. sealed trait Party extends Identity with Product with Serializable
  20. final case class PartyId(uid: UniqueIdentifier) extends Party with Product with Serializable

    A party identifier based on a unique identifier

  21. class PartyToParticipantComputations extends NamedLogging
  22. final case class PendingTransactions(transactions: Seq[GenericSignedTopologyTransaction], newWatermark: CantonTimestamp) extends Product with Serializable
  23. final case class PhysicalSynchronizerId(logical: SynchronizerId, protocolVersion: ProtocolVersion, serial: NonNegativeInt) extends Synchronizer with Product with Serializable
  24. class QueueBasedSynchronizerOutbox extends SynchronizerOutbox with QueueBasedSynchronizerOutboxDispatchHelper with FlagCloseable
  25. trait QueueBasedSynchronizerOutboxDispatchHelper extends SynchronizerOutboxDispatchHelper
  26. final case class SequencerGroup(active: Seq[SequencerId], passive: Seq[SequencerId], threshold: PositiveInt) extends Product with Serializable

    Contains only sequencers from SequencerSynchronizerState that also have at least 1 signing key.

    Contains only sequencers from SequencerSynchronizerState that also have at least 1 signing key.

    When reading threshold, recall the contract of SequencerSynchronizerState: The system must tolerate up to min(threshold - 1, (active.size - 1)/3) malicious active sequencers.

  27. final case class SequencerId(uid: UniqueIdentifier) extends Member with NodeIdentity with Product with Serializable
  28. class StoreBasedSynchronizerOutbox extends SynchronizerOutbox with SynchronizerOutboxDispatch with HasFutureSupervision with StoreBasedSynchronizerOutboxDispatchHelper
  29. trait StoreBasedSynchronizerOutboxDispatchHelper extends SynchronizerOutboxDispatchHelper
  30. sealed trait Synchronizer extends HasUniqueIdentifier with PrettyPrinting with Product with Serializable
  31. final case class SynchronizerId(uid: UniqueIdentifier) extends Synchronizer with Identity with Product with Serializable
  32. abstract class SynchronizerOutbox extends SynchronizerOutboxHandle
  33. trait SynchronizerOutboxDispatch extends NamedLogging with FlagCloseable
  34. trait SynchronizerOutboxDispatchHelper extends NamedLogging
  35. class SynchronizerOutboxDynamicObserver extends TopologyManagerObserver with NamedLogging

    Dynamic version of a TopologyManagerObserver allowing observers to be dynamically added or removed while the TopologyManager stays up.

    Dynamic version of a TopologyManagerObserver allowing observers to be dynamically added or removed while the TopologyManager stays up. (This is helpful for mediator node failover where synchronizer-outboxes are started and closed.)

  36. class SynchronizerOutboxFactory extends NamedLogging
  37. class SynchronizerOutboxFactorySingleCreate extends SynchronizerOutboxFactory with FlagCloseable
  38. trait SynchronizerOutboxHandle extends FlagCloseable
  39. class SynchronizerOutboxQueue extends NamedLogging

    The SynchronizerOutboxQueue connects a SynchronizerTopologyManager and a SynchronizerOutbox.

    The SynchronizerOutboxQueue connects a SynchronizerTopologyManager and a SynchronizerOutbox. The topology manager enqueues transactions that the synchronizer outbox will pick up and send to the synchronizer to be sequenced and distributed to the nodes in the synchronizer.

    On the one hand, com.digitalasset.canton.topology.SynchronizerOutboxQueue#enqueue may be called at any point to add more topology transactions to the queue. On the other hand, each invocation of com.digitalasset.canton.topology.SynchronizerOutboxQueue#dequeue must be followed by either com.digitalasset.canton.topology.SynchronizerOutboxQueue#requeue or com.digitalasset.canton.topology.SynchronizerOutboxQueue#completeCycle, before com.digitalasset.canton.topology.SynchronizerOutboxQueue#dequeue is called again.

  40. class SynchronizerTopologyManager extends TopologyManager[SynchronizerStore, SynchronizerCrypto]
  41. class TemporaryStoreRegistry extends NamedLogging with FlagCloseable
  42. class TemporaryTopologyManager extends LocalTopologyManager[TemporaryStore]
  43. abstract class TopologyManager[+StoreID <: TopologyStoreId, +CryptoType <: BaseCrypto] extends TopologyManagerStatus with NamedLogging with FlagCloseable

  44. sealed trait TopologyManagerError extends ContextualizedCantonError
  45. trait TopologyManagerObserver extends AnyRef
  46. trait TopologyManagerStatus extends AnyRef
  47. class TopologyStateProcessor extends NamedLogging

  48. final case class UniqueIdentifier extends HasNamespace with PrettyPrinting with Product with Serializable

    a unique identifier within a namespace Based on the Ledger API PartyIds/LedgerStrings being limited to 255 characters, we allocate

    a unique identifier within a namespace Based on the Ledger API PartyIds/LedgerStrings being limited to 255 characters, we allocate

    • 64 + 4 characters to the namespace/fingerprint (essentially SHA256 with extra bytes),
    • 2 characters as delimiters, and
    • the last 185 characters for the Identifier.

Ungrouped