Template lambda is optional

This commit is contained in:
Otto Winter 2019-02-16 13:12:49 +01:00
parent ef7b936d60
commit fcef3be5c7
No known key found for this signature in database
GPG Key ID: DB66C0BE6013F97E
3 changed files with 18 additions and 15 deletions

View File

@ -16,7 +16,7 @@ BinarySensorPublishAction = binary_sensor.binary_sensor_ns.class_('BinarySensorP
PLATFORM_SCHEMA = cv.nameable(binary_sensor.BINARY_SENSOR_PLATFORM_SCHEMA.extend({
cv.GenerateID(): cv.declare_variable_id(TemplateBinarySensor),
vol.Required(CONF_LAMBDA): cv.lambda_,
vol.Optional(CONF_LAMBDA): cv.lambda_,
}).extend(cv.COMPONENT_SCHEMA.schema))
@ -26,10 +26,11 @@ def to_code(config):
binary_sensor.setup_binary_sensor(var, config)
setup_component(var, config)
for template_ in process_lambda(config[CONF_LAMBDA], [],
return_type=optional.template(bool_)):
yield
add(var.set_template(template_))
if CONF_LAMBDA in config:
for template_ in process_lambda(config[CONF_LAMBDA], [],
return_type=optional.template(bool_)):
yield
add(var.set_template(template_))
BUILD_FLAGS = '-DUSE_TEMPLATE_BINARY_SENSOR'

View File

@ -13,7 +13,7 @@ SensorPublishAction = sensor.sensor_ns.class_('SensorPublishAction', Action)
PLATFORM_SCHEMA = cv.nameable(sensor.SENSOR_PLATFORM_SCHEMA.extend({
cv.GenerateID(): cv.declare_variable_id(TemplateSensor),
vol.Required(CONF_LAMBDA): cv.lambda_,
vol.Optional(CONF_LAMBDA): cv.lambda_,
vol.Optional(CONF_UPDATE_INTERVAL): cv.update_interval,
}).extend(cv.COMPONENT_SCHEMA.schema))
@ -25,10 +25,11 @@ def to_code(config):
sensor.setup_sensor(template, config)
setup_component(template, config)
for template_ in process_lambda(config[CONF_LAMBDA], [],
return_type=optional.template(float_)):
yield
add(template.set_template(template_))
if CONF_LAMBDA in config:
for template_ in process_lambda(config[CONF_LAMBDA], [],
return_type=optional.template(float_)):
yield
add(template.set_template(template_))
BUILD_FLAGS = '-DUSE_TEMPLATE_SENSOR'

View File

@ -12,7 +12,7 @@ TemplateTextSensor = text_sensor.text_sensor_ns.class_('TemplateTextSensor',
PLATFORM_SCHEMA = cv.nameable(text_sensor.TEXT_SENSOR_PLATFORM_SCHEMA.extend({
cv.GenerateID(): cv.declare_variable_id(TemplateTextSensor),
vol.Required(CONF_LAMBDA): cv.lambda_,
vol.Optional(CONF_LAMBDA): cv.lambda_,
vol.Optional(CONF_UPDATE_INTERVAL): cv.update_interval,
}).extend(cv.COMPONENT_SCHEMA.schema))
@ -23,10 +23,11 @@ def to_code(config):
text_sensor.setup_text_sensor(template, config)
setup_component(template, config)
for template_ in process_lambda(config[CONF_LAMBDA], [],
return_type=optional.template(std_string)):
yield
add(template.set_template(template_))
if CONF_LAMBDA in config:
for template_ in process_lambda(config[CONF_LAMBDA], [],
return_type=optional.template(std_string)):
yield
add(template.set_template(template_))
BUILD_FLAGS = '-DUSE_TEMPLATE_TEXT_SENSOR'