/// <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"); }
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); } }