initailize overrides in init
This commit is contained in:
parent
01a650fa36
commit
e3fa0157f1
2 changed files with 14 additions and 4 deletions
|
|
@ -56,7 +56,7 @@ class Overrides(DictFormatterValidator, Scriptable):
|
||||||
|
|
||||||
def __init__(self, name, value):
|
def __init__(self, name, value):
|
||||||
DictFormatterValidator.__init__(self, name, value)
|
DictFormatterValidator.__init__(self, name, value)
|
||||||
Scriptable.__init__(self)
|
Scriptable.__init__(self, initialize_base_script=True)
|
||||||
|
|
||||||
for key in self._keys:
|
for key in self._keys:
|
||||||
self.ensure_variable_name_valid(key)
|
self.ensure_variable_name_valid(key)
|
||||||
|
|
@ -133,8 +133,6 @@ class Overrides(DictFormatterValidator, Scriptable):
|
||||||
"""
|
"""
|
||||||
Initialize the override script with override variables + any unresolved variables
|
Initialize the override script with override variables + any unresolved variables
|
||||||
"""
|
"""
|
||||||
self.initialize_base_script()
|
|
||||||
|
|
||||||
self.script.add(
|
self.script.add(
|
||||||
ScriptUtils.add_sanitized_variables(
|
ScriptUtils.add_sanitized_variables(
|
||||||
{SubscriptionVariables.subscription_name(): subscription_name}
|
{SubscriptionVariables.subscription_name(): subscription_name}
|
||||||
|
|
|
||||||
|
|
@ -26,21 +26,33 @@ class Scriptable(ABC):
|
||||||
Shared class between Entry and Overrides to manage their underlying Script.
|
Shared class between Entry and Overrides to manage their underlying Script.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self, initialize_base_script: bool = False):
|
||||||
self._script: Optional[Script] = None
|
self._script: Optional[Script] = None
|
||||||
self._unresolvable: Optional[Set[str]] = None
|
self._unresolvable: Optional[Set[str]] = None
|
||||||
|
|
||||||
|
if initialize_base_script:
|
||||||
|
self.initialize_base_script()
|
||||||
|
|
||||||
def initialize_base_script(self):
|
def initialize_base_script(self):
|
||||||
|
"""
|
||||||
|
Initializes with base values
|
||||||
|
"""
|
||||||
self._script = copy.deepcopy(_BASE_SCRIPT)
|
self._script = copy.deepcopy(_BASE_SCRIPT)
|
||||||
self._unresolvable = copy.deepcopy(UNRESOLVED_VARIABLES)
|
self._unresolvable = copy.deepcopy(UNRESOLVED_VARIABLES)
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def script(self) -> Script:
|
def script(self) -> Script:
|
||||||
|
"""
|
||||||
|
Initialized script
|
||||||
|
"""
|
||||||
assert self._script is not None, "Not initialized"
|
assert self._script is not None, "Not initialized"
|
||||||
return self._script
|
return self._script
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def unresolvable(self) -> Set[str]:
|
def unresolvable(self) -> Set[str]:
|
||||||
|
"""
|
||||||
|
Initialized unresolvable variables
|
||||||
|
"""
|
||||||
assert self._unresolvable is not None, "Not initialized"
|
assert self._unresolvable is not None, "Not initialized"
|
||||||
return self._unresolvable
|
return self._unresolvable
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue