public SimulationWorker(IDeviceSimulatorFactory deviceSimulatorFactory, IHostApplicationLifetime applicationLifetime, IConfiguration configuration, ILogger <SimulationWorker> logger) { this.deviceSimulatorFactory = deviceSimulatorFactory; this.applicationLifetime = applicationLifetime; this.stopping = new CancellationTokenSource(); this.config = RunnerConfiguration.Load(configuration, logger); this.config.EnsureIsValid(); }