private IArea ParseArea(XElement roomElement) { var area = new Area(new AreaId(roomElement.GetMandatoryStringFromAttribute("id")), _controller); foreach (var actuatorElement in roomElement.Element("Actuators").Elements()) { try { IActuator actuator = GetConfigurationExtender(actuatorElement).ParseActuator(actuatorElement); area.AddActuator(actuator); } catch (Exception exception) { _controller.Logger.Warning(exception, "Unable to parse actuator node '{0}'.", actuatorElement.Name); } } return(area); }