Class RFSTrade

  • All Implemented Interfaces:
    RFSCoreTrade

    public class RFSTrade
    extends UserTrade
    implements RFSCoreTrade

    A single RFSTrade active in the system.

    A Trade is initiated by a client and is tied to a TradeChannel. The lifecycle of a Trade consists of a number of messages, represented by TradeEvents, being sent between the client and the Trading System in both directions. These messages cause the Trade to transition between a number of predefined states.

    Trades are comprised of one or more trade legs, which each leg representing the exchange of a financial instrument and the resultant cash flow. It is possible to add, remove and update trades from the client or from the TradingDataSource.

    A Trade is uniquely identified in two ways: by RequestId set by the client and a TradeId set by the Trading System.

    • Constructor Summary

      Constructors 
      Constructor Description
      RFSTrade​(@NotNull com.caplin.trading.Trade backingTrade, @NotNull java.util.concurrent.ScheduledExecutorService executorService)
      Constructor used by the generated code.
    • Constructor Detail

      • RFSTrade

        public RFSTrade​(@NotNull
                        @NotNull com.caplin.trading.Trade backingTrade,
                        @NotNull
                        @NotNull java.util.concurrent.ScheduledExecutorService executorService)

        Constructor used by the generated code.

        Parameters:
        backingTrade - To be used for the parent constructor
        executorService - To be used for the parent constructor (What service is going execute the backingTrade)
    • Method Detail

      • createErrorTradeEvent

        @NotNull
        public @NotNull ErrorTradeEvent createErrorTradeEvent()

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the Error transition in the trade model of the adapter and client application

        Specified by:
        createErrorTradeEvent in interface RFSCoreTrade
        Returns:
        A new instance of ErrorTradeEvent.
      • sendErrorEvent

        public void sendErrorEvent​(@NotNull
                                   @NotNull ErrorTradeEvent event)

        Send a TradeEvent to trigger the Error transition in the trade model of the adapter and client application

        Specified by:
        sendErrorEvent in interface RFSCoreTrade
        Parameters:
        event - The event to send.
      • createSubmitAckTradeEvent

        @NotNull
        public @NotNull SubmitAckTradeEvent createSubmitAckTradeEvent()

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the SubmitAck transition in the trade model of the adapter and client application

        Specified by:
        createSubmitAckTradeEvent in interface RFSCoreTrade
        Returns:
        A new instance of SubmitAckTradeEvent.
      • sendSubmitAckEvent

        public void sendSubmitAckEvent​(@NotNull
                                       @NotNull SubmitAckTradeEvent event)

        Send a TradeEvent to trigger the SubmitAck transition in the trade model of the adapter and client application

        Specified by:
        sendSubmitAckEvent in interface RFSCoreTrade
        Parameters:
        event - The event to send.
      • sendSubmitAckEvent

        public void sendSubmitAckEvent()

        Send a TradeEvent with no fields to trigger the SubmitAck transition in the trade model of the adapter and client application

        Specified by:
        sendSubmitAckEvent in interface RFSCoreTrade
      • createRejectTradeEvent

        @NotNull
        public @NotNull RejectTradeEvent createRejectTradeEvent()

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the Reject transition in the trade model of the adapter and client application

        Specified by:
        createRejectTradeEvent in interface RFSCoreTrade
        Returns:
        A new instance of RejectTradeEvent.
      • sendRejectEvent

        public void sendRejectEvent​(@NotNull
                                    @NotNull RejectTradeEvent event)

        Send a TradeEvent to trigger the Reject transition in the trade model of the adapter and client application

        Specified by:
        sendRejectEvent in interface RFSCoreTrade
        Parameters:
        event - The event to send.
      • createClientCloseAckTradeEvent

        @NotNull
        public @NotNull ClientCloseAckTradeEvent createClientCloseAckTradeEvent()

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the ClientCloseAck transition in the trade model of the adapter and client application

        Specified by:
        createClientCloseAckTradeEvent in interface RFSCoreTrade
        Returns:
        A new instance of ClientCloseAckTradeEvent.
      • sendClientCloseAckEvent

        public void sendClientCloseAckEvent​(@NotNull
                                            @NotNull ClientCloseAckTradeEvent event)

        Send a TradeEvent to trigger the ClientCloseAck transition in the trade model of the adapter and client application

        Specified by:
        sendClientCloseAckEvent in interface RFSCoreTrade
        Parameters:
        event - The event to send.
      • sendClientCloseAckEvent

        public void sendClientCloseAckEvent()

        Send a TradeEvent with no fields to trigger the ClientCloseAck transition in the trade model of the adapter and client application

        Specified by:
        sendClientCloseAckEvent in interface RFSCoreTrade
      • createWithdrawTradeEvent

        @NotNull
        public @NotNull WithdrawTradeEvent createWithdrawTradeEvent()

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the Withdraw transition in the trade model of the adapter and client application

        Specified by:
        createWithdrawTradeEvent in interface RFSCoreTrade
        Returns:
        A new instance of WithdrawTradeEvent.
      • sendWithdrawEvent

        public void sendWithdrawEvent​(@NotNull
                                      @NotNull WithdrawTradeEvent event)

        Send a TradeEvent to trigger the Withdraw transition in the trade model of the adapter and client application

        Specified by:
        sendWithdrawEvent in interface RFSCoreTrade
        Parameters:
        event - The event to send.
      • sendWithdrawEvent

        public void sendWithdrawEvent()

        Send a TradeEvent with no fields to trigger the Withdraw transition in the trade model of the adapter and client application

        Specified by:
        sendWithdrawEvent in interface RFSCoreTrade
      • createExecuteAckTradeEvent

        @NotNull
        public @NotNull ExecuteAckTradeEvent createExecuteAckTradeEvent()

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the ExecuteAck transition in the trade model of the adapter and client application

        Specified by:
        createExecuteAckTradeEvent in interface RFSCoreTrade
        Returns:
        A new instance of ExecuteAckTradeEvent.
      • sendExecuteAckEvent

        public void sendExecuteAckEvent​(@NotNull
                                        @NotNull ExecuteAckTradeEvent event)

        Send a TradeEvent to trigger the ExecuteAck transition in the trade model of the adapter and client application

        Specified by:
        sendExecuteAckEvent in interface RFSCoreTrade
        Parameters:
        event - The event to send.
      • sendExecuteAckEvent

        public void sendExecuteAckEvent()

        Send a TradeEvent with no fields to trigger the ExecuteAck transition in the trade model of the adapter and client application

        Specified by:
        sendExecuteAckEvent in interface RFSCoreTrade
      • createPriceUpdateTradeEvent

        @NotNull
        public @NotNull PriceUpdateTradeEvent createPriceUpdateTradeEvent()

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the PriceUpdate transition in the trade model of the adapter and client application

        Specified by:
        createPriceUpdateTradeEvent in interface RFSCoreTrade
        Returns:
        A new instance of PriceUpdateTradeEvent.
      • sendPriceUpdateEvent

        public void sendPriceUpdateEvent​(@NotNull
                                         @NotNull PriceUpdateTradeEvent event)

        Send a TradeEvent to trigger the PriceUpdate transition in the trade model of the adapter and client application

        Specified by:
        sendPriceUpdateEvent in interface RFSCoreTrade
        Parameters:
        event - The event to send.
      • sendPriceUpdateEvent

        public void sendPriceUpdateEvent​(@NotNull
                                         @NotNull Message message)

        Send a TradeEvent to trigger the PriceUpdate transition in the trade model of the adapter and client application

        Parameters:
        message - The message to send.
      • createPriceUpdateTradeEvent

        @NotNull
        public @NotNull PriceUpdateTradeEvent createPriceUpdateTradeEvent​(@NotNull
                                                                          @NotNull Message message)

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the PriceUpdate transition in the trade model of the adapter and client application

        Specified by:
        createPriceUpdateTradeEvent in interface RFSCoreTrade
        Parameters:
        message - a Message to be passed to the TradeEvent
        Returns:
        A new instance of PriceUpdateTradeEvent.
      • createWarningTradeEvent

        @NotNull
        public @NotNull WarningTradeEvent createWarningTradeEvent()

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the Warning transition in the trade model of the adapter and client application

        Specified by:
        createWarningTradeEvent in interface RFSCoreTrade
        Returns:
        A new instance of WarningTradeEvent.
      • sendWarningEvent

        public void sendWarningEvent​(@NotNull
                                     @NotNull WarningTradeEvent event)

        Send a TradeEvent to trigger the Warning transition in the trade model of the adapter and client application

        Specified by:
        sendWarningEvent in interface RFSCoreTrade
        Parameters:
        event - The event to send.
      • sendWarningEvent

        public void sendWarningEvent()

        Send a TradeEvent with no fields to trigger the Warning transition in the trade model of the adapter and client application

        Specified by:
        sendWarningEvent in interface RFSCoreTrade
      • createHoldTradeEvent

        @NotNull
        public @NotNull HoldTradeEvent createHoldTradeEvent()

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the Hold transition in the trade model of the adapter and client application

        Specified by:
        createHoldTradeEvent in interface RFSCoreTrade
        Returns:
        A new instance of HoldTradeEvent.
      • sendHoldEvent

        public void sendHoldEvent​(@NotNull
                                  @NotNull HoldTradeEvent event)

        Send a TradeEvent to trigger the Hold transition in the trade model of the adapter and client application

        Specified by:
        sendHoldEvent in interface RFSCoreTrade
        Parameters:
        event - The event to send.
      • sendHoldEvent

        public void sendHoldEvent()

        Send a TradeEvent with no fields to trigger the Hold transition in the trade model of the adapter and client application

        Specified by:
        sendHoldEvent in interface RFSCoreTrade
      • createExpireTradeEvent

        @NotNull
        public @NotNull ExpireTradeEvent createExpireTradeEvent()

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the Expire transition in the trade model of the adapter and client application

        Specified by:
        createExpireTradeEvent in interface RFSCoreTrade
        Returns:
        A new instance of ExpireTradeEvent.
      • sendExpireEvent

        public void sendExpireEvent​(@NotNull
                                    @NotNull ExpireTradeEvent event)

        Send a TradeEvent to trigger the Expire transition in the trade model of the adapter and client application

        Specified by:
        sendExpireEvent in interface RFSCoreTrade
        Parameters:
        event - The event to send.
      • sendExpireEvent

        public void sendExpireEvent()

        Send a TradeEvent with no fields to trigger the Expire transition in the trade model of the adapter and client application

        Specified by:
        sendExpireEvent in interface RFSCoreTrade
      • createPickUpTradeEvent

        @NotNull
        public @NotNull PickUpTradeEvent createPickUpTradeEvent()

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the PickUp transition in the trade model of the adapter and client application

        Specified by:
        createPickUpTradeEvent in interface RFSCoreTrade
        Returns:
        A new instance of PickUpTradeEvent.
      • sendPickUpEvent

        public void sendPickUpEvent​(@NotNull
                                    @NotNull PickUpTradeEvent event)

        Send a TradeEvent to trigger the PickUp transition in the trade model of the adapter and client application

        Specified by:
        sendPickUpEvent in interface RFSCoreTrade
        Parameters:
        event - The event to send.
      • sendPickUpEvent

        public void sendPickUpEvent()

        Send a TradeEvent with no fields to trigger the PickUp transition in the trade model of the adapter and client application

        Specified by:
        sendPickUpEvent in interface RFSCoreTrade
      • createTradeConfirmationTradeEvent

        @NotNull
        public @NotNull TradeConfirmationTradeEvent createTradeConfirmationTradeEvent()

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the TradeConfirmation transition in the trade model of the adapter and client application

        Specified by:
        createTradeConfirmationTradeEvent in interface RFSCoreTrade
        Returns:
        A new instance of TradeConfirmationTradeEvent.
      • sendTradeConfirmationEvent

        public void sendTradeConfirmationEvent​(@NotNull
                                               @NotNull TradeConfirmationTradeEvent event)

        Send a TradeEvent to trigger the TradeConfirmation transition in the trade model of the adapter and client application

        Specified by:
        sendTradeConfirmationEvent in interface RFSCoreTrade
        Parameters:
        event - The event to send.
      • sendTradeConfirmationEvent

        public void sendTradeConfirmationEvent​(@NotNull
                                               @NotNull Message message)

        Send a TradeEvent to trigger the TradeConfirmation transition in the trade model of the adapter and client application

        Parameters:
        message - The message to send.
      • createTradeConfirmationTradeEvent

        @NotNull
        public @NotNull TradeConfirmationTradeEvent createTradeConfirmationTradeEvent​(@NotNull
                                                                                      @NotNull Message message)

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the TradeConfirmation transition in the trade model of the adapter and client application

        Specified by:
        createTradeConfirmationTradeEvent in interface RFSCoreTrade
        Parameters:
        message - a Message to be passed to the TradeEvent
        Returns:
        A new instance of TradeConfirmationTradeEvent.
      • createAcceptWarningAckTradeEvent

        @NotNull
        public @NotNull AcceptWarningAckTradeEvent createAcceptWarningAckTradeEvent()

        Create a TradeEvent that can be passed to Trade.sendEvent to trigger the AcceptWarningAck transition in the trade model of the adapter and client application

        Specified by:
        createAcceptWarningAckTradeEvent in interface RFSCoreTrade
        Returns:
        A new instance of AcceptWarningAckTradeEvent.
      • sendAcceptWarningAckEvent

        public void sendAcceptWarningAckEvent​(@NotNull
                                              @NotNull AcceptWarningAckTradeEvent event)

        Send a TradeEvent to trigger the AcceptWarningAck transition in the trade model of the adapter and client application

        Specified by:
        sendAcceptWarningAckEvent in interface RFSCoreTrade
        Parameters:
        event - The event to send.
      • sendAcceptWarningAckEvent

        public void sendAcceptWarningAckEvent()

        Send a TradeEvent with no fields to trigger the AcceptWarningAck transition in the trade model of the adapter and client application

        Specified by:
        sendAcceptWarningAckEvent in interface RFSCoreTrade