Merge branch 'upstreammaster'
authorThierry Parmentelat <thierry.parmentelat@inria.fr>
Tue, 29 Jan 2013 16:41:55 +0000 (17:41 +0100)
committerThierry Parmentelat <thierry.parmentelat@inria.fr>
Tue, 29 Jan 2013 16:41:55 +0000 (17:41 +0100)
sfa/generic/teagle.py [new file with mode: 0644]
sfa/rspecs/elements/versions/sfav1Node.py

diff --git a/sfa/generic/teagle.py b/sfa/generic/teagle.py
new file mode 100644 (file)
index 0000000..094e888
--- /dev/null
@@ -0,0 +1,32 @@
+from sfa.generic import Generic
+
+class teagle (Generic):
+    
+    # the importer class
+    def importer_class (self): 
+        import sfa.importer.dummyimporter
+        return sfa.importer.dummyimporter.DummyImporter
+        
+    # use the standard api class
+    def api_class (self):
+        import sfa.server.sfaapi
+        return sfa.server.sfaapi.SfaApi
+
+    # the manager classes for the server-side services
+    def registry_manager_class (self) : 
+        import sfa.managers.registry_manager
+        return sfa.managers.registry_manager.RegistryManager
+    def slicemgr_manager_class (self) : 
+        import sfa.managers.slice_manager
+        return sfa.managers.slice_manager.SliceManager
+    def aggregate_manager_class (self) :
+        import sfa.managers.aggregate_manager
+        return sfa.managers.aggregate_manager.AggregateManager
+
+    # driver class for server-side services, talk to the whole testbed
+    def driver_class (self):
+        import teaglesfa.driver
+        return teaglesfa.driver.TeagleDriver
+#        import sfa.dummy.dummydriver
+#        return sfa.dummy.dummydriver.DummyDriver
+
index 3ffc6c3..1b509cc 100644 (file)
@@ -80,8 +80,18 @@ class SFAv1Node:
             tags = node.get('tags', [])
             if tags:
                 for tag in tags:
-                    tag_elem = node_elem.add_element(tag['tagname'])
-                    tag_elem.set_text(tag['value'])
+                    # backdoor for FITeagle
+                    # Alexander Willner <alexander.willner@tu-berlin.de>
+                    if tag['tagname']=="fiteagle_settings":
+                        tag_elem = node_elem.add_element(tag['tagname'])
+                        for subtag in tag['value']:
+                            subtag_elem = tag_elem.add_element('setting')
+                            subtag_elem.set('name', str(subtag['tagname']))
+                            subtag_elem.set('description', str(subtag['description']))
+                            subtag_elem.set_text(subtag['value'])
+                    else:
+                        tag_elem = node_elem.add_element(tag['tagname'])
+                        tag_elem.set_text(tag['value'])
             SFAv1Sliver.add_slivers(node_elem, node.get('slivers', []))
 
     @staticmethod