object TwoPartyDealProtocolClasses for manipulating a two party deal or agreement.
TODO: The subclasses should probably be broken out into individual protocols rather than making this an ever expanding collection of subclasses.
TODO: Also, the term Deal is used here where we might prefer Agreement.
TODO: Consider whether we can merge this with TwoPartyTradeProtocol
| Acceptor |
class Acceptor<T : DealState> : Secondary<T>One side of the protocol for inserting a pre-agreed deal. |
| Fixer |
class Fixer : Secondary<StateRef>One side of the fixing protocol for an interest rate swap, but could easily be generalised further. |
| FixingRoleDecider |
class FixingRoleDecider : ProtocolLogic<Unit>This protocol looks at the deal and decides whether to be the Fixer or Floater role in agreeing a fixing. |
| FixingSessionInitiation |
data class FixingSessionInitiation
|
| Floater |
class Floater : Primary<StateRef>One side of the fixing protocol for an interest rate swap, but could easily be generalised furher. |
| Handshake |
data class Handshake<out T> |
| Instigator |
class Instigator<out T : DealState> : Primary<T>One side of the protocol for inserting a pre-agreed deal. |
| Primary |
abstract class Primary<out U> : ProtocolLogic<SignedTransaction>Abstracted bilateral deal protocol participant that initiates communication/handshake. |
| Secondary |
abstract class Secondary<U> : ProtocolLogic<SignedTransaction>Abstracted bilateral deal protocol participant that is recipient of initial communication. |
| SignaturesFromPrimary |
class SignaturesFromPrimary |
| DealMismatchException |
class DealMismatchException : Exception |
| DealRefMismatchException |
class DealRefMismatchException : Exception |
| DEAL_TOPIC |
val DEAL_TOPIC: String |
| FIX_INITIATE_TOPIC |
val FIX_INITIATE_TOPIC: StringThis topic exists purely for FixingSessionInitiation to be sent from FixingRoleDecider to FixingSessionInitiationHandler |