class TransactionBuilder
A TransactionBuilder is a transaction class thats mutable (unlike the others which are all immutable). It is intended to be passed around contracts that may edit it by adding new states/commands or modifying the existing set. Then once the states and commands are right, this class can be used as a holding bucket to gather signatures from multiple parties.
<init> |
TransactionBuilder(inputs: MutableList<StateRef> = arrayListOf(), attachments: MutableList<SecureHash> = arrayListOf(), outputs: MutableList<ContractState> = arrayListOf(), commands: MutableList<Command> = arrayListOf()) A TransactionBuilder is a transaction class thats mutable (unlike the others which are all immutable). It is intended to be passed around contracts that may edit it by adding new states/commands or modifying the existing set. Then once the states and commands are right, this class can be used as a holding bucket to gather signatures from multiple parties. |
time |
val time: TimestampCommand? |
addAttachment |
fun addAttachment(attachment: Attachment): Unit |
addCommand |
fun addCommand(arg: Command): Unit fun addCommand(data: CommandData, vararg keys: PublicKey): <ERROR CLASS> fun addCommand(data: CommandData, keys: List<PublicKey>): Unit |
addInputState |
fun addInputState(ref: StateRef): Unit |
addOutputState |
fun addOutputState(state: ContractState): Unit |
addSignatureUnchecked |
fun addSignatureUnchecked(sig: WithKey): Unit Adds the signature directly to the transaction, without checking it for validity. |
attachments |
fun attachments(): List<SecureHash> |
checkAndAddSignature |
fun checkAndAddSignature(sig: WithKey): Unit Checks that the given signature matches one of the commands and that it is a correct signature over the tx, then adds it. |
checkSignature |
fun checkSignature(sig: WithKey): Unit Checks that the given signature matches one of the commands and that it is a correct signature over the tx. |
commands |
fun commands(): List<Command> |
inputStates |
fun inputStates(): List<StateRef> |
outputStates |
fun outputStates(): List<ContractState> |
setTime |
fun setTime(time: Instant, authority: Party, timeTolerance: Duration): Unit Places a TimestampCommand in this transaction, removing any existing command if there is one. The command requires a signature from the Notary service, which acts as a Timestamp Authority. The signature can be obtained using NotaryProtocol. |
signWith |
fun signWith(key: KeyPair): Unit |
toSignedTransaction |
fun toSignedTransaction(checkSufficientSignatures: Boolean = true): SignedTransaction |
toWireTransaction |
fun toWireTransaction(): WireTransaction |
withItems |
fun withItems(vararg items: Any): TransactionBuilder A more convenient way to add items to this transaction that calls the add* methods for you based on type |