fix how to get node boot_state in pgv2 and geniv3 rspecs
[sfa.git] / sfa / rspecs / elements / versions / pgv2Node.py
index 5db9ba9..a59116a 100644 (file)
@@ -69,7 +69,7 @@ class PGv2Node:
             if tags:
                for tag in tags:
                     tag['name'] = tag.pop('tagname')
-                    node_elem.add_instance('attribute', tag, ['name', 'value'])
+                    node_elem.add_instance('{%s}attribute' % xml.namespaces['planetlab'], tag, ['name', 'value'])
 
         return node_elems
 
@@ -119,15 +119,16 @@ class PGv2Node:
             
             # get slivers
             node['slivers'] = PGv2SliverType.get_slivers(node_elem)    
+
             available_elems = node_elem.xpath('./default:available | ./available')
-            if len(available_elems) > 0 and 'name' in available_elems[0].attrib:
+            if len(available_elems) > 0 and 'now' in available_elems[0].attrib:
                 if available_elems[0].attrib.get('now', '').lower() == 'true': 
                     node['boot_state'] = 'boot'
                 else: 
                     node['boot_state'] = 'disabled' 
 
             # get node tags
-            tag_elems = node_elem.xpath('./default:attribute | ./attribute')
+            tag_elems = node_elem.xpath('./planetlab:attribute | ./attribute')
             node['tags'] = []
             if len(tag_elems) > 0:
                 for tag_elem in tag_elems: