diff --git a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/core/entity/Setting.kt b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/core/entity/Setting.kt index d6b1c58930d..430b604b9e0 100644 --- a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/core/entity/Setting.kt +++ b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/core/entity/Setting.kt @@ -309,7 +309,7 @@ class ValueSettingType( ) : SettingBuilder>(path, title, neededAtPhase) { init { validate { value -> - if (value is Validatable<*>) value.validator.validate(this, value) + if (value is Validatable<*>) (value.validator as SettingValidator).validate(this, value) else ValidationResult.OK } } @@ -354,7 +354,7 @@ class ListSettingType(private val parser: Parser) : SettingType values.fold(ValidationResult.OK as ValidationResult) { result, value -> result and when (value) { - is Validatable<*> -> value.validator.validate(this, value) + is Validatable<*> -> (value.validator as SettingValidator).validate(this, value) else -> ValidationResult.OK } } diff --git a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/settings/buildsystem/Module.kt b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/settings/buildsystem/Module.kt index 47130c6359a..842d2dc7411 100644 --- a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/settings/buildsystem/Module.kt +++ b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/settings/buildsystem/Module.kt @@ -39,7 +39,7 @@ class Module( val value = setting.reference.notRequiredSettingValue ?: setting.defaultValue ?: return@map ValidationResult.ValidationError("${setting.title.capitalize()} should not be blank") - setting.validator.validate(this@settingValidator, value) + (setting.validator as SettingValidator).validate(this@settingValidator, value) }.fold() } } and settingValidator { module -> @@ -49,7 +49,7 @@ class Module( val value = setting.reference.notRequiredSettingValue ?: setting.defaultValue ?: return@map ValidationResult.ValidationError("${setting.title.capitalize()} should not be blank") - setting.validator.validate(this@settingValidator, value) + (setting.validator as SettingValidator).validate(this@settingValidator, value) }.fold() } } and inValidatorContext { module -> diff --git a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/Wizard.kt b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/Wizard.kt index 842887a64e3..a0f4fbcfe47 100644 --- a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/Wizard.kt +++ b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/wizard/Wizard.kt @@ -23,7 +23,7 @@ abstract class Wizard(createPlugins: PluginsCreator, val servicesManager: Servic context.settingContext.allPluginSettings.map { setting -> val value = context.settingContext.pluginSettingValue(setting) ?: return@map ValidationResult.OK when (setting.neededAtPhase) { - in phases -> setting.validator.validate(this, value) + in phases -> (setting.validator as SettingValidator).validate(this, value) else -> ValidationResult.OK } }.fold(ValidationResult.OK, ValidationResult::and).toResult()