interface DealState : LinearState
Interface representing an agreement that exposes various attributes that are common. Implementing it simplifies implementation of general flows that manipulate many agreement types.
parties |
abstract val parties: List<AnonymousParty>
Exposes the Parties involved in a generic way. |
ref |
abstract val ref: String
Human readable well known reference (e.g. trade reference) |
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. |
generateAgreement |
abstract fun generateAgreement(notary: Party): TransactionBuilder
Generate a partial transaction representing an agreement (command) to this deal, allowing a general deal/agreement flow to generate the necessary transaction for potential implementations. |
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!) |
FixableDealState |
interface FixableDealState : DealState
Interface adding fixing specific methods. |
State |
data class State : DealState |