Packages

package data

Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. sealed trait ActionDescription extends Product with Serializable with PrettyPrinting with HasProtoV0[protocol.v0.ActionDescription]

    Summarizes the information that is needed in addition to the other fields of ViewParticipantData for determining the root action of a view.

  2. case class AssignedKey(contractId: LfContractId)(version: LfTransactionVersion) extends KeyResolution with Product with Serializable
  3. case class BlindedNode[+A](rootHash: RootHash) extends MerkleTree[A] with Product with Serializable

    A blinded node of a Merkle tree.

    A blinded node of a Merkle tree. Has no subtrees, as they are all blinded.

  4. case class CantonTimestamp(underlying: LfTimestamp) extends Ordered[CantonTimestamp] with Timestamp with Product with Serializable

    A timestamp implementation for canton, which currently uses a LfTimestamp.

    A timestamp implementation for canton, which currently uses a LfTimestamp.

    underlying

    A LfTimestamp, holding the value of this CantonTimestamp.

  5. sealed abstract case class CantonTimestampSecond extends Ordered[CantonTimestampSecond] with Timestamp with NoCopy with Product with Serializable

    A timestamp implementation for canton, which currently uses a LfTimestamp, which is rounded to the second.

  6. case class CommonMetadata extends MerkleTreeLeaf[CommonMetadata] with HasVersionedWrapper[VersionedCommonMetadata] with MemoizedEvidence with NoCopy with Product with Serializable

    Information concerning every member involved in the underlying transaction.

  7. case class ConfirmingParty(party: LfPartyId, weight: Int) extends Informee with Product with Serializable

    A party that must confirm the underlying view.

    A party that must confirm the underlying view.

    weight

    determines the impact of the party on whether the view is approved.

    Exceptions thrown

    com.digitalasset.canton.data.Informee$.InvalidInformee if weight is not positive

  8. case class FreeKey(maintainers: Set[LfPartyId])(version: LfTransactionVersion) extends KeyResolution with Product with Serializable
  9. case class FullInformeeTree(tree: GenTransactionTree) extends HasVersionedWrapper[VersionedFullInformeeTree] with HasProtoV0[protocol.v0.FullInformeeTree] with PrettyPrinting with Product with Serializable

    Wraps a GenTransactionTree that is also a full informee tree.

    Wraps a GenTransactionTree that is also a full informee tree.

    Exceptions thrown

    InformeeTree$.InvalidInformeeTree if tree is not a valid informee tree (i.e. the wrong nodes are blinded)

  10. case class FullTransferInTree(tree: TransferInViewTree) extends ViewTree with HasVersionedToByteString with PrettyPrinting with Product with Serializable

    A fully unblinded TransferInViewTree

    A fully unblinded TransferInViewTree

    Exceptions thrown

    java.lang.IllegalArgumentException if the tree is not fully unblinded

  11. case class FullTransferOutTree(tree: TransferOutViewTree) extends ViewTree with HasVersionedToByteString with PrettyPrinting with Product with Serializable

    A fully unblinded TransferOutViewTree

    A fully unblinded TransferOutViewTree

    Exceptions thrown

    java.lang.IllegalArgumentException if the tree is not fully unblinded

  12. case class GenTransactionTree(submitterMetadata: MerkleTree[SubmitterMetadata], commonMetadata: MerkleTree[CommonMetadata], participantMetadata: MerkleTree[ParticipantMetadata], rootViews: MerkleSeq[TransactionView])(hashOps: HashOps) extends MerkleTreeInnerNode[GenTransactionTree] with HasProtoV0[protocol.v0.GenTransactionTree] with Product with Serializable

    Partially blinded version of a transaction tree.

    Partially blinded version of a transaction tree. This class is also used to represent transaction view trees and informee trees.

    Annotations
    @SuppressWarnings()
    Exceptions thrown

    GenTransactionTree$.InvalidGenTransactionTree if two subtrees have the same root hash

  13. abstract class GenTransferViewTree[CommonData <: HasCryptographicEvidence, View <: HasCryptographicEvidence, Tree, MediatorMessage] extends MerkleTreeInnerNode[Tree] with HasVersionedWrapper[VersionedTransferViewTree] with HasProtoV0[TransferViewTree]

    A transfer request tree has two children: The commonData for the mediator and the involved participants and the view only for the involved participants.

  14. sealed trait Informee extends Product with Serializable with HasProtoV0[protocol.v0.Informee] with PrettyPrinting

    A party that must be informed about the view.

  15. case class InformeeTree(tree: GenTransactionTree) extends HasVersionedWrapper[VersionedInformeeTree] with HasProtoV0[protocol.v0.InformeeTree] with Product with Serializable

    Encapsulates a GenTransactionTree that is also an informee tree.

    Encapsulates a GenTransactionTree that is also an informee tree.

    Exceptions thrown

    InformeeTree$.InvalidInformeeTree if tree is not a valid informee tree (i.e. the wrong nodes are blinded)

  16. sealed trait KeyResolution extends Product with Serializable with PrettyPrinting
  17. case class LightTransactionViewTree(tree: GenTransactionTree) extends ViewTree with HasProtoV0[protocol.v0.LightTransactionViewTree] with HasVersionedWrapper[VersionedLightTransactionViewTree] with PrettyPrinting with Product with Serializable

    Wraps a GenTransactionTree where exactly one view (not including subviews) is unblinded.

    Wraps a GenTransactionTree where exactly one view (not including subviews) is unblinded. The commonMetadata and participantMetadata are also unblinded. The submitterMetadata is unblinded if and only if the unblinded view is a root view.

    Exceptions thrown

    LightTransactionViewTree$.InvalidLightTransactionViewTree if tree is not a light transaction view tree (i.e. the wrong set of nodes is blinded)

  18. case class MerkleSeq[+M <: MerkleTree[_] with HasVersionedToByteString](rootOrEmpty: Option[MerkleTree[MerkleSeqElement[M]]])(hashOps: HashOps) extends HasProtoV0[protocol.v0.MerkleSeq] with PrettyPrinting with Product with Serializable

    Wraps a sequence that is also a MerkleTree.

    Wraps a sequence that is also a MerkleTree. Elements are arranged in a balanced binary tree. As a result, if all except one element are blinded, the resulting MerkleSeq has size logarithmic in the size of the fully unblinded MerkleSeq.

    M

    the type of elements

    rootOrEmpty

    the root element or None if the sequence is empty

  19. trait MerkleTree[+A] extends Product with Serializable with PrettyPrinting

    Encapsulate a Merkle tree.

    Encapsulate a Merkle tree. Every node has an arbitrary number of children. Every node has a rootHash.

    Every node may be blinded, i.e., the rootHash remains, but the children are removed. The rootHash does not change if some children are blinded.

    A

    the runtime type of the class that actually implements this instance of MerkleTree. I.e., a proper implementation of this trait must be declared like class MyMerkleTree extends MerkleTree[MyMerkleTree].

  20. abstract class MerkleTreeInnerNode[+A] extends MerkleTree[A]

    An inner node of a Merkle tree.

    An inner node of a Merkle tree. Has no data, no salt, and an arbitrary number of subtrees. An inner node is considered unblinded.

  21. abstract class MerkleTreeLeaf[+A <: HasCryptographicEvidence] extends MerkleTree[A]

    A leaf of a Merkle tree.

    A leaf of a Merkle tree. Has data, a salt, and no children. A leaf is considered unblinded.

  22. case class ParticipantMetadata extends MerkleTreeLeaf[ParticipantMetadata] with HasVersionedWrapper[VersionedParticipantMetadata] with MemoizedEvidence with NoCopy with Product with Serializable

    Information concerning every participant involved in the underlying transaction.

  23. case class ParticipantTransactionView extends NoCopy with Product with Serializable

    Tags transaction views where all the view metadata are visible (such as in the views sent to participants).

    Tags transaction views where all the view metadata are visible (such as in the views sent to participants).

    Note that the subviews and their metadata are not guaranteed to be visible.

  24. trait PeanoQueue[K, V] extends AnyRef

    A Peano priority queue is a mutable priority queue of key-value pairs with ordered keys, starting from an index called the head, where pairs may be added in any order, but are polled strictly in their natural sequence.

    A Peano priority queue is a mutable priority queue of key-value pairs with ordered keys, starting from an index called the head, where pairs may be added in any order, but are polled strictly in their natural sequence. The order on keys must be a linear sequence, i.e., isomorphic to the order on a possibly unbounded interval of the integers. If the priority queue is missing a key from the sequence, we cannot poll that key until a key-value pair for that key is added.

    For example, in a priority queue with head 1, the keys polled are 1, then 2, then 3, etc.

    The head index is mutable, and increments each time the priority queue is successfully polled. Keys are unique and their value associations may not be modified.

    K

    The type of keys

    V

    The type of values

  25. class PeanoTreeQueue[V] extends PeanoQueue[Long, V]

    Implementation of PeanoQueue for java.lang.Long keys based on a tree map.

    Implementation of PeanoQueue for java.lang.Long keys based on a tree map.

    This implementation is not thread safe.

    Annotations
    @SuppressWarnings()
  26. case class PlainInformee(party: LfPartyId) extends Informee with Product with Serializable

    An informee that is not a confirming party

  27. case class SubmitterMetadata extends MerkleTreeLeaf[SubmitterMetadata] with HasVersionedWrapper[VersionedSubmitterMetadata] with MemoizedEvidence with NoCopy with Product with Serializable

    Information about the submitters of the transaction

  28. class SynchronizedPeanoTreeQueue[V] extends PeanoQueue[Long, V]

    A thread-safe PeanoTreeQueue thanks to synchronizing all methods

  29. class TaskScheduler[Task <: TimedTask] extends NamedLogging with FlagCloseableAsync

    The task scheduler manages tasks with associated timestamps and sequencer counters.

    The task scheduler manages tasks with associated timestamps and sequencer counters. Tasks may be inserted in any order; they will be executed nevertheless in the correct order given by the timestamps.

    The tasks execute sequentially in scala.concurrent.Future.

  30. trait TaskSchedulerMetrics extends AnyRef
  31. trait Timestamp extends PrettyPrinting
  32. case class TransactionView extends MerkleTreeInnerNode[TransactionView] with HasVersionedToByteString with HasProtoV0[ViewNode] with NoCopy with Product with Serializable

    Encapsulates a subaction of the underlying transaction.

    Encapsulates a subaction of the underlying transaction.

    Annotations
    @SuppressWarnings()
    Exceptions thrown

    TransactionView$.InvalidView if the viewCommonData is unblinded and equals the viewCommonData of a direct subview

  33. sealed trait TransactionViewDecomposition extends Product with Serializable

    Wrapper type for elements of a view decomposition

  34. case class TransactionViewTree(tree: GenTransactionTree) extends ViewTree with PrettyPrinting with Product with Serializable

    Wraps a GenTransactionTree where exactly one view (including subviews) is unblinded.

    Wraps a GenTransactionTree where exactly one view (including subviews) is unblinded. The commonMetadata and participantMetadata are also unblinded. The submitterMetadata is unblinded if and only if the unblinded view is a root view.

    Exceptions thrown

    TransactionViewTree$.InvalidTransactionViewTree if tree is not a transaction view tree (i.e. the wrong set of nodes is blinded)

  35. case class TransferInCommonData extends MerkleTreeLeaf[TransferInCommonData] with HasVersionedWrapper[VersionedTransferInCommonData] with MemoizedEvidence with NoCopy with Product with Serializable

    Aggregates the data of a transfer-in request that is sent to the mediator and the involved participants.

  36. case class TransferInView extends MerkleTreeLeaf[TransferInView] with HasVersionedWrapper[VersionedTransferInView] with MemoizedEvidence with NoCopy with Product with Serializable

    Aggregates the data of a transfer-in request that is only sent to the involved participants

  37. case class TransferInViewTree(commonData: MerkleTree[TransferInCommonData], view: MerkleTree[TransferInView])(hashOps: HashOps) extends GenTransferViewTree[TransferInCommonData, TransferInView, TransferInViewTree, TransferInMediatorMessage] with Product with Serializable

    A blindable Merkle tree for transfer-in requests

  38. case class TransferOutCommonData extends MerkleTreeLeaf[TransferOutCommonData] with HasVersionedWrapper[VersionedTransferOutCommonData] with MemoizedEvidence with NoCopy with Product with Serializable

    Aggregates the data of a transfer-out request that is sent to the mediator and the involved participants.

  39. case class TransferOutView extends MerkleTreeLeaf[TransferOutView] with HasVersionedWrapper[VersionedTransferOutView] with MemoizedEvidence with NoCopy with Product with Serializable

    Aggregates the data of a transfer-out request that is only sent to the involved participants

  40. case class TransferOutViewTree(commonData: MerkleTree[TransferOutCommonData], view: MerkleTree[TransferOutView])(hashOps: HashOps) extends GenTransferViewTree[TransferOutCommonData, TransferOutView, TransferOutViewTree, TransferOutMediatorMessage] with Product with Serializable

    A blindable Merkle tree for transfer-out requests

  41. case class ViewCommonData extends MerkleTreeLeaf[ViewCommonData] with MemoizedEvidence with HasVersionedWrapper[VersionedViewCommonData] with HasProtoV0[protocol.v0.ViewCommonData] with NoCopy with Product with Serializable

    Information concerning every member involved in processing the underlying view.

    Information concerning every member involved in processing the underlying view.

    Exceptions thrown

    ViewCommonData$.InvalidViewCommonData if threshold is negative

  42. case class ViewParticipantData extends MerkleTreeLeaf[ViewParticipantData] with HasVersionedWrapper[VersionedViewParticipantData] with MemoizedEvidence with NoCopy with Product with Serializable

    Information concerning every participant involved in processing the underlying view.

    Information concerning every participant involved in processing the underlying view.

    Exceptions thrown

    ViewParticipantData$.InvalidViewParticipantData if createdCore contains two elements with the same contract id, if coreInputs(id).contractId != id if archivedFromSubviews overlaps with createdCore's ids or coreInputs if coreInputs does not contain the resolved contract ids of resolvedKeys if the actionDescription is a com.digitalasset.canton.data.ActionDescription.CreateActionDescription and the created id is not the first contract ID in createdCore if the actionDescription is a com.digitalasset.canton.data.ActionDescription.ExerciseActionDescription or com.digitalasset.canton.data.ActionDescription.FetchActionDescription and the input contract is not in coreInputs if the actionDescription is a com.digitalasset.canton.data.ActionDescription.LookupByKeyActionDescription and the key is not in resolvedKeys.

    com.digitalasset.canton.serialization.SerializationCheckFailed if this instance cannot be serialized

  43. final case class ViewPosition(position: List[MerklePathElement]) extends AnyVal with Product with Serializable

    A position encodes the path from a view in a transaction tree to its root.

    A position encodes the path from a view in a transaction tree to its root. The encoding must not depend on the hashes of the nodes.

    position

    The path from the view to the root as a singly-linked list. The path starts at the view rather than the root so that paths to the root can be shared.

  44. trait ViewTree extends PrettyPrinting

    Common supertype of all view trees that are sent as com.digitalasset.canton.protocol.messages.EncryptedViewMessages

  45. trait ViewType extends Product with Serializable with PrettyPrinting

    Reifies the subclasses of ViewTree as values

  46. case class Witnesses(unwrap: List[Set[Informee]]) extends Product with Serializable

    Encodes the hierarchy of the witnesses of a view.

    Encodes the hierarchy of the witnesses of a view.

    By convention, the order is: the view's informees are at the head of the list, then the parent's views informees, then the grandparent's, etc.

Value Members

  1. object ActionDescription extends Serializable
  2. object CantonTimestamp extends Serializable
  3. object CantonTimestampSecond extends Serializable
  4. object CommonMetadata extends Serializable
  5. object FullInformeeTree extends Serializable
  6. object FullTransferInTree extends Serializable
  7. object FullTransferOutTree extends Serializable
  8. object GenTransactionTree extends Serializable
  9. object GenTransferViewTree extends Serializable
  10. object Informee extends Serializable
  11. object InformeeTree extends Serializable
  12. object KeyResolution extends Serializable
  13. object LightTransactionViewTree extends Serializable
  14. object MerkleSeq extends Serializable
  15. object MerkleTree extends Serializable
  16. object ParticipantMetadata extends Serializable
  17. object ParticipantTransactionView extends Serializable
  18. object PeanoQueue
  19. object PeanoTreeQueue
  20. object SubmitterMetadata extends Serializable
  21. object TaskScheduler
  22. object TransactionView extends Serializable
  23. object TransactionViewDecomposition extends Serializable
  24. object TransactionViewTree extends Serializable
  25. object TransferInCommonData extends Serializable
  26. object TransferInView extends Serializable
  27. object TransferInViewTree extends Serializable
  28. object TransferOutCommonData extends Serializable
  29. object TransferOutView extends Serializable
  30. object TransferOutViewTree extends Serializable
  31. object TreeSerialization
  32. object ViewCommonData extends Serializable
  33. object ViewParticipantData extends Serializable
  34. object ViewPosition extends Serializable
  35. object ViewType extends Serializable
  36. case object Witnesses extends Product with Serializable

Ungrouped