示例#1
0
        /// <summary>
        /// Populate Intial Services information
        /// </summary>
        private void PopulateServiceDetails()
        {
            // Create Service Details
            ServiceDetails marketServiceDetails   = new ServiceDetails(GetEnumDescription.GetValue(Common.Constants.Services.MarketDataService), ServiceStatus.Disabled);
            ServiceDetails orderServiceDetails    = new ServiceDetails(GetEnumDescription.GetValue(Common.Constants.Services.OrderExecutionService), ServiceStatus.Disabled);
            ServiceDetails positionServiceDetails = new ServiceDetails(GetEnumDescription.GetValue(Common.Constants.Services.PositionService), ServiceStatus.Disabled);

            // Set Display names
            marketServiceDetails.ServiceDisplayName = marketServiceDetails.ServiceName.Replace("TradeHub", "");
            marketServiceDetails.ServiceDisplayName = marketServiceDetails.ServiceDisplayName.Replace("Service", "");

            orderServiceDetails.ServiceDisplayName = orderServiceDetails.ServiceName.Replace("TradeHub", "");
            orderServiceDetails.ServiceDisplayName = orderServiceDetails.ServiceDisplayName.Replace("Service", "");

            positionServiceDetails.ServiceDisplayName = positionServiceDetails.ServiceName.Replace("TradeHub", "");
            positionServiceDetails.ServiceDisplayName = positionServiceDetails.ServiceDisplayName.Replace("Service", "");

            // Add details to collection
            _serviceDetailsCollection.Add(marketServiceDetails);
            _serviceDetailsCollection.Add(orderServiceDetails);
            _serviceDetailsCollection.Add(positionServiceDetails);

            // Get Actual Service Status
            marketServiceDetails.Status = GetServiceStatus(marketServiceDetails.ServiceName);
            orderServiceDetails.Status  = GetServiceStatus(orderServiceDetails.ServiceName);
        }
 /// <summary>
 /// Called when Service status is modified
 /// </summary>
 /// <param name="serviceDetails"></param>
 private void OnServiceStatusModification(ServiceDetails serviceDetails)
 {
     if (serviceDetails.ServiceName.Equals(GetEnumDescription.GetValue(Common.Constants.Services.MarketDataService)))
     {
         if (serviceDetails.Status.Equals(ServiceStatus.Running))
         {
             _marketDataManager.Connect();
         }
         else if (serviceDetails.Status.Equals(ServiceStatus.Stopped))
         {
             _marketDataManager.Disconnect();
         }
     }
 }
        /// <summary>
        /// Adds new Order Execution Provider to Order Execution Engine - Server
        /// </summary>
        /// <param name="filePath"></param>
        /// <param name="providerName"></param>
        private void AddOrderExecutionProvider(string filePath, string providerName)
        {
            string serviceName = GetEnumDescription.GetValue(Services.OrderExecutionService);
            var    service     = new ServiceDetails(serviceName, ServiceStatus.Stopping);

            // Stop Order Execution Service
            EventSystem.Publish <ServiceDetails>(service);

            var result = _providersController.AddOrderExecutionProvider(filePath, providerName);

            // Start Order Execution Service
            service.Status = ServiceStatus.Starting;
            EventSystem.Publish <ServiceDetails>(service);

            // Show end result on UI
            DisplayInformationMessage(result, "Order Execution Provider");
        }
示例#4
0
 public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
 {
     if (value != null)
     {
         if (value is Enum)
         {
             return(GetEnumDescription.GetDescription((Enum)value));
         }
         else
         {
             return(value.ToString());
         }
     }
     else
     {
         return(string.Empty);
     }
 }