private static void ConfigureServices(HostBuilderContext hostContext, IServiceCollection services)
        {
            var deconzOptions = new DeConzOptions();

            hostContext.Configuration.GetSection("deCONZ").Bind(deconzOptions);

            services.Configure <DeConzOptions>(hostContext.Configuration.GetSection("deCONZ").Bind);

            services.AddScoped <HttpLoggingHandler>();

            services.AddRefitClient <IDeConzConfigurationApi>()
            .ConfigureHttpClient(client => client.BaseAddress = new Uri($"http://{deconzOptions.Host}:{deconzOptions.Port}/api"))
            .AddHttpMessageHandler <HttpLoggingHandler>();
            services.AddRefitClient <IDeConzLightsApi>()
            .ConfigureHttpClient(client => client.BaseAddress = new Uri($"http://{deconzOptions.Host}:{deconzOptions.Port}/api"))
            .AddHttpMessageHandler <HttpLoggingHandler>();

            services.AddSingleton <IWebsocketClientFactory, WebsocketClientFactory>();

            services.AddHostedService <WebsocketService>();

            services.AddMediatR(typeof(Program));
        }
 public Handler(IDeConzLightsApi deConzLightsApi, IOptions <DeConzOptions> options, ILogger <Handler> logger)
 {
     _deConzLightsApi = deConzLightsApi;
     _options         = options.Value;
     _logger          = logger;
 }
Example #3
0
 public Handler(IDeConzConfigurationApi deconzApi, IOptions <DeConzOptions> options, ILogger <Handler> logger)
 {
     _deconzApi = deconzApi;
     _options   = options.Value;
     _logger    = logger;
 }