Class OpenOrdersListener

  • All Implemented Interfaces:
    com.caplin.ret.trapi.fx.order.listener.OrderEventListener, com.caplin.ret.trapi.fx.order.listener.OrderListener, com.caplin.ret.trapi.fx.order.listener.OrderModifyRequestListener

    public class OpenOrdersListener
    extends java.lang.Object
    implements com.caplin.ret.trapi.fx.order.listener.OrderListener
    Order update receiver which forwards data from LOMS to a client's blotters.

    OpenOrdersListener has two groups of methods which handle individual updates and 'bulk' updates. LOMS is responsible for passing us either individual or batch updates.

    The correctness of update ordering is maintained through the use of a single thread executor. Bulk updates in contrast are processed in parallel. Presumably the assumption in the original design was that the data will be old and is unlikely to be refreshed during processing.

    OpenOrdersListener collaborates with the BlotterDataExtractor to fan out order updates to the correct blotter.

    -(persession) alive as long as the user is subscribed to any blotter

    • Constructor Detail

      • OpenOrdersListener

        @Inject
        public OpenOrdersListener​(@Nonnull
                                  BlotterDataExtractor blotterDataExtractor,
                                  com.caplin.ret.trapi.concurrent.InjectableExecutorManager executorManager,
                                  @Nonnull
                                  java.lang.String user,
                                  @Nonnull
                                  OrderPermission orderViewPermission)
    • Method Detail

      • onLimitOrderDelete

        public void onLimitOrderDelete​(@Nonnull
                                       com.caplin.ret.trapi.fx.order.OrderEvent event)
        Specified by:
        onLimitOrderDelete in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onEventHistoryReceived

        public void onEventHistoryReceived​(@Nonnull
                                           com.caplin.ret.trapi.fx.order.OrderEventHistories eventHistory)
        Specified by:
        onEventHistoryReceived in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderModification

        public void onLimitOrderModification​(@Nonnull
                                             com.caplin.ret.trapi.fx.order.OrderModificationEvent event)
        Specified by:
        onLimitOrderModification in interface com.caplin.ret.trapi.fx.order.listener.OrderModifyRequestListener
      • onLimitOrderFillBooked

        public void onLimitOrderFillBooked​(@Nonnull
                                           com.caplin.ret.trapi.fx.order.OrderFillEvent event)
        Specified by:
        onLimitOrderFillBooked in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderReject

        public void onLimitOrderReject​(@Nonnull
                                       com.caplin.ret.trapi.fx.order.OrderErrorEvent event)
        Specified by:
        onLimitOrderReject in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onPreviousOrderReceived

        public void onPreviousOrderReceived​(@Nonnull
                                            com.caplin.ret.trapi.fx.FXOrder previousOrder)
        Specified by:
        onPreviousOrderReceived in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onBulkPreviousOrdersReceived

        public void onBulkPreviousOrdersReceived​(@Nonnull
                                                 java.util.List<com.caplin.ret.trapi.fx.order.CachedOrder> cachedOrders)
        Specified by:
        onBulkPreviousOrdersReceived in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • isInterested

        public boolean isInterested​(com.caplin.ret.trapi.fx.FXOrder order)
        Specified by:
        isInterested in interface com.caplin.ret.trapi.fx.order.listener.OrderListener
      • toDisplayString

        @Nonnull
        public java.lang.String toDisplayString()
        Specified by:
        toDisplayString in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderModifyFail

        public void onLimitOrderModifyFail​(com.caplin.ret.trapi.fx.order.OrderErrorEvent event)
        Specified by:
        onLimitOrderModifyFail in interface com.caplin.ret.trapi.fx.order.listener.OrderModifyRequestListener
      • onLimitOrderCompleted

        public void onLimitOrderCompleted​(com.caplin.ret.trapi.fx.order.OrderEvent event)
        Specified by:
        onLimitOrderCompleted in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderTraderCancelled

        public void onLimitOrderTraderCancelled​(com.caplin.ret.trapi.fx.order.OrderEvent event)
        Specified by:
        onLimitOrderTraderCancelled in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderTimeout

        public void onLimitOrderTimeout​(com.caplin.ret.trapi.fx.order.OrderEvent event)
        Specified by:
        onLimitOrderTimeout in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onDisconnect

        public void onDisconnect()
        Specified by:
        onDisconnect in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderRegister

        public void onLimitOrderRegister​(com.caplin.ret.trapi.fx.order.OrderEvent event)
        Specified by:
        onLimitOrderRegister in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderRegisterFail

        public void onLimitOrderRegisterFail​(com.caplin.ret.trapi.fx.order.OrderErrorEvent event)
        Specified by:
        onLimitOrderRegisterFail in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderActivate

        public void onLimitOrderActivate​(com.caplin.ret.trapi.fx.order.OrderEvent event)
        Specified by:
        onLimitOrderActivate in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderActivateFail

        public void onLimitOrderActivateFail​(com.caplin.ret.trapi.fx.order.OrderErrorEvent event)
        Specified by:
        onLimitOrderActivateFail in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderTolerancePass

        public void onLimitOrderTolerancePass​(com.caplin.ret.trapi.fx.order.OrderEvent event)
        Specified by:
        onLimitOrderTolerancePass in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderToleranceFail

        public void onLimitOrderToleranceFail​(com.caplin.ret.trapi.fx.order.OrderErrorEvent event)
        Specified by:
        onLimitOrderToleranceFail in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderDeactivate

        public void onLimitOrderDeactivate​(com.caplin.ret.trapi.fx.order.OrderEvent event)
        Specified by:
        onLimitOrderDeactivate in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderDeactivateFail

        public void onLimitOrderDeactivateFail​(com.caplin.ret.trapi.fx.order.OrderErrorEvent event)
        Specified by:
        onLimitOrderDeactivateFail in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderDeleteFail

        public void onLimitOrderDeleteFail​(com.caplin.ret.trapi.fx.order.OrderErrorEvent event)
        Specified by:
        onLimitOrderDeleteFail in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderCancel

        public void onLimitOrderCancel​(com.caplin.ret.trapi.fx.order.OrderEvent event)
        Specified by:
        onLimitOrderCancel in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderCancelPass

        public void onLimitOrderCancelPass​(com.caplin.ret.trapi.fx.order.OrderEvent event)
        Specified by:
        onLimitOrderCancelPass in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener
      • onLimitOrderCancelFail

        public void onLimitOrderCancelFail​(com.caplin.ret.trapi.fx.order.OrderErrorEvent event)
        Specified by:
        onLimitOrderCancelFail in interface com.caplin.ret.trapi.fx.order.listener.OrderEventListener