Exemple #1
0
        public static IHomeAssistantMqttConfigurationBuilder AddAlarmControlPanel(
            this IHomeAssistantMqttConfigurationBuilder configurationBuilder,
            Func <IAlarmControlPanelMqttEntityConfigurationBuilder, IAlarmControlPanelMqttEntityConfigurationBuilder> configurator)
        {
            IAlarmControlPanelMqttEntityConfigurationBuilder builder = new AlarmControlPanelMqttEntityConfigurationBuilder();

            builder = configurator(builder);

            configurationBuilder.ServiceCollection.AddSingleton(sp =>
            {
                var entityConfiguration = builder.Build();
                return(entityConfiguration);
            });

            return(configurationBuilder);
        }
Exemple #2
0
        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);
        }