summaryrefslogtreecommitdiffstats
path: root/cobbler/collection_systems.py
diff options
context:
space:
mode:
authorMichael DeHaan <mdehaan@redhat.com>2007-10-17 18:11:51 -0400
committerMichael DeHaan <mdehaan@redhat.com>2007-10-17 18:11:51 -0400
commit4a7d0c46c7dd4ab46a4850bd462729d1ea6be497 (patch)
tree918f0f0b66de6cda083d8dd3d888fd7589c24cba /cobbler/collection_systems.py
parent940a0bbbe44db52c06514423823f865a6c579e3a (diff)
downloadthird_party-cobbler-4a7d0c46c7dd4ab46a4850bd462729d1ea6be497.tar.gz
third_party-cobbler-4a7d0c46c7dd4ab46a4850bd462729d1ea6be497.tar.xz
third_party-cobbler-4a7d0c46c7dd4ab46a4850bd462729d1ea6be497.zip
Various changes to allow for increased performance in the WebUI and in saving state, plus
a fix to import that keeps from creating extra yum repo entries for various distros.
Diffstat (limited to 'cobbler/collection_systems.py')
-rw-r--r--cobbler/collection_systems.py25
1 files changed, 10 insertions, 15 deletions
diff --git a/cobbler/collection_systems.py b/cobbler/collection_systems.py
index 58f9e13..2582dfb 100644
--- a/cobbler/collection_systems.py
+++ b/cobbler/collection_systems.py
@@ -20,8 +20,6 @@ from cexceptions import *
import action_litesync
from rhpl.translate import _, N_, textdomain, utf8
-TESTMODE = False
-
#--------------------------------------------
class Systems(collection.Collection):
@@ -35,27 +33,24 @@ class Systems(collection.Collection):
"""
return system.System(config).from_datastruct(seed_data)
- def filename(self):
- """
- Return a filename for System serialization
- """
- if TESTMODE:
- return "/var/lib/cobbler/test/systems"
- else:
- return "/var/lib/cobbler/systems"
-
- def remove(self,name,with_delete=False):
+ def remove(self,name,with_delete=True):
"""
Remove element named 'name' from the collection
"""
name = name.lower()
- if self.find(name=name):
+ obj = self.find(name=name)
+
+ if obj is not None:
+
if with_delete:
- self._run_triggers(self.listing[name], "/var/lib/cobbler/triggers/delete/system/pre/*")
+ self._run_triggers(obj, "/var/lib/cobbler/triggers/delete/system/pre/*")
lite_sync = action_litesync.BootLiteSync(self.config)
lite_sync.remove_single_system(name)
- self._run_triggers(self.listing[name], "/var/lib/cobbler/triggers/delete/system/post/*")
+ self.config.serialize_delete(self, obj)
+ if with_delete:
+ self._run_triggers(obj, "/var/lib/cobbler/triggers/delete/system/post/*")
del self.listing[name]
+
return True
raise CX(_("cannot delete an object that does not exist"))