Make unirom the return of get_leases in Nitos rspecs
authorMohamed Larabi <mohamed.larabi@inria.fr>
Tue, 8 Oct 2013 17:45:48 +0000 (19:45 +0200)
committerMohamed Larabi <mohamed.larabi@inria.fr>
Tue, 8 Oct 2013 17:50:27 +0000 (19:50 +0200)
sfa/nitos/nitosdriver.py
sfa/rspecs/elements/versions/nitosv1Lease.py

index aa87bcc..c936466 100644 (file)
@@ -612,8 +612,17 @@ class NitosDriver (Driver):
         
         # add/remove leases (nodes and channels)
         # a lease in Nitos RSpec case is a reservation of nodes and channels grouped by (slice,timeslot)
-        rspec_requested_nodes, rspec_requested_channels = rspec.version.get_leases()
-  
+        rspec_requested_leases = rspec.version.get_leases()
+        rspec_requested_nodes = []
+        rspec_requested_channels = []
+        for lease in rspec_requested_leases:
+             if lease['type'] == 'node':
+                 lease.pop('type', None)
+                 rspec_requested_nodes = lease
+             else:
+                 lease.pop('type', None)
+                 rspec_requested_channels = lease                 
+        
         nodes = slices.verify_slice_leases_nodes(slice, rspec_requested_nodes)
         channels = slices.verify_slice_leases_channels(slice, rspec_requested_channels)
 
index 9b2e803..0e507b1 100644 (file)
@@ -91,6 +91,7 @@ class NITOSv1Lease:
                  lease['start_time'] = datetime_to_epoch(utcparse(lease_elem.attrib['start_time']))
                  lease['duration'] = lease_elem.attrib['duration']
                  lease['component_id'] = node_elem.attrib['component_id']
+                 lease['type'] = 'node'
                  leases.append(lease)
             #get channels
             channel_elems = lease_elem.xpath('./default:channel | ./channel')
@@ -100,8 +101,8 @@ class NITOSv1Lease:
                  channel['start_time'] = datetime_to_epoch(utcparse(lease_elem.attrib['start_time']))
                  channel['duration'] = lease_elem.attrib['duration']
                  channel['component_id'] = channel_elem.attrib['component_id']
-                 
+                 channel['type'] = 'channel'
                  channels.append(channel)
 
-        return (leases, channels)            
+        return leases + channels