diff --git a/homeassistant/components/light/__init__.py b/homeassistant/components/light/__init__.py index c0448d96be6..6e3bb7667f0 100644 --- a/homeassistant/components/light/__init__.py +++ b/homeassistant/components/light/__init__.py @@ -57,7 +57,6 @@ from homeassistant.helpers.device_component import DeviceComponent import homeassistant.util as util from homeassistant.const import ( STATE_ON, SERVICE_TURN_ON, SERVICE_TURN_OFF, ATTR_ENTITY_ID) -from homeassistant.helpers import extract_entity_ids from homeassistant.components import group, discovery, wink @@ -146,8 +145,6 @@ def setup(hass, config): GROUP_NAME_ALL_LIGHTS) component.setup(config) - lights = component.devices - # Load built-in profiles and custom profiles profile_paths = [os.path.join(os.path.dirname(__file__), LIGHT_PROFILES_FILE), @@ -182,12 +179,7 @@ def setup(hass, config): dat = service.data # Convert the entity ids to valid light ids - target_lights = [lights[entity_id] for entity_id - in extract_entity_ids(hass, service) - if entity_id in lights] - - if not target_lights: - target_lights = lights.values() + target_lights = component.extract_from_service(service) params = {} diff --git a/homeassistant/components/switch/__init__.py b/homeassistant/components/switch/__init__.py index bb42c1d89da..a93ba1b95df 100644 --- a/homeassistant/components/switch/__init__.py +++ b/homeassistant/components/switch/__init__.py @@ -10,7 +10,6 @@ from homeassistant.helpers.device_component import DeviceComponent from homeassistant.const import ( STATE_ON, SERVICE_TURN_ON, SERVICE_TURN_OFF, ATTR_ENTITY_ID) -from homeassistant.helpers import extract_entity_ids from homeassistant.components import group, discovery, wink DOMAIN = 'switch' @@ -64,16 +63,9 @@ def setup(hass, config): GROUP_NAME_ALL_SWITCHES) component.setup(config) - switches = component.devices - def handle_switch_service(service): """ Handles calls to the switch services. """ - target_switches = [switches[entity_id] for entity_id - in extract_entity_ids(hass, service) - if entity_id in switches] - - if not target_switches: - target_switches = switches.values() + target_switches = component.extract_from_service(service) for switch in target_switches: if service.service == SERVICE_TURN_ON: diff --git a/homeassistant/components/thermostat/__init__.py b/homeassistant/components/thermostat/__init__.py index 90cc2b2b94e..741d46a0ae4 100644 --- a/homeassistant/components/thermostat/__init__.py +++ b/homeassistant/components/thermostat/__init__.py @@ -56,18 +56,11 @@ def setup(hass, config): component = DeviceComponent(_LOGGER, DOMAIN, hass, SCAN_INTERVAL) component.setup(config) - thermostats = component.devices - def thermostat_service(service): """ Handles calls to the services. """ # Convert the entity ids to valid light ids - target_thermostats = [thermostats[entity_id] for entity_id - in extract_entity_ids(hass, service) - if entity_id in thermostats] - - if not target_thermostats: - target_thermostats = thermostats.values() + target_thermostats = component.extract_from_service(service) if service.service == SERVICE_SET_AWAY_MODE: away_mode = service.data.get(ATTR_AWAY_MODE)