interface ContractState
A contract state (or just "state") contains opaque data used by a contract program. It can be thought of as a disk file that the program can use to persist data across transactions. States are immutable: once created they are never updated, instead, any changes must generate a new successor state. States can be updated (consumed) only once: the notary is responsible for ensuring there is no "double spending" by only signing a transaction if the input states are all free.
abstract val participants: List<AbstractParty>
A participant is any party that is able to consume this state in a valid transaction. |
fun ContractState.hash(): SecureHash
Returns the SHA-256 hash of the serialised contents of this state (not cached!) |
interface LinearState : ContractState
A state that evolves by superseding itself, all of which share the common "linearId". |
|
interface OwnableState : ContractState
A contract state that can have a single owner. |
|
interface QueryableState : ContractState
A contract state that may be mapped to database schemas configured for this node to support querying for, or filtering of, states. |
|
interface SchedulableState : ContractState |