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 extends Party with Product with Serializable

    The private annotation, coupled with the @VisibleForTesting for methods that create ExternalParty, ensure that the class can be used only in tests.

  4. final case class ExternalPartyOnboardingDetails extends Product with Serializable

    Data class containing onboarding signed topology transactions for an external party.

    Data class containing onboarding signed topology transactions for an external party. The constructor of this class ensures that only transactions related to the creation of an external party can be submitted. It performs validations on the kind of transactions and their relationship with each other. It does NOT validate anything related to the authorization of those transactions. That logic is implemented in the topology manager.

  5. sealed abstract class ForceFlag extends Product with Serializable

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

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

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

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

    Top level trait representing an identity within the system

  10. final case class KeyCollection(signingKeys: Seq[SigningPublicKey], encryptionKeys: Seq[EncryptionPublicKey]) extends Product with Serializable
  11. final case class KnownPhysicalSynchronizerId(psid: PhysicalSynchronizerId) extends ConfiguredPhysicalSynchronizerId with Product with Serializable
  12. abstract class LocalTopologyManager[StoreId <: TopologyStoreId] extends TopologyManager[StoreId, Crypto]
  13. 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

  14. final case class MediatorId(uid: UniqueIdentifier) extends Member with NodeIdentity with Product with Serializable
  15. 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.

  16. sealed trait MemberCode extends AnyRef
  17. 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

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

    A participant identifier

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

    A party identifier based on a unique identifier

  22. class PartyToParticipantComputations extends NamedLogging
  23. final case class PendingTransactions(transactions: Seq[GenericSignedTopologyTransaction], newWatermark: CantonTimestamp) extends Product with Serializable
  24. final case class PhysicalSynchronizerId(logical: SynchronizerId, protocolVersion: ProtocolVersion, serial: NonNegativeInt) extends Synchronizer with Product with Serializable
  25. class QueueBasedSynchronizerOutbox extends SynchronizerOutbox with QueueBasedSynchronizerOutboxDispatchHelper with FlagCloseable
  26. trait QueueBasedSynchronizerOutboxDispatchHelper extends SynchronizerOutboxDispatchHelper
  27. 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.

  28. final case class SequencerId(uid: UniqueIdentifier) extends Member with NodeIdentity with Product with Serializable
  29. class StoreBasedSynchronizerOutbox extends SynchronizerOutbox with SynchronizerOutboxDispatch with HasFutureSupervision with StoreBasedSynchronizerOutboxDispatchHelper
  30. trait StoreBasedSynchronizerOutboxDispatchHelper extends SynchronizerOutboxDispatchHelper
  31. sealed trait Synchronizer extends HasUniqueIdentifier with PrettyPrinting with Product with Serializable
  32. final case class SynchronizerId(uid: UniqueIdentifier) extends Synchronizer with Identity with Product with Serializable
  33. abstract class SynchronizerOutbox extends SynchronizerOutboxHandle
  34. trait SynchronizerOutboxDispatch extends NamedLogging with FlagCloseable
  35. trait SynchronizerOutboxDispatchHelper extends NamedLogging
  36. 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.)

  37. class SynchronizerOutboxFactory extends NamedLogging
  38. class SynchronizerOutboxFactorySingleCreate extends SynchronizerOutboxFactory with FlagCloseable
  39. trait SynchronizerOutboxHandle extends FlagCloseable
  40. 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.

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

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

    A non-thread safe class which validates and stores topology transactions

  49. 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