- node['tags'] = SFAv1PLTag.get_pl_tags(node_elem, ignore=Node.fields)
-
- parent = node_elem.getparent()
- if (parent != None) and (parent.tag=="network") and ("name" in parent.attrib):
- node['network_name'] = parent.attrib['name']
+ node['tags'] = SFAv1PLTag.get_pl_tags(node_elem, ignore=Node.fields+["hardware_type"])
+ # get hardware types
+ hardware_type_elems = node_elem.xpath('./default:hardware_type | ./hardware_type')
+ node['hardware_types'] = [hw_type.get_instance(HardwareType) for hw_type in hardware_type_elems]
+
+ # temporary... play nice with old slice manager rspec
+ if not node['component_name']:
+ hostname_elem = node_elem.find("hostname")
+ if hostname_elem != None:
+ node['component_name'] = hostname_elem.text