2to3 -f has_key
[sfa.git] / sfa / rspecs / versions / pgv2.py
index 340e92e..a4f5963 100644 (file)
@@ -1,5 +1,6 @@
+from __future__ import print_function
+
 from copy import deepcopy
-from StringIO import StringIO
 from sfa.util.xrn import Xrn
 from sfa.rspecs.version import RSpecVersion
 from sfa.rspecs.elements.versions.pgv2Link import PGv2Link
@@ -19,12 +20,13 @@ class PGv2(RSpecVersion):
         'planetlab': "http://www.planet-lab.org/resources/sfa/ext/planetlab/1",
         'plos': "http://www.planet-lab.org/resources/sfa/ext/plos/1",
     }
-    namespaces = dict(extensions.items() + [('default', namespace)])
+    namespaces = dict(list(extensions.items()) + [('default', namespace)])
 
     # Networks
     def get_networks(self):
         network_names = set()
-        nodes = self.xml.xpath('//default:node[@component_manager_id] | //node[@component_manager_id]', namespaces=self.namespaces)
+        nodes = self.xml.xpath('//default:node[@component_manager_id] | //node[@component_manager_id]',
+                               namespaces=self.namespaces)
         for node in nodes:
             if 'component_manager_id' in node.attrib:
                 network_urn = node.get('component_manager_id')
@@ -212,7 +214,7 @@ class PGv2(RSpecVersion):
             if not node['component_name']:
                 # this node element is part of a lease
                 continue
-            if not node.has_key('sliver') or not node['sliver']:
+            if 'sliver' not in node or not node['sliver']:
                 node['sliver'] = {'name': 'plab-vserver'}
                 main_nodes.append(node)
         self.add_nodes(main_nodes)
@@ -261,4 +263,4 @@ if __name__ == '__main__':
     r = RSpec('/tmp/pg.rspec')
     r.load_rspec_elements(PGv2.elements)
     r.namespaces = PGv2.namespaces
-    print r.get(RSpecElements.NODE)
+    print(r.get(RSpecElements.NODE))