public static IHomeAssistantMqttConfigurationBuilder AddCover( this IHomeAssistantMqttConfigurationBuilder configurationBuilder, Func <ICoverMqttEntityConfigurationBuilder, ICoverMqttEntityConfigurationBuilder> configurator) { ICoverMqttEntityConfigurationBuilder builder = new CoverMqttEntityConfigurationBuilder(); builder = configurator(builder); configurationBuilder.ServiceCollection.AddSingleton(sp => { var entityConfiguration = builder.Build(); return(entityConfiguration); }); return(configurationBuilder); }
// TODO: Climate? public static IHomeAssistantMqttConfigurationBuilder AddCover( this IHomeAssistantMqttConfigurationBuilder configurationBuilder, Func <ICoverMqttEntityConfigurationBuilder, ICoverMqttEntityConfigurationBuilder> configurator) { configurationBuilder.TryRegisterStatefulEntityBindingManager <ICoverMqttEntityConfiguration, ICover, ICoverEntityDefinition>(); ICoverMqttEntityConfigurationBuilder builder = new CoverMqttEntityConfigurationBuilder(); builder = configurator(builder); configurationBuilder.ServiceCollection.AddSingleton(sp => { var entityConfiguration = builder.Build(); return(entityConfiguration); }); return(configurationBuilder); }