interface LinearState : ContractStateA 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: UniqueIdentifierUnique 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: ContractAn 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>): BooleanTrue if this should be tracked by our vault(s). |
| hash |
fun ContractState.hash(): SecureHashReturns the SHA-256 hash of the serialised contents of this state (not cached) |
| DealState |
interface DealState : LinearStateInterface representing an agreement that exposes various attributes that are common. Implementing it simplifies implementation of general protocols that manipulate many agreement types. |