Some apps need more than one kill to die.
[nepi.git] / src / nepi / testbeds / planetlab / plcapi.py
index ab8fd2e..825713c 100644 (file)
@@ -115,6 +115,11 @@ class PLCAPI(object):
                 (peer['peername'], peer['peer_id'])
                 for peer in peers
             )
+            self._peer_map.update(
+                (peer['peer_id'], peer['shortname'])
+                for peer in peers
+            )
+            self._peer_map[None] = self._localPeerName
             return self._peer_map
     
 
@@ -224,10 +229,25 @@ class PLCAPI(object):
         else:
             fieldstuple = ()
         if interfaceIdOrIp is not None:
-            return self.api.GetNodeTags(self.auth, interfaceIdOrIp, *fieldstuple)
+            return self.api.GetInterfaces(self.auth, interfaceIdOrIp, *fieldstuple)
         else:
             filters = kw.pop('filters',{})
             filters.update(kw)
-            return self.api.GetNodeTags(self.auth, filters, *fieldstuple)
+            return self.api.GetInterfaces(self.auth, filters, *fieldstuple)
+        
+    def GetSlices(self, sliceIdOrName=None, fields=None, **kw):
+        if fields is not None:
+            fieldstuple = (fields,)
+        else:
+            fieldstuple = ()
+        if sliceIdOrName is not None:
+            return self.api.GetSlices(self.auth, sliceIdOrName, *fieldstuple)
+        else:
+            filters = kw.pop('filters',{})
+            filters.update(kw)
+            return self.api.GetSlices(self.auth, filters, *fieldstuple)
+        
+    def UpdateSlice(self, sliceIdOrName, **kw):
+        return self.api.UpdateSlice(self.auth, sliceIdOrName, kw)