interface LinearState : ContractState
A state that evolves by superseding itself, all of which share the common "linearId".
This simplifies the job of tracking the current version of certain types of state in e.g. a vault.
ClauseVerifier |
class ClauseVerifier<S : LinearState, C : CommandData> : Clause<S, C, Unit> Standard clause to verify the LinearState safety properties. |
linearId |
abstract val linearId: UniqueIdentifier Unique id shared by all LinearState states throughout history within the vaults of all parties. Verify methods should check that one input and one output share the id in a transaction, except at issuance/termination. |
contract |
abstract val contract: Contract An instance of the contract class that will verify this state. |
encumbrance |
open val encumbrance: Int? All contract states may be |
participants |
abstract val participants: List<PublicKey> A |
isRelevant |
abstract fun isRelevant(ourKeys: Set<PublicKey>): Boolean True if this should be tracked by our vault(s). |
hash |
fun ContractState.hash(): SecureHash Returns the SHA-256 hash of the serialised contents of this state (not cached) |
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. |