mirror of
https://github.com/ARM-software/workload-automation.git
synced 2025-02-07 13:41:24 +00:00
fw/config/execution: Implement CombinedConfig as Podable
Ensure that the various Configuration structures now have serialization versions.
This commit is contained in:
parent
1723ac8132
commit
dcf0418379
@ -27,24 +27,35 @@ from wa.framework.configuration.plugin_cache import PluginCache
|
|||||||
from wa.framework.exception import NotFoundError
|
from wa.framework.exception import NotFoundError
|
||||||
from wa.framework.job import Job
|
from wa.framework.job import Job
|
||||||
from wa.utils import log
|
from wa.utils import log
|
||||||
|
from wa.utils.serializer import Podable
|
||||||
|
|
||||||
|
|
||||||
class CombinedConfig(object):
|
class CombinedConfig(Podable):
|
||||||
|
|
||||||
|
_pod_serialization_version = 1
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def from_pod(pod):
|
def from_pod(pod):
|
||||||
instance = CombinedConfig()
|
instance = super(CombinedConfig, CombinedConfig).from_pod(pod)
|
||||||
instance.settings = MetaConfiguration.from_pod(pod.get('settings', {}))
|
instance.settings = MetaConfiguration.from_pod(pod.get('settings', {}))
|
||||||
instance.run_config = RunConfiguration.from_pod(pod.get('run_config', {}))
|
instance.run_config = RunConfiguration.from_pod(pod.get('run_config', {}))
|
||||||
return instance
|
return instance
|
||||||
|
|
||||||
def __init__(self, settings=None, run_config=None): # pylint: disable=redefined-outer-name
|
def __init__(self, settings=None, run_config=None): # pylint: disable=redefined-outer-name
|
||||||
|
super(CombinedConfig, self).__init__()
|
||||||
self.settings = settings
|
self.settings = settings
|
||||||
self.run_config = run_config
|
self.run_config = run_config
|
||||||
|
|
||||||
def to_pod(self):
|
def to_pod(self):
|
||||||
return {'settings': self.settings.to_pod(),
|
pod = super(CombinedConfig, self).to_pod()
|
||||||
'run_config': self.run_config.to_pod()}
|
pod['settings'] = self.settings.to_pod()
|
||||||
|
pod['run_config'] = self.run_config.to_pod()
|
||||||
|
return pod
|
||||||
|
|
||||||
|
@staticmethod
|
||||||
|
def _pod_upgrade_v1(pod):
|
||||||
|
pod['_pod_version'] = pod.get('_pod_version', 1)
|
||||||
|
return pod
|
||||||
|
|
||||||
|
|
||||||
class ConfigManager(object):
|
class ConfigManager(object):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user