def from_node(cls, node): """Load values from node. :param node: `etree.Element` instance. :returns: `messages.TransformRequest` instance. """ node = super(TransformRequest, cls).from_node(node) entity_nodes = node.find("Entities") if entity_nodes is None: raise exceptions.MalformedMessageError('Request requires "Entities" tag.') instance = cls() for entity in entity_nodes.getchildren(): instance.entities.append(Entity.from_node(entity)) fields = node.find("TransformFields") if fields is not None: for field in fields.getchildren(): if "Name" not in field.attrib: raise exceptions.MalformedMessageError('No "Name" attribute in Field') name = field.attrib["Name"] value = field.text and field.text.strip() instance.fields[name] = value limit = node.find("Limits") if limit is not None: instance.soft_limit = int(limit.attrib.get("SoftLimit", constants.DEFAULT_SOFT_LIMIT)) instance.hard_limit = int(limit.attrib.get("HardLimit", constants.DEFAULT_SOFT_LIMIT)) return instance
def from_node(cls, node): """Load values from node. :param node: `etree.Element` instance. :returns: `messages.TransformRequest` instance. """ node = super(TransformRequest, cls).from_node(node) entity_nodes = node.find('Entities') if entity_nodes is None: raise exceptions.MalformedMessageError( 'Request requires "Entities" tag.' ) instance = cls() for entity in entity_nodes.getchildren(): instance.entities.append(Entity.from_node(entity)) fields = node.find('TransformFields') if fields is not None: for field in fields.getchildren(): if 'Name' not in field.attrib: raise exceptions.MalformedMessageError( 'No "Name" attribute in Field' ) name = field.attrib['Name'] value = field.text and field.text.strip() instance.fields[name] = value limit = node.find('Limits') if limit is not None: instance.soft_limit = int( limit.attrib.get('SoftLimit', constants.DEFAULT_SOFT_LIMIT) ) instance.hard_limit = int( limit.attrib.get('HardLimit', constants.DEFAULT_SOFT_LIMIT) ) return instance
def from_node(cls, node): """Load values from node. :param node: `etree.Element` instance. :returns: `messages.TransformResponse` instance. """ node = super(TransformResponse, cls).from_node(node) entity_nodes = node.find("Entities") if entity_nodes is None: raise exceptions.MalformedMessageError('Request requires "Entities" tag.') entities = [] for entity in entity_nodes.getchildren(): entities.append(Entity.from_node(entity)) ui_messages = [] message_nodes = node.find("UIMessages") for message in message_nodes.getchildren(): ui_messages.append(UIMessage.from_node(message)) return cls(entities, ui_messages)
def from_node(cls, node): """Load values from node. :param node: `etree.Element` instance. :returns: `messages.TransformResponse` instance. """ node = super(TransformResponse, cls).from_node(node) entity_nodes = node.find('Entities') if entity_nodes is None: raise exceptions.MalformedMessageError( 'Request requires "Entities" tag.' ) entities = [] for entity in entity_nodes.getchildren(): entities.append(Entity.from_node(entity)) ui_messages = [] message_nodes = node.find('UIMessages') for message in message_nodes.getchildren(): ui_messages.append(UIMessage.from_node(message)) return cls(entities, ui_messages)