public StartupManager(
     LykkeBalancesTimer lykkeBalancesTimer,
     ExternalBalancesTimer externalBalancesTimer,
     MarketMakerTimer marketMakerTimer,
     HedgingTimer hedgingTimer,
     SettlementsTimer settlementsTimer,
     InternalTraderTimer internalTraderTimer,
     PnLStopLossEngineTimer pnLStopLossEngineTimer,
     LykkeTradeSubscriber lykkeTradeSubscriber,
     B2C2QuoteSubscriber b2C2QuoteSubscriber,
     B2C2OrderBooksSubscriber b2C2OrderBooksSubscriber,
     QuoteSubscriber[] quoteSubscribers,
     InternalQuotePublisher internalQuotePublisher,
     InternalOrderBookPublisher internalOrderBookPublisher,
     LykkeTradeSubscriberMonitor lykkeTradeSubscriberMonitor,
     StorageMigrationService storageMigrationService,
     ITradeService tradeService)
 {
     _lykkeBalancesTimer          = lykkeBalancesTimer;
     _externalBalancesTimer       = externalBalancesTimer;
     _marketMakerTimer            = marketMakerTimer;
     _hedgingTimer                = hedgingTimer;
     _settlementsTimer            = settlementsTimer;
     _internalTraderTimer         = internalTraderTimer;
     _pnLStopLossEngineTimer      = pnLStopLossEngineTimer;
     _lykkeTradeSubscriber        = lykkeTradeSubscriber;
     _b2C2QuoteSubscriber         = b2C2QuoteSubscriber;
     _b2C2OrderBooksSubscriber    = b2C2OrderBooksSubscriber;
     _quoteSubscribers            = quoteSubscribers;
     _internalQuotePublisher      = internalQuotePublisher;
     _internalOrderBookPublisher  = internalOrderBookPublisher;
     _lykkeTradeSubscriberMonitor = lykkeTradeSubscriberMonitor;
     _storageMigrationService     = storageMigrationService;
     _tradeService                = tradeService;
 }
Exemple #2
0
        // ReSharper disable once UnusedParameter.Local - Storage migration service is injected early to ensure it runs before anything else
        public CoreService(IKernel kernel, ILogger logger, StorageMigrationService _, ISettingsService settingsService, IPluginService pluginService,
                           IRgbService rgbService, ISurfaceService surfaceService, IProfileService profileService, IModuleService moduleService)
        {
            Kernel = kernel;
            Constants.CorePluginInfo.Kernel = kernel;

            _logger         = logger;
            _pluginService  = pluginService;
            _rgbService     = rgbService;
            _surfaceService = surfaceService;
            _profileService = profileService;
            _loggingLevel   = settingsService.GetSetting("Core.LoggingLevel", LogEventLevel.Debug);
            _frameStopWatch = new Stopwatch();

            UpdatePluginCache();
            ConfigureJsonConvert();

            _rgbService.Surface.Updating += SurfaceOnUpdating;
            _rgbService.Surface.Updated  += SurfaceOnUpdated;
            _loggingLevel.SettingChanged += (sender, args) => ApplyLoggingLevel();

            _pluginService.PluginEnabled  += (sender, args) => UpdatePluginCache();
            _pluginService.PluginDisabled += (sender, args) => UpdatePluginCache();
        }