From: Tony Mack <tmack@paris.CS.Princeton.EDU>
Date: Thu, 19 May 2011 15:27:53 +0000 (-0400)
Subject: added 'type' attribute to the pg rspec element
X-Git-Tag: sfa-1.0-22~41
X-Git-Url: http://git.onelab.eu/?a=commitdiff_plain;h=87bec553f961792480a036cf3f34be689b831c66;p=sfa.git

added 'type' attribute to the pg rspec element
---

diff --git a/sfa/managers/aggregate_manager_pl.py b/sfa/managers/aggregate_manager_pl.py
index 081695dd..557e325b 100644
--- a/sfa/managers/aggregate_manager_pl.py
+++ b/sfa/managers/aggregate_manager_pl.py
@@ -323,7 +323,7 @@ def ListResources(api, creds, options,call_id):
 
     aggregate = Aggregate(api)
 
-    rspec =  aggregate.get_rspec(slice_xrn=xrn, version=rspec_version)
+    rspec =  aggregate.get_rspec(slice_xrn=xrn, version=rspec_version, type='advertisement')
 
     # cache the result
     if caching and api.cache and not xrn:
diff --git a/sfa/plc/aggregate.py b/sfa/plc/aggregate.py
index afc20d4f..505155f7 100644
--- a/sfa/plc/aggregate.py
+++ b/sfa/plc/aggregate.py
@@ -65,12 +65,12 @@ class Aggregate:
 
         self.prepared = True  
 
-    def get_rspec(self, slice_xrn=None, version = None):
+    def get_rspec(self, slice_xrn=None, version = None, type=None):
         self.prepare()
         rspec = None
         rspec_version = RSpecVersion(version)
         if rspec_version['type'].lower() == 'protogeni':
-            rspec = PGRSpec()
+            rspec = PGRSpec(type=type)
         elif rspec_version['type'].lower() == 'sfa':
             rspec = SfaRSpec()
         else:
diff --git a/sfa/rspecs/rspec.py b/sfa/rspecs/rspec.py
index de7e250e..2a331c1d 100755
--- a/sfa/rspecs/rspec.py
+++ b/sfa/rspecs/rspec.py
@@ -16,13 +16,14 @@ class RSpec:
     version = None
     namespaces = None    
   
-    def __init__(self, rspec="", namespaces={}):
+    def __init__(self, rspec="", namespaces={}, type=None):
+        self.type = type
         if rspec:
             self.parse_rspec(rspec, namespaces)
         else:
             self.create()
 
-    def create(self, type="advertisement"):
+    def create(self):
         """
         Create root element
         """
@@ -34,6 +35,8 @@ class RSpec:
         self.parse_rspec(self.template, self.namespaces)
         self.xml.set('valid_until', expires_ts)
         self.xml.set('generated', generated_ts)
+        if self.type:
+            self.xml.set('type', self.type)
     
     def parse_rspec(self, rspec, namespaces={}):
         """