diff options
author | zhihui wu <wu.zhihui1@zte.com.cn> | 2017-01-25 01:41:31 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@opnfv.org> | 2017-01-25 01:41:31 +0000 |
commit | f5c23e82e2f59af3ed59a8ad46c119f141cefe7b (patch) | |
tree | 4ce4dc99d3ac91cf905a1524e7f12ddb5f557c01 /qtip/loader/base.py | |
parent | 3a08c5442a70dec7f628b7e9b11a9a9384767918 (diff) | |
parent | b659a9296223b7f63a89bedbc0dad281117de936 (diff) |
Merge "Formalize constants for property names"
Diffstat (limited to 'qtip/loader/base.py')
-rw-r--r-- | qtip/loader/base.py | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/qtip/loader/base.py b/qtip/loader/base.py index d3a7e1d3..a0e5d031 100644 --- a/qtip/loader/base.py +++ b/qtip/loader/base.py @@ -7,13 +7,14 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## +from collections import defaultdict from itertools import chain from os import listdir from os import path import yaml from qtip.base.error import InvalidFormat, NotFound -from qtip.base.constant import PropName +from qtip.base.constant import BaseProp ROOT_DIR = path.join(path.dirname(__file__), path.pardir, path.pardir, @@ -28,15 +29,15 @@ class BaseLoader(object): def __init__(self, name, paths=None): self._file = name self._abspath = self._find(name, paths=paths) + content = defaultdict(lambda: None) try: - content = yaml.safe_load(file(self._abspath)) + content.update(yaml.safe_load(file(self._abspath))) except yaml.YAMLError: # TODO(yujunz) log yaml error raise InvalidFormat(self._abspath) - self.name = content[PropName.NAME] if PropName.NAME in content \ - else path.splitext(name)[0] + self.name = content[BaseProp.NAME] or path.splitext(name)[0] self.content = content def _find(self, name, paths=None): @@ -57,6 +58,6 @@ class BaseLoader(object): for name in names: item = cls(name, paths=paths) yield { - PropName.NAME: name, - PropName.ABSPATH: item._abspath, - PropName.CONTENT: item.content} + BaseProp.NAME: name, + BaseProp.ABSPATH: item._abspath, + BaseProp.CONTENT: item.content} |