object WellFormedTransaction extends Serializable
- Alphabetic
- By Inheritance
- WellFormedTransaction
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- sealed trait InvalidInput extends AnyRef
- sealed trait Stage extends Product with Serializable
Determines whether the IDs of created contracts in a transaction are suffixed and whether the suffix must be absolute, and whether the transactions have been merged.
- type WithAbsoluteSuffixes = WithAbsoluteSuffixes.type
- type WithSuffixes = WithSuffixes.type
- type WithSuffixesAndMerged = WithSuffixesAndMerged.type
- type WithoutSuffixes = WithoutSuffixes.type
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def check[S <: Stage](tx: LfVersionedTransaction, metadata: TransactionMetadata, stage: S): Either[String, WellFormedTransaction[S]]
Creates a WellFormedTransaction if possible or an error message otherwise.
- def checkOrThrow[S <: Stage](lfTransaction: LfVersionedTransaction, metadata: TransactionMetadata, state: S): WellFormedTransaction[S]
Creates a WellFormedTransaction
Creates a WellFormedTransaction
- Exceptions thrown
java.lang.IllegalArgumentExceptionif the given transaction is malformed
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @IntrinsicCandidate() @native()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @IntrinsicCandidate() @native()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def merge(transactionsWithRollbackScope: NonEmpty[Seq[WithRollbackScope[WellFormedTransaction[WithAbsoluteSuffixes]]]]): Either[String, WellFormedTransaction[WithSuffixesAndMerged]]
Merges a list of well-formed transactions into one, adjusting node IDs as necessary.
Merges a list of well-formed transactions into one, adjusting node IDs as necessary. All transactions must have the same version.
Root-level LfActionNodes with an associated rollback scope are embedded in rollback node ancestors according to this scheme:
- Every root node is embedded in as many rollback nodes as level appear in its rollback scope.
- Nodes with shared, non-empty rollback scope prefixes (or full matches) share the same rollback nodes (or all on fully matching rollback scopes).
- While the lf-engine "collapses" away some rollback nodes as part of normalization, merging does not perform any normalization as the daml indexer/ReadService-consumer does not require rollback-normalized lf-transactions.
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @IntrinsicCandidate() @native()
- def sanityCheckInputs(tx: LfVersionedTransaction): Either[InvalidInput, Unit]
Sanity check the transaction before submission for any invalid input values
Sanity check the transaction before submission for any invalid input values
Generally, the well-formedness check is used to detect faulty or malicious behaviour. This method here can be used as a pre-check during submission to filter out any user input errors.
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- object InvalidInput
- case object WithAbsoluteSuffixes extends Stage with Product with Serializable
All IDs of created contracts must have non-empty absolute suffixes.
All IDs of created contracts must have non-empty absolute suffixes. The transaction not yet merged.
- case object WithSuffixes extends Stage with Product with Serializable
All IDs of created contracts must have non-empty suffixes, possibly relative.
All IDs of created contracts must have non-empty suffixes, possibly relative. The transaction not yet merged.
- case object WithSuffixesAndMerged extends Stage with Product with Serializable
All IDs of created contracts must have non-empty absolute suffixes and transaction has been "merged".
- case object WithoutSuffixes extends Stage with Product with Serializable
All IDs of created contracts must have empty suffixes.