@DoNotImplement public TransactionDSLInterpreter extends Verifies, OutputStateLookup
This interface defines the bare bone functionality that a Transaction DSL interpreter should implement.
@NotNull LedgerDSLInterpreter<net.corda.testing.dsl.TransactionDSLInterpreter> getLedgerInterpreter()
A reference to the enclosing ledger{..}'s interpreter.
void input(@NotNull StateRef stateRef)
Adds an input reference to the transaction. Note that verifies
will resolve this reference.
stateRef
- The input class StateRef
.verifies
void reference(@NotNull StateRef stateRef)
Add a reference input state to the transaction. Note that verifies
will resolve this reference.
stateRef
- The input class StateRef
.verifies
void output(@NotNull java.lang.String contractClassName, @Nullable java.lang.String label, @NotNull Party notary, @Nullable java.lang.Integer encumbrance, @NotNull AttachmentConstraint attachmentConstraint, @NotNull ContractState contractState)
Adds an output to the transaction.
contractClassName
- The class name of the contract that verifies this state.label
- An optional label that may be later used to retrieve the output probably in other transactions.notary
- The associated notary.encumbrance
- The position of the encumbrance state.attachmentConstraint
- The attachment constraintcontractState
- The state itself.void attachment(@NotNull SecureHash attachmentId)
Adds an interface Attachment
reference to the transaction.
attachmentId
- The hash of the attachment, possibly returned by LedgerDSLInterpreter.attachment
.interface Attachment
void command(@NotNull java.util.List<? extends java.security.PublicKey> signers, @NotNull CommandData commandData)
Adds a command to the transaction.
signers
- The signer public keys.commandData
- The contents of the command.void timeWindow(@NotNull TimeWindow data)
Sets the time-window of the transaction.
data
- the class TimeWindow
(validation window).@NotNull EnforceVerifyOrFail _tweak(@NotNull kotlin.jvm.functions.Function1<? super net.corda.testing.dsl.TransactionDSLInterpreter,? extends net.corda.testing.dsl.EnforceVerifyOrFail> dsl)
Creates a local scoped copy of the transaction.
dsl
- The transaction DSL to be interpreted using the copy.void _attachment(@NotNull java.lang.String contractClassName)
Attaches an attachment containing the named contract to the transaction
contractClassName
- The contract class to attachvoid _attachment(@NotNull java.lang.String contractClassName, @NotNull SecureHash attachmentId, @NotNull java.util.List<? extends java.security.PublicKey> signers)
Attaches an attachment containing the named contract to the transaction
contractClassName
- The contract class to attachattachmentId
- The attachmentvoid _attachment(@NotNull java.lang.String contractClassName, @NotNull SecureHash attachmentId, @NotNull java.util.List<? extends java.security.PublicKey> signers, @NotNull java.util.Map<java.lang.String,java.lang.String> jarManifestAttributes)
Attaches an attachment containing the named contract to the transaction.
contractClassName
- The contract class to attach.attachmentId
- The attachment.signers
- The signers.jarManifestAttributes
- The JAR manifest file attributes.