interface LinearState : ContractState
A state that evolves by superseding itself, all of which share the common "thread"
This simplifies the job of tracking the current version of certain types of state in e.g. a wallet
thread |
abstract val thread: SecureHash Unique thread id within the wallets of all parties |
contract |
abstract val contract: Contract Contract by which the state belongs |
notary |
abstract val notary: Party Identity of the notary that ensures this state is not used as an input to a transaction more than once |
isRelevant |
abstract fun isRelevant(ourKeys: Set<PublicKey>): Boolean true if this should be tracked by our wallet(s) |
hash |
fun ContractState.hash(): SecureHash Returns the SHA-256 hash of the serialised contents of this state (not cached) |
label |
infix fun ContractState.label(label: String): LabeledOutput |
DealState |
interface DealState : LinearState Interface representing an agreement that exposes various attributes that are common. Implementing it simplifies implementation of general protocols that manipulate many agreement types. |