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.
| parties |
abstract val parties: List<Party>Exposes the Parties involved in a generic way |
| ref |
abstract val ref: StringHuman readable well known reference (e.g. trade reference) |
| linearId |
abstract val linearId: UniqueIdentifierUnique id shared by all LinearState states throughout history within the wallets 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): TransactionBuilderGenerate a partial transaction representing an agreement (command) to this deal, allowing a general deal/agreement protocol to generate the necessary transaction for potential implementations. |
| withPublicKey |
abstract fun withPublicKey(before: Party, after: PublicKey): DealState |
| isRelevant |
abstract fun isRelevant(ourKeys: Set<PublicKey>): BooleanTrue if this should be tracked by our wallet(s). |
| hash |
fun ContractState.hash(): SecureHashReturns the SHA-256 hash of the serialised contents of this state (not cached) |
| FixableDealState |
interface FixableDealState : DealStateInterface adding fixing specific methods. |