package data
- Alphabetic
- By Inheritance
- data
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- sealed trait ActionDescription extends Product with Serializable with PrettyPrinting with HasProtocolVersionedWrapper[ActionDescription]
Summarizes the information that is needed in addition to the other fields of ViewParticipantData for determining the root action of a view.
- final case class AssignedKey(contractId: LfContractId) extends SerializableKeyResolution with Product with Serializable
- final case class AssignedKeyWithMaintainers(contractId: LfContractId, maintainers: Set[LfPartyId]) extends KeyResolutionWithMaintainers with Product with Serializable
- final case class AssignmentCommonData extends MerkleTreeLeaf[AssignmentCommonData] with HasProtocolVersionedWrapper[AssignmentCommonData] with ReassignmentCommonData with Product with Serializable
Aggregates the data of an assignment request that is sent to the mediator and the involved participants.
- final case class AssignmentView extends MerkleTreeLeaf[AssignmentView] with HasProtocolVersionedWrapper[AssignmentView] with ReassignmentView with Product with Serializable
Aggregates the data of an assignment request that is only sent to the involved participants
- final case class AssignmentViewTree(commonData: MerkleTreeLeaf[AssignmentCommonData], view: MerkleTree[AssignmentView])(representativeProtocolVersion: RepresentativeProtocolVersion[AssignmentViewTree.type], hashOps: HashOps) extends GenReassignmentViewTree[AssignmentCommonData, AssignmentView, AssignmentViewTree, AssignmentMediatorMessage] with HasProtocolVersionedWrapper[AssignmentViewTree] with ReassignmentViewTree with Product with Serializable
an assignment request embedded in a Merkle tree.
an assignment request embedded in a Merkle tree. The view may or may not be blinded.
- final 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.
- final 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.
- final case class CantonTimestampSecond extends Ordered[CantonTimestampSecond] with Timestamp with Product with Serializable
A timestamp implementation for canton, which currently uses a LfTimestamp, which is rounded to the second.
- final case class CommonMetadata extends MerkleTreeLeaf[CommonMetadata] with HasProtocolVersionedWrapper[CommonMetadata] with ProtocolVersionedMemoizedEvidence with Product with Serializable
Information concerning every member involved in the underlying transaction.
- final case class ConcurrentHMap[R[_, _]] extends Product with Serializable
This class provides a mutable, thread safe, version of shapeless HMap.
This class provides a mutable, thread safe, version of shapeless HMap.
Type safety is only guaranteed by the
ev
parameters that is passed to various methods. Because of that, default constructors of the class are disabled via theprivate
keyword.In order to have type safety, the relation
R
must satisfy the following:R
be single-valued: ifR[A, B1]
andR[A, B2]
are defined, then we should haveB1 = B2
.- If there is evidence for
R[A1, B1]
andR[A2, B2]
for differentB1
andB2
, then for all non-null valuesx1: A1
andx2: A2
, we must havex1 != x2
.
See tests for counter-examples.
- Annotations
- @SuppressWarnings()
- final case class ContractReassignment(contract: SerializableContract, counter: ReassignmentCounter) extends Product with Serializable
- final case class ContractsReassignmentBatch extends Product with Serializable
- final case class Counter[Discr](v: Long) extends Ordered[Counter[Discr]] with PrettyPrinting with Product with Serializable
- trait CounterCompanion[T] extends AnyRef
- sealed trait DeduplicationPeriod extends Product with Serializable
Specifies the deduplication period for a command submission.
Specifies the deduplication period for a command submission. Note that we would like to keep this easily extensible to support offsets and absolute timestamps, hence the usage of a trait here.
- final case class FreeKey(maintainers: Set[LfPartyId]) extends SerializableKeyResolution with KeyResolutionWithMaintainers with Product with Serializable
- final case class FullAssignmentTree(tree: AssignmentViewTree) extends FullReassignmentViewTree with HasToByteString with PrettyPrinting with Product with Serializable
A fully unblinded AssignmentViewTree
A fully unblinded AssignmentViewTree
- Exceptions thrown
java.lang.IllegalArgumentException
if the tree is not fully unblinded
- final case class FullInformeeTree extends HasProtocolVersionedWrapper[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.
The
CommonMetadata
is unblinded, theParticipantMetadata
andSubmitterMetadata
are blinded. EveryTransactionView
andViewCommonData
is unblinded, but everyViewParticipantData
is blinded. - trait FullReassignmentViewTree extends ViewTree
Supertype of FullUnassignmentTree and FullAssignmentTree
- final case class FullTransactionViewTree extends TransactionViewTree 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. ThecommonMetadata
andparticipantMetadata
are also unblinded. ThesubmitterMetadata
is unblinded if and only if the unblinded view is a root view. - final case class FullUnassignmentTree(tree: UnassignmentViewTree) extends FullReassignmentViewTree with HasToByteString with PrettyPrinting with Product with Serializable
A fully unblinded UnassignmentViewTree
A fully unblinded UnassignmentViewTree
- Exceptions thrown
java.lang.IllegalArgumentException
if the tree is not fully unblinded
- abstract class GenReassignmentViewTree[CommonData <: HasProtocolVersionedWrapper[CommonData] with HasCryptographicEvidence, View <: HasProtocolVersionedWrapper[View], Tree, MediatorMessage] extends MerkleTreeInnerNode[Tree]
A reassignment request tree has two children: The
commonData
for the mediator and the involved participants and theview
only for the involved participants. - final case class GenTransactionTree extends MerkleTreeInnerNode[GenTransactionTree] with Product with Serializable
A DAML transaction, decomposed into views (cf.
A DAML transaction, decomposed into views (cf. ViewDecomposition) and embedded in a Merkle tree. Merkle tree nodes may or may not be blinded. This class is also used to represent transaction view trees and informee trees.
- trait HasSubmissionTrackerData extends PrettyPrinting
- sealed trait KeyResolution extends Product with Serializable with PrettyPrinting
- sealed trait KeyResolutionWithMaintainers extends KeyResolution
- final case class LedgerTimeBoundaries(range: Range) extends Product with Serializable
Time range wrapper that also provides accessors that return None where the values are unconstrained
- sealed abstract case class LightTransactionViewTree extends TransactionViewTree with HasProtocolVersionedWrapper[LightTransactionViewTree] with PrettyPrinting with Product with Serializable
Wraps a
GenTransactionTree
where exactly one view is unblinded.Wraps a
GenTransactionTree
where exactly one view is unblinded. The direct subviews of the unblinded view are blinded - this is why the class name is prefixed "Light".The
commonMetadata
andparticipantMetadata
are also unblinded. ThesubmitterMetadata
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)
- final case class MerkleSeq[+M <: VersionedMerkleTree[_]](rootOrEmpty: Option[MerkleTree[MerkleSeqElement[M]]])(representativeProtocolVersion: RepresentativeProtocolVersion[MerkleSeq.type], hashOps: HashOps) extends PrettyPrinting with HasProtocolVersionedWrapper[MerkleSeq[VersionedMerkleTree[_]]] 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
- 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. TherootHash
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 likeclass MyMerkleTree extends MerkleTree[MyMerkleTree]
.
- 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.
- 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.
- final class Offset extends AnyVal with Ordered[Offset] with Incrementable[Offset]
Offsets into streams with hierarchical addressing.
Offsets into streams with hierarchical addressing.
We use these offsets to address changes to the participant state. Offsets are opaque values that must be strictly increasing.
- final case class ParticipantMetadata extends MerkleTreeLeaf[ParticipantMetadata] with HasProtocolVersionedWrapper[ParticipantMetadata] with ProtocolVersionedMemoizedEvidence with Product with Serializable
Information concerning every participant involved in the underlying transaction.
- final case class ParticipantTransactionView extends 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.
- 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
- class PeanoTreeQueue[Discr, V] extends PeanoQueue[Counter[Discr], V]
Implementation of PeanoQueue for Counter keys based on a tree map.
Implementation of PeanoQueue for Counter keys based on a tree map.
This implementation is not thread safe.
- Annotations
- @SuppressWarnings()
- final case class Quorum(confirmers: Map[LfPartyId, PositiveInt], threshold: NonNegativeInt) extends PrettyPrinting with Product with Serializable
A set of confirming parties and their weights plus a threshold constitutes a quorum.
A set of confirming parties and their weights plus a threshold constitutes a quorum.
- confirmers
maps a party id to a weight. The weight is a positive int because only PlainInformees have a weight of 0.
- trait ReassignmentCommonData extends ProtocolVersionedMemoizedEvidence
Aggregates the data of an assignment request that is sent to the mediator and the involved participants.
- sealed trait ReassignmentRef extends AnyRef
- final case class ReassignmentSubmitterMetadata(submitter: LfPartyId, submittingParticipant: ParticipantId, commandId: LedgerCommandId, submissionId: Option[LedgerSubmissionId], userId: LedgerUserId, workflowId: Option[LfWorkflowId]) extends PrettyPrinting with HasSubmissionTrackerData with Product with Serializable
Information about the submitters of the transaction in the case of a reassignment.
Information about the submitters of the transaction in the case of a reassignment. This data structure is quite similar to com.digitalasset.canton.data.SubmitterMetadata but differ on a small number of fields.
- trait ReassignmentView extends ProtocolVersionedMemoizedEvidence
- trait ReassignmentViewTree extends AnyRef
A reassignment (unassignment or assignment) request embedded in a Merkle tree.
A reassignment (unassignment or assignment) request embedded in a Merkle tree. The view may or may not be blinded.
- sealed trait SerializableKeyResolution extends KeyResolution
- final case class SubmissionTrackerData(submittingParticipant: ParticipantId, maxSequencingTime: CantonTimestamp) extends HasSubmissionTrackerData with Product with Serializable
submissionTrackerData extends HasSubmissionTrackerData because it's used as the ViewSubmitterMetadata in the ViewTypeTest.
- final case class SubmitterMetadata extends MerkleTreeLeaf[SubmitterMetadata] with HasProtocolVersionedWrapper[SubmitterMetadata] with ProtocolVersionedMemoizedEvidence with HasSubmissionTrackerData with Product with Serializable
Information about the submitters of the transaction
- class SynchronizedPeanoTreeQueue[Discr, V] extends PeanoQueue[Counter[Discr], V]
A thread-safe PeanoTreeQueue thanks to synchronizing all methods
- class TaskScheduler[Task <: TimedTask] extends NamedLogging with FlagCloseable with HasCloseContext
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.
- trait TaskSchedulerMetrics extends AnyRef
- trait Timestamp extends PrettyPrinting
- final case class TransactionSubviews extends PrettyPrinting with Product with Serializable
Abstraction over the subviews of a TransactionView Implementation of TransactionSubviews where the subviews are a merkle tree
- final case class TransactionView extends MerkleTreeInnerNode[TransactionView] with HasProtocolVersionedWrapper[TransactionView] with HasLoggerName with Product with Serializable
A single view of a transaction, embedded in a Merkle tree.
A single view of a transaction, embedded in a Merkle tree. Nodes of the Merkle tree may or may not be blinded.
- Exceptions thrown
TransactionView$.InvalidView
if theviewCommonData
is unblinded and equals theviewCommonData
of a direct subview
- sealed trait TransactionViewDecomposition extends Product with Serializable with PrettyPrinting
Wrapper type for elements of a view decomposition
Wrapper type for elements of a view decomposition
It contains an
lfNode
as well as all descendant nodes, categorized either asNewView
orSameView
. - trait TransactionViewTree extends ViewTree
- final case class UnassignmentCommonData extends MerkleTreeLeaf[UnassignmentCommonData] with ReassignmentCommonData with HasProtocolVersionedWrapper[UnassignmentCommonData] with Product with Serializable
Aggregates the data of an unassignment request that is sent to the mediator and the involved participants.
- final case class UnassignmentView extends MerkleTreeLeaf[UnassignmentView] with HasProtocolVersionedWrapper[UnassignmentView] with ReassignmentView with Product with Serializable
- final case class UnassignmentViewTree(commonData: MerkleTreeLeaf[UnassignmentCommonData], view: MerkleTree[UnassignmentView])(representativeProtocolVersion: RepresentativeProtocolVersion[UnassignmentViewTree.type], hashOps: HashOps) extends GenReassignmentViewTree[UnassignmentCommonData, UnassignmentView, UnassignmentViewTree, UnassignmentMediatorMessage] with HasProtocolVersionedWrapper[UnassignmentViewTree] with ReassignmentViewTree with Product with Serializable
An unassignment request embedded in a Merkle tree.
An unassignment request embedded in a Merkle tree. The view may or may not be blinded.
- type UpdateId = LedgerString
- final case class ViewCommonData extends MerkleTreeLeaf[ViewCommonData] with ProtocolVersionedMemoizedEvidence with HasProtocolVersionedWrapper[ViewCommonData] with Product with Serializable
Information concerning every member involved in processing the underlying view.
- final case class ViewConfirmationParameters extends PrettyPrinting with NoCopy with Product with Serializable
Stores the necessary information necessary to confirm a view.
- final case class ViewHashAndKey(viewHash: ViewHash, viewEncryptionKeyRandomness: SecureRandomness) extends Product with Serializable
A view hash and its corresponding encryption key.
- final case class ViewParticipantData extends MerkleTreeLeaf[ViewParticipantData] with HasProtocolVersionedWrapper[ViewParticipantData] with ProtocolVersionedMemoizedEvidence 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 createdInSubviewArchivedInCore 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
- final case class ViewPosition(position: List[MerklePathElement]) extends PrettyPrinting with Product with Serializable
A position encodes the path from a view in a GenTransactionTree to its root.
A position encodes the path from a view in a GenTransactionTree 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.
- final case class ViewPositionFromRoot(position: List[MerklePathElement]) extends AnyVal with Product with Serializable
Same as ViewPosition, with the position directed from the root to the leaf
- trait ViewTree extends PrettyPrinting
Common supertype of all view trees that are sent as com.digitalasset.canton.protocol.messages.EncryptedViewMessages
- sealed trait ViewType extends Product with Serializable with PrettyPrinting
Reifies the subclasses of ViewTree as values
- trait ViewTypeTest extends ViewType
- final case class Witnesses(unwrap: NonEmpty[Seq[Set[LfPartyId]]]) 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
- object ActionDescription extends VersioningCompanion[ActionDescription] with Serializable
- object AssignmentCommonData extends VersioningCompanionContextMemoization[AssignmentCommonData, HashOps] with Serializable
- object AssignmentView extends VersioningCompanionContextMemoization[AssignmentView, HashOps] with Serializable
- object AssignmentViewTree extends VersioningCompanionContextTaggedPVValidation2[AssignmentViewTree, Target, HashOps] with Serializable
- object CantonTimestamp extends Serializable
- object CantonTimestampSecond extends Serializable
- object CommonMetadata extends VersioningCompanionContextMemoization[CommonMetadata, HashOps] with Serializable
- object ConcurrentHMap extends Serializable
- object ContractsReassignmentBatch extends Serializable
- object Counter extends Serializable
- object DeduplicationPeriod extends Serializable
- object FullAssignmentTree extends Serializable
- object FullInformeeTree extends VersioningCompanionContextPVValidation2[FullInformeeTree, HashOps] with Serializable
- object FullTransactionViewTree extends Serializable
- object FullUnassignmentTree extends Serializable
- object GenReassignmentViewTree extends Serializable
- object GenTransactionTree extends Serializable
- object LedgerTimeBoundaries extends Serializable
- object LightTransactionViewTree extends VersioningCompanionContextPVValidation2[LightTransactionViewTree, (HashOps, Int)] with Serializable
- object MerkleSeq extends VersioningCompanionContextPVValidation2[MerkleSeq[VersionedMerkleTree[_]], (HashOps, (ByteString) => ParsingResult[MerkleTree[VersionedMerkleTree[_]]])] with Serializable
- object MerkleTree extends Serializable
- object Offset
- object ParticipantMetadata extends VersioningCompanionContextMemoization[ParticipantMetadata, HashOps] with Serializable
- object ParticipantTransactionView extends Serializable
- object PeanoQueue
- object PeanoTreeQueue
- object Quorum extends Serializable
- object ReassignmentRef
- object ReassignmentSubmitterMetadata extends Serializable
- object SerializableKeyResolution extends Serializable
- object SubmitterMetadata extends VersioningCompanionContextMemoization[SubmitterMetadata, HashOps] with Serializable
- object TaskScheduler
- object TransactionSubviews extends Serializable
- object TransactionView extends VersioningCompanionContext[TransactionView, (HashOps, ProtocolVersion)] with Serializable
- object TransactionViewDecomposition extends Serializable
- case object TransactionViewDecompositionFactory extends Product with Serializable
- object TransactionViewTree
- object UnassignmentCommonData extends VersioningCompanionContextMemoization[UnassignmentCommonData, HashOps] with Serializable
- object UnassignmentView extends VersioningCompanionContextMemoization[UnassignmentView, HashOps] with Serializable
- object UnassignmentViewTree extends VersioningCompanionContext[UnassignmentViewTree, (HashOps, Source[ProtocolVersionValidation])] with Serializable
- object ViewCommonData extends VersioningCompanionContextMemoization[ViewCommonData, HashOps] with Serializable
- object ViewConfirmationParameters extends Serializable
- object ViewParticipantData extends VersioningCompanionContextMemoization[ViewParticipantData, HashOps] with Serializable
- object ViewPosition extends Serializable
- object ViewType extends Serializable
- case object Witnesses extends Product with Serializable