From 2eeb80e1fc8491b53d9fdc953f6c0c2179a516f7 Mon Sep 17 00:00:00 2001 From: Tony Mack Date: Fri, 13 May 2011 14:42:12 -0400 Subject: [PATCH] rspec converters now convert sliver tag --- sfa/rspecs/pg_rspec_converter.py | 16 ++++++++++++---- sfa/rspecs/sfa_rspec_converter.py | 5 ++++- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/sfa/rspecs/pg_rspec_converter.py b/sfa/rspecs/pg_rspec_converter.py index e060f3e6..3a77ad20 100755 --- a/sfa/rspecs/pg_rspec_converter.py +++ b/sfa/rspecs/pg_rspec_converter.py @@ -48,15 +48,23 @@ class PGRSpecConverter: # get nodes pg_nodes_elements = pg_rspec.get_node_elements() + nodes_with_slivers = pg_rspec.get_nodes_with_slivers() + print "nodes with slivers", nodes_with_slivers i = 1 for pg_node_element in pg_nodes_elements: - urn = pg_node_element.get('component_uuid') - hostname = Xrn.urn_split(urn)[-1] node_element = sfa_rspec.add_element('node', {'id': 'n'+str(i)}, parent=network_element) - hostname_element = sfa_rspec.add_element('hostname', parent=node_element, text=hostname) + urn = pg_node_element.xpath('@component_uuid | @component_id') + if urn: + urn = urn[0] + hostname = Xrn.urn_split(urn)[-1] + hostname_element = sfa_rspec.add_element('hostname', parent=node_element, text=hostname) + if hostname in nodes_with_slivers: + sfa_rspec.add_element('sliver', parent=node_element) + urn_element = sfa_rspec.add_element('urn', parent=node_element, text=urn) - # TODO: convert sliver element + + # just copy over remaining child elements for child in pg_node_element.getchildren(): node_element.append(transform(child).getroot()) i = i+1 diff --git a/sfa/rspecs/sfa_rspec_converter.py b/sfa/rspecs/sfa_rspec_converter.py index 75d9c0ff..a7a189b6 100755 --- a/sfa/rspecs/sfa_rspec_converter.py +++ b/sfa/rspecs/sfa_rspec_converter.py @@ -50,7 +50,10 @@ class SfaRSpecConverter: location_attrs['latitude'] = location.get('latitiue', 'None') location_attrs['longitude'] = location.get('longitude', 'None') pg_rspec.add_element('location', location_attrs, parent=node_element) - # TODO: convert sliver element + + sliver_element = sfa_node_element.find('sliver') + if sliver_element != None: + pg_rspec.add_element('sliver_type', {'name': 'planetlab-vnode'}, parent=node_element) return pg_rspec.toxml() -- 2.43.0