Updated OpenstackComponent.config to use Configuration.validation() for validating parameters

This commit is contained in:
Maxim Kulkin
2013-11-07 17:53:32 +04:00
parent 602007ab88
commit 4d324e42e3

View File

@@ -228,34 +228,20 @@ class OpenstackComponent(Service):
parameter_fullname = section_name + \ parameter_fullname = section_name + \
'.' + parameter_fullname '.' + parameter_fullname
if parameter_schema: config.set(parameter_fullname, parameter.value.text)
type_validator = TypeValidatorRegistry.get_validator(
parameter_schema.type) validation_error = config.validate(parameter_fullname)
type_validation_result = type_validator.validate( if validation_error:
parameter.value.text) validation_error.mark = parameter\
if isinstance(type_validation_result, Issue): .value.start_mark.merge(validation_error.mark)
type_validation_result.mark = parameter\ validation_error.message = \
.value.start_mark.merge(
type_validation_result.mark)
type_validation_result.message = \
'Property "%s" in section "%s": %s' % ( 'Property "%s" in section "%s": %s' % (
parameter.name.text, section_name, parameter.name.text, section_name,
type_validation_result.message) validation_error.message)
report_issue(type_validation_result) report_issue(validation_error)
config.set(parameter_fullname, if (parameter_schema and
parameter.value.text) parameter_schema.deprecation_message):
else:
value = type_validation_result
config.set(parameter_fullname, value)
# if value == parameter_schema.default:
# report_issue(MarkedIssue(Issue.INFO,
# 'Explicit value equals default: section "%s"
# parameter "%s"' % (section_name,
# parameter.name.text), parameter.start_mark))
if parameter_schema.deprecation_message:
report_issue( report_issue(
MarkedIssue( MarkedIssue(
Issue.WARNING, Issue.WARNING,
@@ -264,8 +250,6 @@ class OpenstackComponent(Service):
(section_name, parameter.name.text, (section_name, parameter.name.text,
parameter_schema.deprecation_message), parameter_schema.deprecation_message),
parameter.start_mark)) parameter.start_mark))
else:
config.set(parameter_fullname, parameter.value.text)
return config return config