TwoPartyDealFlow.Primary - corda

corda / net.corda.finance.flows / TwoPartyDealFlow / Primary

# Primary

`abstract class Primary : FlowLogic<SignedTransaction>`

Abstracted bilateral deal flow participant that initiates communication/handshake.

### Types

#### GENERATING_ID | `object GENERATING_ID : Step`
#### SENDING_PROPOSAL | `object SENDING_PROPOSAL : Step`

### Constructors

#### <init> | Abstracted bilateral deal flow participant that initiates communication/handshake. `Primary(progressTracker: ProgressTracker = Primary.tracker())`

### Properties

#### notaryParty | `abstract val notaryParty: Party`
#### otherSideSession | `abstract val otherSideSession: FlowSession`
#### payload | `abstract val payload: Any`
#### progressTracker | Override this to provide a ProgressTracker. If one is provided and stepped, the framework will do something helpful with the progress reports e.g record to the audit service. If this flow is invoked as a subflow of another, then the tracker will be made a child of the current step in the parent. If it's null, this flow doesn't track progress. `open val progressTracker: ProgressTracker`

### Functions

#### call | This is where you fill out your business logic. `open fun call(): SignedTransaction`
#### checkProposal | `abstract fun checkProposal(stx: SignedTransaction): Unit`

### Companion Object Functions

#### tracker | `fun tracker(): ProgressTracker`