valid properties for slaves when set or append a master's value

This commit is contained in:
2015-10-26 15:39:07 +01:00
parent 15d94d5fff
commit 64e9171ea6
2 changed files with 119 additions and 10 deletions

View File

@ -189,7 +189,7 @@ class MasterSlaves(object):
value = values._get_validated_value(opt, path, validate,
force_permissive,
force_properties,
False,
validate_properties,
None, # not undefined
with_meta=master_is_meta,
settings=settings)
@ -211,21 +211,23 @@ class MasterSlaves(object):
setitem=False,
force=True,
validate=validate)
if validate_properties:
context.cfgimpl_get_settings().validate_properties(opt, False,
False,
value=value,
path=path,
force_permissive=force_permissive,
force_properties=force_properties,
self_properties=setting_properties)
if validate_properties:
context.cfgimpl_get_settings().validate_properties(opt, False,
False,
value=value,
path=path,
force_permissive=force_permissive,
force_properties=force_properties,
self_properties=setting_properties)
return value
def setitem(self, values, opt, value, path):
if self.is_master(opt):
masterlen = len(value)
#for regen slave path
base_path = '.'.join(path.split('.')[:-1]) + '.'
for slave in self.getslaves(opt):
slave_path = slave.impl_getpath(values._getcontext())
slave_path = base_path + slave.impl_getname()
slave_value = values._get_validated_value(slave,
slave_path,
False,