package transaction

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. final case class DecentralizedNamespaceDefinition extends TopologyMapping with Product with Serializable

    Defines a decentralized namespace

    Defines a decentralized namespace

    authorization: whoever controls the synchronizer and all the owners of the active or observing sequencers that were not already present in the tx with serial = n - 1 exception: a sequencer can leave the consortium unilaterally as long as there are enough members to reach the threshold

  2. trait DelegatedTopologyTransactionLike[+Op <: TopologyChangeOp, +M <: TopologyMapping] extends TopologyTransactionLike[Op, M]
  3. sealed trait DelegationRestriction extends Product with Serializable

    Represents a restriction of namespace to specific mapping types.

  4. final case class DynamicSequencingParametersState(synchronizerId: SynchronizerId, parameters: DynamicSequencingParameters) extends TopologyMapping with Product with Serializable

    Dynamic sequencing parameter settings for the synchronizer

    Dynamic sequencing parameter settings for the synchronizer

    Each synchronizer has a set of sequencing parameters that can be changed at runtime. These changes are authorized by the owner of the synchronizer and distributed to all nodes accordingly.

  5. final case class HostingParticipant(participantId: ParticipantId, permission: ParticipantPermission) extends Product with Serializable
  6. sealed trait KeyMapping extends Product with Serializable

    A topology mapping that maps to a set of public keys for which ownership has to be proven.

  7. final case class MediatorSynchronizerState extends TopologyMapping with Product with Serializable

    Mediator definition for a synchronizer

    Mediator definition for a synchronizer

    Each synchronizer needs at least one mediator (group), but can have multiple. Mediators can be temporarily turned off by making them observers. This way, they get informed but they don't have to reply.

  8. final case class MultiTransactionSignature(transactionHashes: NonEmpty[Set[TxHash]], signature: Signature) extends TopologyTransactionSignature with Product with Serializable

    Signature over the hash of multiple transaction.

  9. final case class NamespaceDelegation extends TopologyMapping with Product with Serializable

    A namespace delegation transaction (intermediate CA)

    A namespace delegation transaction (intermediate CA)

    Entrusts a public-key to perform changes on the namespace {(*,I) => p_k}

    The key can be restricted to only sign specific mapping types.

  10. final case class OwnerToKeyMapping(member: Member, keys: NonEmpty[Seq[PublicKey]]) extends TopologyMapping with KeyMapping with Product with Serializable

    A key owner (participant, mediator, sequencer) to key mapping

    A key owner (participant, mediator, sequencer) to key mapping

    In Canton, we need to know keys for all participating entities. The entities are all the protocol members (participant, mediator) plus the sequencer (which provides the communication infrastructure for the protocol members).

  11. final case class ParticipantAttributes(permission: ParticipantPermission, loginAfter: Option[CantonTimestamp] = None) extends Product with Serializable
  12. sealed trait ParticipantPermission extends Product with Serializable

    Permissions of a participant, i.e., things a participant can do on behalf of a party

    Permissions of a participant, i.e., things a participant can do on behalf of a party

    Permissions are hierarchical. A participant who can submit can confirm. A participant who can confirm can observe.

  13. final case class ParticipantSynchronizerLimits(confirmationRequestsMaxRate: NonNegativeInt) extends PrettyPrinting with Product with Serializable

    confirmationRequestsMaxRate

    maximum number of mediator confirmation requests sent per participant per second

  14. final case class ParticipantSynchronizerPermission(synchronizerId: SynchronizerId, participantId: ParticipantId, permission: ParticipantPermission, limits: Option[ParticipantSynchronizerLimits], loginAfter: Option[CantonTimestamp]) extends TopologyMapping with Product with Serializable
  15. final case class PartyHostingLimits(synchronizerId: SynchronizerId, partyId: PartyId) extends TopologyMapping with Product with Serializable
  16. final case class PartyToKeyMapping extends TopologyMapping with KeyMapping with Product with Serializable

    A party to key mapping

    A party to key mapping

    In Canton, we can delegate the submission authorisation to a participant node, or we can sign the transaction outside of the node with a party key. This mapping is used to map the party to a set of public keys authorized to sign submissions.

  17. final case class PartyToParticipant extends TopologyMapping with Product with Serializable
  18. final case class PurgeTopologyTransaction extends TopologyMapping with Product with Serializable
  19. final case class SequencerSynchronizerState extends TopologyMapping with Product with Serializable

    which sequencers are active on the given synchronizer

    which sequencers are active on the given synchronizer

    authorization: whoever controls the synchronizer and all the owners of the active or observing sequencers that were not already present in the tx with serial = n - 1 exception: a sequencer can leave the consortium unilaterally as long as there are enough members to reach the threshold UNIQUE(synchronizer_id)

  20. case class SignedTopologyTransaction[+Op <: TopologyChangeOp, +M <: TopologyMapping] extends HasProtocolVersionedWrapper[SignedTopologyTransaction[TopologyChangeOp, TopologyMapping]] with DelegatedTopologyTransactionLike[Op, M] with Product with Serializable with PrettyPrinting

    A signed topology transaction

    A signed topology transaction

    Every topology transaction needs to be authorized by an appropriate key. This object represents such an authorization, where there is a signature of a given key of the given topology transaction.

    Whether the key is eligible to authorize the topology transaction depends on the topology state

    Annotations
    @SuppressWarnings()
  21. final case class SignedTopologyTransactions[+Op <: TopologyChangeOp, +M <: TopologyMapping](transactions: Seq[SignedTopologyTransaction[Op, M]])(representativeProtocolVersion: RepresentativeProtocolVersion[SignedTopologyTransactions.type]) extends HasProtocolVersionedWrapper[SignedTopologyTransactions[TopologyChangeOp, TopologyMapping]] with PrettyPrinting with Product with Serializable
  22. final case class SingleTransactionSignature(transactionHash: TxHash, signature: Signature) extends TopologyTransactionSignature with Product with Serializable

    Signature over the specific transaction hash

  23. final case class SynchronizerParametersState(synchronizerId: SynchronizerId, parameters: DynamicSynchronizerParameters) extends TopologyMapping with Product with Serializable

    Dynamic synchronizer parameter settings for the synchronizer

    Dynamic synchronizer parameter settings for the synchronizer

    Each synchronizer has a set of parameters that can be changed at runtime. These changes are authorized by the owner of the synchronizer and distributed to all nodes accordingly.

  24. final case class SynchronizerTrustCertificate(participantId: ParticipantId, synchronizerId: SynchronizerId) extends TopologyMapping with Product with Serializable

    Participant synchronizer trust certificate

  25. sealed trait TopologyChangeOp extends Product with Serializable with PrettyPrinting

    Replace or Remove

  26. sealed trait TopologyMapping extends Product with Serializable with PrettyPrinting
  27. trait TopologyMappingChecks extends AnyRef
  28. sealed trait TopologyMappingCompanion extends Serializable

    Trait for all companion objects of topology mappings.

    Trait for all companion objects of topology mappings. This allows for a nicer console UX, because users can just refer to, for example, OwnerToKeyMapping instead of TopologyMapping.Code.OwnerToKeyMapping or OwnerToKeyMapping.code.

  29. final case class TopologyTransaction[+Op <: TopologyChangeOp, +M <: TopologyMapping] extends TopologyTransactionLike[Op, M] with ProtocolVersionedMemoizedEvidence with PrettyPrinting with HasProtocolVersionedWrapper[TopologyTransaction[TopologyChangeOp, TopologyMapping]] with Product with Serializable

    Change to the distributed synchronizer topology

    Change to the distributed synchronizer topology

    A topology transaction is a state change to the synchronizer topology. There are different types of topology states (so called mappings, because they map some id to some value).

    Each mapping has some variables and some combination of these variables makes a "unique key". Subsequent changes to that key need to have an incremental serial number.

    Topology changes always affect certain identities. Therefore, these topology transactions need to be authorized through signatures.

    An authorized transaction is called a SignedTopologyTransaction

  30. trait TopologyTransactionLike[+Op <: TopologyChangeOp, +M <: TopologyMapping] extends AnyRef
  31. sealed trait TopologyTransactionSignature extends Product with Serializable

    Trait for different types of topology transaction signatures

  32. class ValidatingTopologyMappingChecks extends TopologyMappingChecks with NamedLogging
  33. final case class VettedPackage(packageId: LfPackageId, validFrom: Option[CantonTimestamp], validUntil: Option[CantonTimestamp]) extends PrettyPrinting with Product with Serializable

    Represents a package with an optional validity period.

    Represents a package with an optional validity period. No start or end means that the validity of the package is unbounded. The validity period is expected to be compared to the ledger effective time (LET) of Daml transactions.

    packageId

    the hash of the package

    validFrom

    optional inclusive start of the validity period in LET

    validUntil

    optional exclusive end of the validity period in LET Note that as validFrom and validUntil are in ledger effective time, the boundaries have different semantics from topology transaction validity boundaries.

  34. final case class VettedPackages extends TopologyMapping with Product with Serializable

Value Members

  1. object DecentralizedNamespaceDefinition extends TopologyMappingCompanion
  2. object DelegationRestriction extends Serializable
  3. object DynamicSequencingParametersState extends TopologyMappingCompanion
  4. object HostingParticipant extends Serializable
  5. object MediatorSynchronizerState extends TopologyMappingCompanion
  6. object MultiTransactionSignature extends Serializable
  7. object NamespaceDelegation extends TopologyMappingCompanion
  8. object NoopTopologyMappingChecks extends TopologyMappingChecks
  9. object OwnerToKeyMapping extends TopologyMappingCompanion
  10. object ParticipantPermission extends Serializable
  11. object ParticipantSynchronizerLimits extends Serializable
  12. object ParticipantSynchronizerPermission extends TopologyMappingCompanion
  13. object PartyHostingLimits extends TopologyMappingCompanion
  14. object PartyToKeyMapping extends TopologyMappingCompanion
  15. object PartyToParticipant extends TopologyMappingCompanion
  16. object PurgeTopologyTransaction extends TopologyMappingCompanion
  17. object SequencerSynchronizerState extends TopologyMappingCompanion
  18. object SignedTopologyTransaction extends VersioningCompanionContext[SignedTopologyTransaction[TopologyChangeOp, TopologyMapping], ProtocolVersionValidation] with Serializable
  19. object SignedTopologyTransactions extends VersioningCompanionContext[SignedTopologyTransactions[TopologyChangeOp, TopologyMapping], ProtocolVersionValidation] with Serializable
  20. object SynchronizerParametersState extends TopologyMappingCompanion
  21. object SynchronizerTrustCertificate extends TopologyMappingCompanion
  22. object TopologyChangeOp extends Serializable
  23. object TopologyMapping extends Serializable
  24. object TopologyMappingChecks
  25. object TopologyTransaction extends VersioningCompanionMemoization[TopologyTransaction[TopologyChangeOp, TopologyMapping]] with Serializable
  26. object TopologyTransactionSignature extends Serializable
  27. object VettedPackage extends Serializable
  28. object VettedPackages extends TopologyMappingCompanion

Ungrouped