public CallSimulatorService(ILogger <CallSimulatorService> logger, ICallPanelService callPanelService, BuildingConfiguration buildingConfiguration, CallPanelConfiguration callPanelConfiguration) { _logger = logger; _callPanelService = callPanelService; _buildingConfiguration = buildingConfiguration; _callPanelConfiguration = callPanelConfiguration; }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { var buildingConfig = new BuildingConfiguration(); Configuration.Bind("Building", buildingConfig); services.AddSingleton(buildingConfig); var callPanelConfig = new CallPanelConfiguration(); Configuration.Bind("CallPanel", callPanelConfig); services.AddSingleton(callPanelConfig); services.AddHttpClient(); services.AddTransient(typeof(ICallPanelService), typeof(CallPanelService)); if (callPanelConfig.CallPanelSimulationEnabled) { services.AddHostedService <CallSimulatorService>(); } services.AddControllers(); }