summaryrefslogtreecommitdiffstats
path: root/cobbler/system.py
diff options
context:
space:
mode:
Diffstat (limited to 'cobbler/system.py')
-rw-r--r--cobbler/system.py27
1 files changed, 16 insertions, 11 deletions
diff --git a/cobbler/system.py b/cobbler/system.py
index dc1a2f77..9e5e5c6e 100644
--- a/cobbler/system.py
+++ b/cobbler/system.py
@@ -1,16 +1,21 @@
+import utils
+import item
-class System(Item):
+class System(item.Item):
- def __init__(self,api,seed_data):
- self.api = api
+ def __init__(self,config):
+ self.config = config
+ self.clear()
+
+ def clear(self):
self.name = None
self.profile = None # a name, not a reference
self.kernel_options = ""
- if seed_data is not None:
- self.name = seed_data['name']
- self.profile = seed_data['profile']
- self.kernel_options = seed_data['kernel_options']
+ def from_datastruct(seed_data):
+ self.name = seed_data['name']
+ self.profile = seed_data['profile']
+ self.kernel_options = seed_data['kernel_options']
def set_name(self,name):
"""
@@ -18,9 +23,9 @@ class System(Item):
any legal ipv4 address, or any legal mac address. ipv6 is not supported yet but _should_ be.
See utils.py
"""
- new_name = self.api.utils.find_system_identifier(name)
+ new_name = utils.find_system_identifier(name)
if new_name is None or new_name == False:
- self.api.last_error = m("bad_sys_name")
+ utils.last_error = m("bad_sys_name")
return False
self.name = name # we check it add time, but store the original value.
return True
@@ -30,7 +35,7 @@ class System(Item):
Set the system to use a certain named profile. The profile
must have already been loaded into the Profiles collection.
"""
- if self.api.get_profiles().find(profile_name):
+ if self.config.profiles().find(profile_name):
self.profile = profile_name
return True
return False
@@ -40,7 +45,7 @@ class System(Item):
A system is valid when it contains a valid name and a profile.
"""
if self.name is None:
- self.api.last_error = m("bad_sys_name")
+ utils.last_error = m("bad_sys_name")
return False
if self.profile is None:
return False