fix bugs
authorTony Mack <tmack@paris.CS.Princeton.EDU>
Sun, 10 Mar 2013 03:46:19 +0000 (22:46 -0500)
committerTony Mack <tmack@paris.CS.Princeton.EDU>
Sun, 10 Mar 2013 03:46:19 +0000 (22:46 -0500)
PLC/Slices.py

index beb0b7f..66d529b 100644 (file)
@@ -61,7 +61,7 @@ class Slice(AlchemyObj):
 
         conflicts = Slices(self.api, [name])
         for slice in conflicts:
-            if 'slice_id' not in self or self['slice_id'] != slice.slice_id:
+            if 'slice_id' not in self or self['slice_id'] != slice['slice_id']:
                 raise PLCInvalidArgument, "Slice name already in use, %s"%name
 
         return name
@@ -109,7 +109,8 @@ class Slice(AlchemyObj):
             slice_person.delete()
  
 
-    def add_node(self, node_filter):
+    def add_node(self, node_filter, commit=True):
+        from PLC.Nodes import Nodes
         assert 'slice_id' in self
         nodes = Nodes(self.api, node_filter)
         for node in nodes:
@@ -117,7 +118,8 @@ class Slice(AlchemyObj):
                                               'node_id': node['node_id']})
             slice_node.sync()
  
-    def remove_node(self, node_filter):
+    def remove_node(self, node_filter, commit=True):
+        from PLC.Nodes import Nodes 
         assert 'slice_id' in self
         nodes = Nodes(self.api, node_filter)
         for node in nodes:
@@ -154,7 +156,7 @@ class Slice(AlchemyObj):
             self['slice_id'] = slice.slice_id
         else:
             self.object = self.api.client_shell.keystone.tenants.update(self['tenant_id'], **nova_slice) 
-            AlchemyObj.update(self, {'slice_id': self['slice_id']}, dict(self)) 
+            AlchemyObj.updatedb(self, {'slice_id': self['slice_id']}, dict(self)) 
 
     def delete(self, commit = True):
         """