TwoPartyDealFlow.Secondary - corda

corda / net.corda.finance.flows / TwoPartyDealFlow / Secondary

# Secondary

`abstract class Secondary<U> : FlowLogic<SignedTransaction>`

Abstracted bilateral deal flow participant that is recipient of initial communication.

### Types

#### COLLECTING_SIGNATURES | `object COLLECTING_SIGNATURES : Step`
#### RECEIVING | `object RECEIVING : Step`
#### RECORDING | `object RECORDING : Step`
#### SIGNING | `object SIGNING : Step`
#### VERIFYING | `object VERIFYING : Step`

### Constructors

#### <init> | Abstracted bilateral deal flow participant that is recipient of initial communication. `Secondary(progressTracker: ProgressTracker = Secondary.tracker())`

### Properties

#### otherSideSession | `abstract val otherSideSession: FlowSession`
#### 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

#### assembleSharedTX | `abstract fun assembleSharedTX(handshake: Handshake<U>): Triple<TransactionBuilder, List<PublicKey>, List<TransactionSignature>>`
#### call | This is where you fill out your business logic. `open fun call(): SignedTransaction`
#### validateHandshake | `abstract fun validateHandshake(handshake: Handshake<U>): Handshake<U>`

### Companion Object Functions

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