Finished first cut at VINI's LinkPanel
[sfa-gui.git] / SfaData.py
index a26aaf9..343ad0e 100644 (file)
@@ -44,25 +44,47 @@ class SfaData:
         f.close()
         return xml
 
+    def applyRSpec(self, xml):
+        slice = self.getSlice()
+        filename = os.path.expanduser("~/.sfi/" + slice + ".rspec")
+        f = open(filename, "w")
+        f.write(xml)
+        f.close()
+        call(["sfi.py", "-u", self.getUser(), "-a", self.getAuthority(), 
+              "-r", self.registry, "-s", self.slicemgr, "create", 
+              slice, filename])
+
 class ViniData(SfaData):
     def __init__(self):
         SfaData.__init__(self)
         self.registry = "http://www.planet-lab.org:12345"
-        self.slicemgr = "http://www.vini-veritas.net:12347"
+        self.slicemgr = "http://www.vini-veritas.net:12346"
 
     def getRSpec(self):
         xml = SfaData.getRSpec(self)
         return RSpec(xml)
 
+    def applyRSpec(self, rspec):
+        xml = rspec.toxml()
+        SfaData.applyRSpec(self, xml)
+
 class PlanetLabData(SfaData):
     def __init__(self):
         SfaData.__init__(self)
         self.registry = "http://www.planet-lab.org:12345"
-        self.slicemgr = "http://www.planet-lab.org:12347"
+        self.slicemgr = "http://www.planet-lab.org:12346"
+
+    def getRSpec(self):
+        xml = SfaData.getRSpec(self)
+        return RSpec(xml)
+
+    def applyRSpec(self, rspec):
+        xml = rspec.toxml()
+        SfaData.applyRSpec(self, xml)
 
 class OpenCirrusData(SfaData):
     def __init__(self):
         SfaData.__init__(self)
         self.registry = "http://www.planet-lab.org:12345"
-        self.slicemgr = "http://www.planet-lab.org:12347"
+        self.slicemgr = "http://www.planet-lab.org:12346"