TwoPartyDealFlow.Primary
Keywords: net.corda.finance.flows.TwoPartyDealFlow.Primary class
Date: 2023-09-18

net.corda.finance.flows

## Class TwoPartyDealFlow.Primary

- net.corda.core.flows.FlowLogic<T>
- - net.corda.finance.flows.TwoPartyDealFlow.Primary

- Enclosing class:
    TwoPartyDealFlow

      public static class TwoPartyDealFlow.Primary
      extends FlowLogic<T>

  Abstracted bilateral deal flow participant that initiates communication/handshake.

- - ### Field Detail

    - #### Companion

          public static net.corda.finance.flows.TwoPartyDealFlow.Primary.Companion Companion

  - ### Constructor Detail

    - #### Primary

          public Primary(@NotNull
                         ProgressTracker progressTracker)

      Abstracted bilateral deal flow participant that initiates communication/handshake.

      Parameters:
        `progressTracker` -

        Override this to provide a `class 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.

        Note that this has to return a tracker before the flow is invoked. You can't change your mind half way through.

    - #### Primary

          public Primary()

      Abstracted bilateral deal flow participant that initiates communication/handshake.

  - ### Method Detail

    - #### getPayload

          @NotNull
          public java.lang.Object getPayload()

    - #### getNotaryParty

          @NotNull
          public Party getNotaryParty()

    - #### getOtherSideSession

          @NotNull
          public FlowSession getOtherSideSession()

    - #### call

          @Suspendable
           @NotNull
          public SignedTransaction call()

      This is where you fill out your business logic.

    - #### checkProposal

          @Suspendable
          public void checkProposal(@NotNull
                                                 SignedTransaction stx)

    - #### getProgressTracker

          @NotNull
          public ProgressTracker getProgressTracker()

      Override this to provide a `class 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.

      Note that this has to return a tracker before the flow is invoked. You can't change your mind half way through.

      See Also:
        `class ProgressTracker`