NotaryChangeLedgerTransaction

A notary change transaction with fully resolved inputs and signatures. In contrast with a regular transaction, signatures are checked against the signers specified by input states' participants fields, so full resolution is needed for signature verification.

Constructors

Link copied to clipboard
constructor(inputs: List<StateAndRef<ContractState>>, notary: Party, newNotary: Party, id: SecureHash, sigs: List<TransactionSignature>)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard
open override val id: SecureHash
Link copied to clipboard
open override val inputs: List<StateAndRef<ContractState>>

The inputs of this transaction. Note that in BaseTransaction subclasses the type of this list may change!

Link copied to clipboard

Network parameters that were in force when this transaction was created. Resolved from the hash of network parameters on the corresponding wire transaction.

Link copied to clipboard
Link copied to clipboard
open override val notary: Party

If present, the notary for this transaction. If absent then the transaction is not notarised at all. This is intended for issuance/genesis transactions that don't consume any other states and thus can't double spend anything.

Link copied to clipboard

We compute the outputs on demand by applying the notary field modification to the inputs.

Link copied to clipboard

Helper property to return a list of ContractState objects, rather than the often less convenient TransactionState

Link copied to clipboard

A list of reusable reference data states which can be referred to by other contracts in this transaction.

Link copied to clipboard
open override val requiredSigningKeys: Set<PublicKey>

Specifies all the public keys that require signatures for the transaction to be valid.

Link copied to clipboard
open override val sigs: List<TransactionSignature>

List of signatures on this transaction.

Functions

Link copied to clipboard

Mathematically validates the signatures that are present on this transaction. This does not imply that the signatures are by the right keys, or that there are sufficient signatures, just that they aren't corrupt. If you use this function directly you'll need to do the other checks yourself. Probably you want verifyRequiredSignatures instead.

Link copied to clipboard
Link copied to clipboard
operator fun component2(): Party
Link copied to clipboard
operator fun component3(): Party
Link copied to clipboard
operator fun component4(): SecureHash
Link copied to clipboard
Link copied to clipboard
operator fun component6(): NetworkParameters?
Link copied to clipboard
fun copy(inputs: List<StateAndRef<ContractState>> = this.inputs, notary: Party = this.notary, newNotary: Party = this.newNotary, id: SecureHash = this.id, sigs: List<TransactionSignature> = this.sigs): NotaryChangeLedgerTransaction
Link copied to clipboard
open operator override fun equals(other: Any?): Boolean
Link copied to clipboard
inline fun <T : ContractState> filterOutputs(crossinline predicate: (T) -> Boolean): List<T>

fun <T : ContractState> filterOutputs(clazz: Class<T>, predicate: Predicate<T>): List<T>

Helper to simplify filtering outputs according to a Predicate.

Link copied to clipboard
inline fun <T : ContractState> filterOutRefs(crossinline predicate: (T) -> Boolean): List<StateAndRef<T>>

fun <T : ContractState> filterOutRefs(clazz: Class<T>, predicate: Predicate<T>): List<StateAndRef<T>>

Helper to simplify filtering output StateAndRef items according to a Predicate.

Link copied to clipboard
inline fun <T : ContractState> findOutput(crossinline predicate: (T) -> Boolean): T

fun <T : ContractState> findOutput(clazz: Class<T>, predicate: Predicate<T>): T

Helper to simplify finding a single output matching a Predicate.

Link copied to clipboard
inline fun <T : ContractState> findOutRef(crossinline predicate: (T) -> Boolean): StateAndRef<T>

fun <T : ContractState> findOutRef(clazz: Class<T>, predicate: Predicate<T>): StateAndRef<T>

Helper to simplify finding a single output StateAndRef matching a Predicate.

Link copied to clipboard
open override fun getKeyDescriptions(keys: Set<PublicKey>): List<String>

Get a human readable description of where signatures are required from, and are missing, to assist in debugging the underlying cause.

Link copied to clipboard

Return the PublicKeys for which we still need signatures.

Link copied to clipboard

Helper to simplify getting an indexed output.

Link copied to clipboard
open override fun hashCode(): Int
Link copied to clipboard
inline fun <T : ContractState> outputsOfType(): List<T>

Helper to simplify getting all output states of a particular class, interface, or base class.

Link copied to clipboard

Returns a StateAndRef for the given output index.

Returns a StateAndRef for the requested output state, or throws IllegalArgumentException if not found.

Link copied to clipboard

Helper to simplify getting all output StateAndRef items of a particular state class, interface, or base class.

Link copied to clipboard
Link copied to clipboard
open override fun toString(): String
Link copied to clipboard
open fun verifyRequiredSignatures(): <Error class: unknown class>

Verifies the signatures on this transaction and throws if any are missing. In this context, "verifying" means checking they are valid signatures and that their public keys are in the requiredSigningKeys set.

Link copied to clipboard
open fun verifySignaturesExcept(vararg allowedToBeMissing: PublicKey)
open fun verifySignaturesExcept(allowedToBeMissing: Collection<PublicKey>)

Verifies the signatures on this transaction and throws if any are missing which aren't passed as parameters. In this context, "verifying" means checking they are valid signatures and that their public keys are in the requiredSigningKeys set.