+ return method(self)
+
+ return inner
+ return wrapper
+
+
+def add_sysprep_param(name, type, default, descr, validate=lambda x: True):
+ """Decorator for __init__ that adds the definition for a system preparation
+ parameter in an instance of a os_type class
+ """
+ def wrapper(init):
+ @wraps(init)
+ def inner(self, *args, **kwargs):
+ init(self, *args, **kwargs)
+ self.needed_sysprep_params[name] = \
+ self.SysprepParam(type, default, descr, validate)
+ if default is not None:
+ self.sysprep_params[name] = default
+ return inner
+ return wrapper