package messages
This package contains data structures used in the transaction protocol. However, generic data structures, e.g. com.digitalasset.canton.data.MerkleTree etc. are kept in com.digitalasset.canton.data package.
- Alphabetic
 - By Inheritance
 
- messages
 - AnyRef
 - Any
 
- Hide All
 - Show All
 
- Public
 - Protected
 
Type Members
-   sealed abstract  case class AcsCommitment extends HasProtocolVersionedWrapper[AcsCommitment] with SignedProtocolMessageContent with NoCopy with Product with Serializable
A commitment to the active contract set (ACS) that is shared between two participants on a given domain at a given time.
A commitment to the active contract set (ACS) that is shared between two participants on a given domain at a given time.
Given a commitment scheme to the ACS, the semantics are as follows: the sender declares that the shared ACS was exactly the one committed to, at every commitment tick during the specified period and as determined by the period's interval.
The interval is assumed to be a round number of seconds. The ticks then start at the Java EPOCH time, and are exactly
intervalapart. -    trait BaseLocalRejectErrorCode extends AnyRef
Base type for error codes related to local reject.
 -   final  case class CausalityMessage extends UnsignedProtocolMessage with PrettyPrinting with ProtocolMessageV0 with ProtocolMessageV1 with Product with Serializable
Causality messages are sent along with a transfer-in response.
Causality messages are sent along with a transfer-in response. They propagate causality information on the events a participant has "seen" for a party at the time of the transfer-out. TODO(i9514): Encrypt the causality messages
 -  final case class CommitmentPeriod(fromExclusive: CantonTimestampSecond, periodLength: PositiveSeconds) extends PrettyPrinting with Product with Serializable
 -   final  case class ConfirmationRequest(informeeMessage: InformeeMessage, viewEnvelopes: Seq[OpenEnvelope[TransactionViewMessage]], protocolVersion: ProtocolVersion) extends PrettyPrinting with Product with Serializable
Represents the confirmation request as sent from a submitting node to the sequencer.
 -  type DefaultOpenEnvelope = OpenEnvelope[ProtocolMessage]
 -  final case class DeliveredTransferOutResult(result: SignedContent[Deliver[DefaultOpenEnvelope]]) extends PrettyPrinting with Product with Serializable
 -  final case class DomainTopologyTransactionMessage extends UnsignedProtocolMessage with ProtocolMessageV0 with ProtocolMessageV1 with ProtocolMessageV2 with ProtocolMessageV3 with UnsignedProtocolMessageV4 with Product with Serializable
 -   sealed  trait EncryptedView[+VT <: ViewType] extends Product with Serializable
An encrypted com.digitalasset.canton.data.ViewTree together with its com.digitalasset.canton.data.ViewType.
An encrypted com.digitalasset.canton.data.ViewTree together with its com.digitalasset.canton.data.ViewType. The correspondence is encoded via a path-dependent type. The type parameter
VTexposes a upper bound on the type of view types that may be contained.The view tree is compressed before encryption.
 -   sealed  trait EncryptedViewMessage[+VT <: ViewType] extends UnsignedProtocolMessage
An encrypted view message.
 -  sealed trait EncryptedViewMessageError extends Product with Serializable with PrettyPrinting
 -  final case class EncryptedViewMessageV0[+VT <: ViewType](submitterParticipantSignature: Option[Signature], viewHash: ViewHash, randomnessMap: Map[ParticipantId, Encrypted[SecureRandomness]], encryptedView: EncryptedView[VT], domainId: DomainId) extends EncryptedViewMessage[VT] with ProtocolMessageV0 with Product with Serializable
 -  final case class EncryptedViewMessageV1[+VT <: ViewType](submitterParticipantSignature: Option[Signature], viewHash: ViewHash, randomness: Seq[AsymmetricEncrypted[SecureRandomness]], encryptedView: EncryptedView[VT], domainId: DomainId, viewEncryptionScheme: SymmetricKeyScheme)(recipientsInfo: Option[RecipientsInfo]) extends EncryptedViewMessage[VT] with ProtocolMessageV1 with ProtocolMessageV2 with Product with Serializable
 -   final  case class EncryptedViewMessageV2[+VT <: ViewType](submitterParticipantSignature: Option[Signature], viewHash: ViewHash, randomness: Encrypted[SecureRandomness], sessionKey: NonEmpty[Seq[AsymmetricEncrypted[SecureRandomness]]], encryptedView: EncryptedView[VT], domainId: DomainId, viewEncryptionScheme: SymmetricKeyScheme)(recipientsInfo: Option[RecipientsInfo]) extends EncryptedViewMessage[VT] with ProtocolMessageV3 with UnsignedProtocolMessageV4 with Product with Serializable
The view message encrypted with symmetric key that is derived from the view's randomness.
The view message encrypted with symmetric key that is derived from the view's randomness.
- randomness
 the view's randomness symmetrically encrypted with a session key.
- sessionKey
 a sequence of encrypted random values to each recipient of the view. These values are encrypted and are used to derive the symmetric session key. Instead of sending a <SymmetricKey>, which could cause formatting issues (e.g. different participants with different providers and, therefore, different key formats), we send an encrypted <SecureRandomness>.
 -  sealed trait EnvelopeContent extends HasProtocolVersionedWrapper[EnvelopeContent] with Product with Serializable
 -  sealed abstract case class EnvelopeContentV0 extends EnvelopeContent with Product with Serializable
 -  sealed abstract case class EnvelopeContentV1 extends EnvelopeContent with Product with Serializable
 -  sealed abstract case class EnvelopeContentV2 extends EnvelopeContent with Product with Serializable
 -  sealed abstract case class EnvelopeContentV3 extends EnvelopeContent with Product with Serializable
 -  sealed abstract case class EnvelopeContentV4 extends EnvelopeContent with Product with Serializable
 -  trait HasDomainId extends AnyRef
 -  trait HasRequestId extends AnyRef
 -    case class InformeeMessage(fullInformeeTree: FullInformeeTree)(protocolVersion: ProtocolVersion) extends MediatorRequest with ProtocolMessageV0 with ProtocolMessageV1 with ProtocolMessageV2 with ProtocolMessageV3 with UnsignedProtocolMessageV4 with Product with Serializable
The informee message to be sent to the mediator.
The informee message to be sent to the mediator.
- Annotations
 - @SuppressWarnings()
 
 -  final case class LocalApprove()(representativeProtocolVersion: RepresentativeProtocolVersion[LocalVerdict.type]) extends LocalVerdict with Product with Serializable
 -  sealed trait LocalReject extends LocalVerdict with TransactionError with TransactionRejection
 -   abstract  class LocalRejectErrorCode extends ErrorCode with BaseLocalRejectErrorCode
Base type for ErrorCodes related to LocalReject, if the rejection does not (necessarily) occur due to malicious behavior.
 -   sealed abstract  class LocalRejectImpl extends LocalReject
Base class for LocalReject errors, if the rejection does not (necessarily) occur due to malicious behavior.
 -   sealed  trait LocalVerdict extends Product with Serializable with PrettyPrinting with HasProtocolVersionedWrapper[LocalVerdict]
Possible verdicts on a transaction view from the participant's perspective.
Possible verdicts on a transaction view from the participant's perspective. The verdict can be
LocalApprove,LocalRejectorMalformed. The verdictsLocalRejectandMalformedinclude areasonpointing out which checks in Phase 3 have failed. -   sealed abstract  class Malformed extends BaseAlarm with LocalReject
Base class for LocalReject errors, if the rejection occurs due to malicious behavior.
 -   abstract  class MalformedErrorCode extends AlarmErrorCode with BaseLocalRejectErrorCode
Base type for ErrorCodes related to LocalReject, if the rejection is due to malicious behavior.
 -    case class MalformedMediatorRequestResult extends MediatorResult with SignedProtocolMessageContent with HasProtocolVersionedWrapper[MalformedMediatorRequestResult] with PrettyPrinting with Product with Serializable
Sent by the mediator to indicate that a mediator request was malformed.
Sent by the mediator to indicate that a mediator request was malformed. The request counts as being rejected and the request UUID will not be deduplicated.
- Annotations
 - @SuppressWarnings()
 
 -  trait MediatorRequest extends ProtocolMessage with UnsignedProtocolMessage
 -    case class MediatorResponse extends SignedProtocolMessageContent with HasProtocolVersionedWrapper[MediatorResponse] with HasDomainId with PrettyPrinting with Product with Serializable
Payload of a response sent to the mediator in reaction to a request.
Payload of a response sent to the mediator in reaction to a request.
- Annotations
 - @SuppressWarnings()
 
 -  trait MediatorResult extends ProtocolVersionedMemoizedEvidence with HasDomainId with HasRequestId with SignedProtocolMessageContent
 -    trait ProtocolMessage extends Product with Serializable with HasDomainId with PrettyPrinting with HasRepresentativeProtocolVersion
Parent trait of messages that are sent through the sequencer
 -    trait ProtocolMessageV0 extends ProtocolMessage
Trait for ProtocolMessages that can be serialized as a v0 EnvelopeContent
 -    trait ProtocolMessageV1 extends ProtocolMessage
Trait for ProtocolMessages that can be serialized as a v1 EnvelopeContent
 -    trait ProtocolMessageV2 extends ProtocolMessage
Trait for ProtocolMessages that can be serialized as a v2 EnvelopeContent
 -    trait ProtocolMessageV3 extends ProtocolMessage
Trait for ProtocolMessages that can be serialized as a v3 EnvelopeContent
 -  final case class RegisterTopologyTransactionRequest extends UnsignedProtocolMessage with ProtocolMessageV0 with ProtocolMessageV1 with ProtocolMessageV2 with ProtocolMessageV3 with UnsignedProtocolMessageV4 with PrettyPrinting with Product with Serializable
 -  final case class RegisterTopologyTransactionResponse[+Res <: RegisterTopologyTransactionResponseResult](requestedBy: Member, participant: ParticipantId, requestId: TopologyRequestId, results: Seq[Res], domainId: DomainId)(representativeProtocolVersion: RepresentativeProtocolVersion[RegisterTopologyTransactionResponse.type]) extends UnsignedProtocolMessage with ProtocolMessageV0 with ProtocolMessageV1 with ProtocolMessageV2 with ProtocolMessageV3 with UnsignedProtocolMessageV4 with Product with Serializable
 -  sealed trait RegisterTopologyTransactionResponseResult extends AnyRef
 -    trait RegularMediatorResult extends MediatorResult
The mediator issues a regular mediator result for well-formed mediator requests.
The mediator issues a regular mediator result for well-formed mediator requests. Malformed mediator requests lead to a MalformedMediatorRequestResult.
 -   final  case class RootHashMessage[+Payload <: RootHashMessagePayload](rootHash: RootHash, domainId: DomainId, viewType: ViewType, payload: Payload)(representativeProtocolVersion: RepresentativeProtocolVersion[RootHashMessage.type]) extends ProtocolMessage with ProtocolMessageV0 with ProtocolMessageV1 with ProtocolMessageV2 with ProtocolMessageV3 with UnsignedProtocolMessageV4 with PrettyPrinting with Product with Serializable
One root hash message is sent for each participant involved in a mediator request that requires root hash messages.
One root hash message is sent for each participant involved in a mediator request that requires root hash messages. The root hash message is delivered to the participant and the mediator. The mediator checks that it receives the right root hash messages and that they all contain the root hash that the mediator request message specifies. The mediator also checks that all payloads have the same serialization and, if it can parse the mediator request envelope, that the payload fits to the mediator request.
 -    trait RootHashMessagePayload extends PrettyPrinting with HasCryptographicEvidence
Payloads of RootHashMessage
 -  final case class SerializedRootHashMessagePayload(bytes: ByteString) extends RootHashMessagePayload with Product with Serializable
 -   sealed  case class SignedProtocolMessage[+M <: SignedProtocolMessageContent] extends ProtocolMessage with ProtocolMessageV0 with ProtocolMessageV1 with ProtocolMessageV2 with ProtocolMessageV3 with HasProtocolVersionedWrapper[SignedProtocolMessage[SignedProtocolMessageContent]] with Product with Serializable
In protocol versions prior to com.digitalasset.canton.version.ProtocolVersion.CNTestNet, the
signaturesfield contains a single signature over thetypeMessage's com.digitalasset.canton.protocol.messages.TypedSignedProtocolMessageContent.content.In protocol versions prior to com.digitalasset.canton.version.ProtocolVersion.CNTestNet, the
signaturesfield contains a single signature over thetypeMessage's com.digitalasset.canton.protocol.messages.TypedSignedProtocolMessageContent.content. From com.digitalasset.canton.version.ProtocolVersion.CNTestNet on, there can be any number of signatures and each signature covers the serialization of thetypedMessageitself rather than just its com.digitalasset.canton.protocol.messages.TypedSignedProtocolMessageContent.content, and every signature needs to be valid. -  trait SignedProtocolMessageContent extends ProtocolVersionedMemoizedEvidence with HasDomainId with PrettyPrinting with Product with Serializable
 -  final case class TopologyTransactionsBroadcastX extends UnsignedProtocolMessage with UnsignedProtocolMessageV4 with Product with Serializable
 -  trait TransactionRejection extends AnyRef
 -    case class TransactionResultMessage extends RegularMediatorResult with HasProtocolVersionedWrapper[TransactionResultMessage] with PrettyPrinting with Product with Serializable
Transaction result message that the mediator sends to all stakeholders of a confirmation request with its verdict.
Transaction result message that the mediator sends to all stakeholders of a confirmation request with its verdict. https://engineering.da-int.net/docs/platform-architecture-handbook/arch/canton/transactions.html#phase-6-broadcast-of-result
- Annotations
 - @SuppressWarnings()
 
 -  type TransactionViewMessage = EncryptedViewMessage[TransactionViewType]
 -   final  case class TransferInMediatorMessage(tree: TransferInViewTree) extends MediatorRequest with ProtocolMessageV0 with ProtocolMessageV1 with ProtocolMessageV2 with ProtocolMessageV3 with UnsignedProtocolMessageV4 with Product with Serializable
Message sent to the mediator as part of a transfer-in request
Message sent to the mediator as part of a transfer-in request
- tree
 The transfer-in view tree blinded for the mediator
- Exceptions thrown
 java.lang.IllegalArgumentExceptionif the common data is blinded or the view is not blinded
 -  type TransferInResult = TransferResult[TargetDomainId]
 -   final  case class TransferOutMediatorMessage(tree: TransferOutViewTree) extends MediatorRequest with ProtocolMessageV0 with ProtocolMessageV1 with ProtocolMessageV2 with ProtocolMessageV3 with UnsignedProtocolMessageV4 with Product with Serializable
Message sent to the mediator as part of a transfer-out request
Message sent to the mediator as part of a transfer-out request
- tree
 The transfer-out view tree blinded for the mediator
- Exceptions thrown
 java.lang.IllegalArgumentExceptionif the common data is blinded or the view is not blinded
 -  type TransferOutResult = TransferResult[SourceDomainId]
 -    case class TransferResult[+Domain <: TransferDomainId] extends RegularMediatorResult with HasProtocolVersionedWrapper[TransferResult[TransferDomainId]] with PrettyPrinting with Product with Serializable
Mediator result for a transfer request
Mediator result for a transfer request
- Annotations
 - @SuppressWarnings()
 
 -    case class TypedSignedProtocolMessageContent[+M <: SignedProtocolMessageContent] extends HasProtocolVersionedWrapper[TypedSignedProtocolMessageContent[SignedProtocolMessageContent]] with ProtocolVersionedMemoizedEvidence with Product with Serializable
- Annotations
 - @SuppressWarnings()
 
 -    trait UnsignedProtocolMessage extends ProtocolMessage
Marker trait for ProtocolMessages that are not a SignedProtocolMessage
 -    trait UnsignedProtocolMessageV4 extends ProtocolMessage
Trait for ProtocolMessages that can be serialized as a v4 EnvelopeContent
 -   final  case class VectorClock(sourceDomainId: SourceDomainId, localTs: CantonTimestamp, partyId: LfPartyId, clock: Map[DomainId, CantonTimestamp]) extends PrettyPrinting with Product with Serializable
A vector clock represents the causal constraints that must be respected for a party at a certain point in time.
A vector clock represents the causal constraints that must be respected for a party at a certain point in time. Vector clocks are maintained per-domain
- sourceDomainId
 The domain of the vector clock
- localTs
 The timestamp on
sourceDomainIdspecifying the time at which the causal constraints are valid- partyId
 The party who has seen the causal information specified by
clock- clock
 The most recent timestamp on each domain that
partyIdhas causally observed
 -   sealed  trait Verdict extends Product with Serializable with PrettyPrinting with HasProtocolVersionedWrapper[Verdict]
Verdicts sent from the mediator to the participants inside the MediatorResult message
 
Value Members
-  val TransferInResult: TransferResult.type
 -  val TransferOutResult: TransferResult.type
 -  object AcsCommitment extends HasMemoizedProtocolVersionedWrapperCompanion[AcsCommitment]
 -  object CausalityMessage extends HasProtocolVersionedCompanion[CausalityMessage]
 -  object CommitmentPeriod extends Serializable
 -  object DefaultOpenEnvelopesFilter
 -  object DeliveredTransferOutResult extends Serializable
 -  object DomainTopologyTransactionMessage extends HasProtocolVersionedCompanion[DomainTopologyTransactionMessage]
 -  case object EmptyRootHashMessagePayload extends RootHashMessagePayload with Product with Serializable
 -  object EncryptedView extends Serializable
 -  object EncryptedViewMessage extends HasProtocolVersionedCompanion[EncryptedViewMessage[_]]
 -  object EncryptedViewMessageError extends Serializable
 -  object EncryptedViewMessageV0 extends Serializable
 -  object EncryptedViewMessageV1 extends Serializable
 -  object EncryptedViewMessageV2 extends Serializable
 -  object EnvelopeContent extends HasProtocolVersionedWithContextCompanion[EnvelopeContent, HashOps]
 -  object InformeeMessage extends HasProtocolVersionedWithContextCompanion[InformeeMessage, HashOps]
 -  object LocalApprove extends Serializable
 -  object LocalReject extends LocalRejectionGroup with Serializable
 -  object LocalVerdict extends HasProtocolVersionedCompanion[LocalVerdict]
 -  object MalformedMediatorRequestResult extends HasMemoizedProtocolVersionedWrapperCompanion[MalformedMediatorRequestResult]
 -  object MediatorRequest extends Serializable
 -  object MediatorResponse extends HasMemoizedProtocolVersionedWrapperCompanion[MediatorResponse]
 -  object ProtocolMessage extends Serializable
 -  object RegisterTopologyTransactionRequest extends HasProtocolVersionedCompanion[RegisterTopologyTransactionRequest]
 -  object RegisterTopologyTransactionResponse extends HasProtocolVersionedCompanion[RegisterTopologyTransactionResponse[RegisterTopologyTransactionResponseResult]]
 -  object RegisterTopologyTransactionResponseResult
 -  object RegularMediatorResult extends Serializable
 -  object RootHashMessage extends HasProtocolVersionedWithContextCompanion[RootHashMessage[RootHashMessagePayload], (ByteString) => ParsingResult[RootHashMessagePayload]]
 -  object RootHashMessageRecipients
 -  object SerializedRootHashMessagePayload extends Serializable
 -  object SignedProtocolMessage extends HasProtocolVersionedWithContextCompanion[SignedProtocolMessage[SignedProtocolMessageContent], HashOps]
 -  object SignedProtocolMessageContent extends Serializable
 -  object TopologyTransactionsBroadcastX extends HasProtocolVersionedCompanion[TopologyTransactionsBroadcastX]
 -  object TransactionResultMessage extends HasMemoizedProtocolVersionedWithContextCompanion[TransactionResultMessage, HashOps]
 -  object TransferInMediatorMessage extends HasProtocolVersionedWithContextCompanion[TransferInMediatorMessage, HashOps]
 -  object TransferOutMediatorMessage extends HasProtocolVersionedWithContextCompanion[TransferOutMediatorMessage, HashOps]
 -  object TransferResult extends HasMemoizedProtocolVersionedWrapperCompanion[TransferResult[TransferDomainId]]
 -  object TypedSignedProtocolMessageContent extends HasMemoizedProtocolVersionedWithContextCompanion[TypedSignedProtocolMessageContent[SignedProtocolMessageContent], HashOps]
 -  object VectorClock extends Serializable
 -  object Verdict extends HasProtocolVersionedCompanion[Verdict] with ProtocolVersionedCompanionDbHelpers[Verdict]