com.r3corda.protocols / TwoPartyDealProtocol / Instigator

Instigator

class Instigator<T : DealState> : Primary<T>

One side of the protocol for inserting a pre-agreed deal.



Constructors

<init> Instigator(otherSide: Party, notary: Party, payload: T, myKeyPair: KeyPair, otherSessionID: Long, progressTracker: ProgressTracker = Primary.tracker())

One side of the protocol for inserting a pre-agreed deal.

Properties

myKeyPair open val myKeyPair: KeyPair
notary val notary: Party
notaryNode open val notaryNode: NodeInfo
otherSessionID open val otherSessionID: Long
otherSide open val otherSide: Party
payload open val payload: T
progressTracker open val progressTracker: ProgressTracker

Override this to provide a ProgressTracker. If one is provided and stepped, the framework will do something helpful with the progress reports. If this protocol is invoked as a sub-protocol of another, then the tracker will be made a child of the current step in the parent. If its null, this protocol doesnt track progress.

Inherited Properties

topic open val topic: String

The topic to use when communicating with other parties. If more than one topic is required then use sub-protocols. Note that this is temporary until protocol sessions are properly implemented.

Inherited Functions

call open fun call(): SignedTransaction

This is where you fill out your business logic.

getPartialTransaction fun getPartialTransaction(): UntrustworthyData<SignedTransaction>
signWithOurKey open fun signWithOurKey(partialTX: SignedTransaction): WithKey
verifyPartialTransaction fun verifyPartialTransaction(untrustedPartialTX: UntrustworthyData<SignedTransaction>): SignedTransaction