corda / net.corda.core.node.services / Vault / Update

Update

data class Update<U : ContractState>

Represents an update observed by the vault that will be notified to observers. Include the StateRefs of transaction outputs that were consumed (inputs) and the ContractStates produced (outputs) to/by the transaction or transactions observed and the vault.

If the vault observes multiple transactions simultaneously, where some transactions consume the outputs of some of the other transactions observed, then the changes are observed "net" of those.

Constructors

<init>

Represents an update observed by the vault that will be notified to observers. Include the StateRefs of transaction outputs that were consumed (inputs) and the ContractStates produced (outputs) to/by the transaction or transactions observed and the vault.

Update(consumed: Set<StateAndRef<U>>, produced: Set<StateAndRef<U>>, flowId: UUID? = null, type: UpdateType = UpdateType.GENERAL, references: Set<StateAndRef<U>> = emptySet())

Properties

consumed

val consumed: Set<StateAndRef<U>>

flowId

val flowId: UUID?

produced

val produced: Set<StateAndRef<U>>

references

val references: Set<StateAndRef<U>>

type

Specifies the type of update, currently supported types are general and, contract upgrade and notary change. Notary change transactions only modify the notary field on states, and potentially need to be handled differently.

val type: UpdateType

Functions

containsType

Checks whether the update contains a state of the specified type.

fun <T : ContractState> containsType(): Boolean

Checks whether the update contains a state of the specified type and state status

fun <T : ContractState> containsType(clazz: Class<T>, status: StateStatus): Boolean

copy

Additional copy method to maintain backwards compatibility.

fun copy(consumed: Set<StateAndRef<U>>, produced: Set<StateAndRef<U>>, flowId: UUID? = null, type: UpdateType = UpdateType.GENERAL): Update<U>

isEmpty

fun isEmpty(): Boolean

plus

Combine two updates into a single update with the combined inputs and outputs of the two updates but net any outputs of the left-hand-side (this) that are consumed by the inputs of the right-hand-side (rhs).

operator fun plus(rhs: Update<U>): Update<U>

toString

fun toString(): String