corrections in dynoption/masterslaves

This commit is contained in:
2018-03-24 22:37:48 +01:00
parent d5d826f967
commit 6921e05c0e
17 changed files with 115 additions and 299 deletions

View File

@ -381,15 +381,23 @@ class OptionDescriptionWalk(CacheOptionDescription):
def impl_getchildren(self,
config_bag,
context=None,
dyn=True):
cname = None
for child in self._impl_st_getchildren():
cname = child.impl_getname()
if dyn and child.impl_is_dynoptiondescription():
if context is None:
raise ConfigError(_('need context'))
if cname is None:
if context.cfgimpl_get_description() == self:
cname = ''
else:
cname = self.impl_getpath(context)
sconfig_bag = config_bag.copy('nooption')
sconfig_bag.option = child
for value in child._impl_get_suffixes(sconfig_bag):
yield SynDynOptionDescription(child,
cname + value,
cname,
value)
else:
yield child
@ -478,7 +486,7 @@ class OptionDescription(OptionDescriptionWalk):
# the group_type is useful for filtering OptionDescriptions in a config
self._group_type = groups.default
def impl_is_master_slaves(self):
def impl_is_master_slaves(self, *args, **kwargs):
return False
def impl_getdoc(self):