public static IHomeAssistantMqttConfigurationBuilder AddAlarmControlPanel( this IHomeAssistantMqttConfigurationBuilder configurationBuilder, IAlarmControlPanelMqttEntityConfiguration mqttEntityConfiguration) { configurationBuilder.TryRegisterStatefulEntityBindingManager <IAlarmControlPanelMqttEntityConfiguration, IAlarmControlPanel, IAlarmControlPanelEntityDefinition>(); configurationBuilder.ServiceCollection.AddSingleton(mqttEntityConfiguration); return(configurationBuilder); }
public static IHomeAssistantMqttConfigurationBuilder AddAlarmControlPanel( this IHomeAssistantMqttConfigurationBuilder configurationBuilder, Func <IAlarmControlPanelMqttEntityConfigurationBuilder, IAlarmControlPanelMqttEntityConfigurationBuilder> configurator) { configurationBuilder.TryRegisterStatefulEntityBindingManager <IAlarmControlPanelMqttEntityConfiguration, IAlarmControlPanel, IAlarmControlPanelEntityDefinition>(); IAlarmControlPanelMqttEntityConfigurationBuilder builder = new AlarmControlPanelMqttEntityConfigurationBuilder(); builder = configurator(builder); configurationBuilder.ServiceCollection.AddSingleton(sp => { IAlarmControlPanelMqttEntityConfiguration entityConfiguration = builder.Build(); return(entityConfiguration); }); return(configurationBuilder); }
public static IMqttEntityControlPanel AddAlarmControlPanel(this IMqttEntityControlPanel controlPanel, IAlarmControlPanelMqttEntityConfiguration configuration) { controlPanel.AddStatefulEntity <IAlarmControlPanelMqttEntityConfiguration, IAlarmControlPanel, IAlarmControlPanelEntityDefinition>(configuration); return(controlPanel); }