public SimulationTypeManager(ILogger logger, IAppConfigurationManager configurationManager, IDiagnosticManager diagnosticManager, IMarketDataManager marketDataManager, INotificationManager notificationManager, ICalendarRebalanceScheduleManager rebalanceScheduleManager) { _account = configurationManager.GetAccount(); _logger = logger; _diagnosticManager = diagnosticManager; _notificationManager = notificationManager; _marketDataManager = marketDataManager; _calendarRebalanceScheduleManager = rebalanceScheduleManager; var containerBuilder = new ContainerBuilder(); containerBuilder.Register <IDiagnosticManager>(x => _diagnosticManager).SingleInstance(); containerBuilder.Register <IMarketDataManager>(x => _marketDataManager).SingleInstance(); containerBuilder.Register <INotificationManager>(x => _notificationManager).SingleInstance(); containerBuilder.Register <ICalendarRebalanceScheduleManager>(x => _calendarRebalanceScheduleManager).SingleInstance(); containerBuilder.Register <IAppConfigurationManager>(x => configurationManager).SingleInstance(); containerBuilder.Register <ILogger>(x => _logger).SingleInstance(); containerBuilder.RegisterType <RebalanceSimulationManager>().As <ISimulationManager, IRebalanceSimulationManager>().SingleInstance(); containerBuilder.RegisterType <BuyAndHoldSimulationManager>().As <ISimulationManager, IBuyAndHoldSimulationManager>().SingleInstance(); _container = containerBuilder.Build(); }
public RebalanceSimulationManager(ILogger logger, IAppConfigurationManager configurationManager, IDiagnosticManager diagnosticManager, IMarketDataManager marketDataManager, INotificationManager notificationManager, ICalendarRebalanceScheduleManager rebalanceScheduleManager) { _calendarRebalanceScheduleManager = rebalanceScheduleManager; _diagnosticManager = diagnosticManager; _marketDataManager = marketDataManager; _account = configurationManager.GetAccount(); _notificationManager = notificationManager; _logger = logger; _notificationManager.SimulationEnded += NotificationManager_SimulationEnded; }