public void ConnectSimulatedOrderExexcutionProvider()
        {
            var logonArrived = false;

            ManualResetEvent manualLogonEvent     = new ManualResetEvent(false);
            ManualResetEvent manualConnectedEvent = new ManualResetEvent(false);

            _orderExecutionService.Connected += delegate()
            {
                _orderExecutionService.Login(new Login()
                {
                    OrderExecutionProvider = OrderExecutionProvider.Simulated
                });
                manualConnectedEvent.Set();
            };

            _orderExecutionService.LogonArrived +=
                delegate(string obj)
            {
                logonArrived = true;
                manualLogonEvent.Set();
            };

            _orderExecutionService.StartService();

            manualConnectedEvent.WaitOne(30000, false);
            manualLogonEvent.WaitOne(30000, false);
        }
Example #2
0
        /// <summary>
        /// Establishes connection with Order Execution Server
        /// </summary>
        public void Connect()
        {
            // Initialize service to re-establish connection
            _orderExecutionService.InitializeService();

            // Start Service
            _orderExecutionService.StartService();
        }
Example #3
0
        /// <summary>
        /// Argument Constructor
        /// </summary>
        /// <param name="orderExecutionService">Provides communication access with Order Execution Server</param>
        public OrderExecutionManager(OrderExecutionService orderExecutionService)
        {
            // Save object reference
            _orderExecutionService = orderExecutionService;

            SubscribeExecutionServiceEvents();

            // Start Service
            _orderExecutionService.StartService();
        }
        public void ConnectivityTestCase()
        {
            bool logonArrived  = false;
            bool logoutArrived = false;

            ManualResetEvent manualLogonEvent     = new ManualResetEvent(false);
            ManualResetEvent manualLogoutEvent    = new ManualResetEvent(false);
            ManualResetEvent manualConnectedEvent = new ManualResetEvent(false);

            _service.Connected += delegate()
            {
                _service.Login(new Login()
                {
                    OrderExecutionProvider = TradeHubConstants.OrderExecutionProvider.Simulated
                });
                manualConnectedEvent.Set();
            };

            _service.LogonArrived +=
                delegate(string obj)
            {
                logonArrived = true;
                _service.Logout(new Logout {
                    OrderExecutionProvider = TradeHubConstants.OrderExecutionProvider.Simulated
                });
                manualLogonEvent.Set();
            };

            _service.LogoutArrived +=
                delegate(string obj)
            {
                logoutArrived = true;
                manualLogoutEvent.Set();
            };

            _service.StartService();

            manualConnectedEvent.WaitOne(30000, false);
            manualLogonEvent.WaitOne(30000, false);
            manualLogoutEvent.WaitOne(30000, false);

            Assert.AreEqual(true, logonArrived, "Logon Arrived");
            Assert.AreEqual(true, logoutArrived, "Logout Arrived");
        }