Temporary fix code before proper support of UnsafeVariance in NI
See #KT-34433
This commit is contained in:
+2
-2
@@ -309,7 +309,7 @@ class ValueSettingType<V : Any>(
|
|||||||
) : SettingBuilder<V, ValueSettingType<V>>(path, title, neededAtPhase) {
|
) : SettingBuilder<V, ValueSettingType<V>>(path, title, neededAtPhase) {
|
||||||
init {
|
init {
|
||||||
validate { value ->
|
validate { value ->
|
||||||
if (value is Validatable<*>) value.validator.validate(this, value)
|
if (value is Validatable<*>) (value.validator as SettingValidator<Any>).validate(this, value)
|
||||||
else ValidationResult.OK
|
else ValidationResult.OK
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -354,7 +354,7 @@ class ListSettingType<V : Any>(private val parser: Parser<V>) : SettingType<List
|
|||||||
validate { values ->
|
validate { values ->
|
||||||
values.fold(ValidationResult.OK as ValidationResult) { result, value ->
|
values.fold(ValidationResult.OK as ValidationResult) { result, value ->
|
||||||
result and when (value) {
|
result and when (value) {
|
||||||
is Validatable<*> -> value.validator.validate(this, value)
|
is Validatable<*> -> (value.validator as SettingValidator<Any>).validate(this, value)
|
||||||
else -> ValidationResult.OK
|
else -> ValidationResult.OK
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -39,7 +39,7 @@ class Module(
|
|||||||
val value = setting.reference.notRequiredSettingValue
|
val value = setting.reference.notRequiredSettingValue
|
||||||
?: setting.defaultValue
|
?: setting.defaultValue
|
||||||
?: return@map ValidationResult.ValidationError("${setting.title.capitalize()} should not be blank")
|
?: return@map ValidationResult.ValidationError("${setting.title.capitalize()} should not be blank")
|
||||||
setting.validator.validate(this@settingValidator, value)
|
(setting.validator as SettingValidator<Any>).validate(this@settingValidator, value)
|
||||||
}.fold()
|
}.fold()
|
||||||
}
|
}
|
||||||
} and settingValidator { module ->
|
} and settingValidator { module ->
|
||||||
@@ -49,7 +49,7 @@ class Module(
|
|||||||
val value = setting.reference.notRequiredSettingValue
|
val value = setting.reference.notRequiredSettingValue
|
||||||
?: setting.defaultValue
|
?: setting.defaultValue
|
||||||
?: return@map ValidationResult.ValidationError("${setting.title.capitalize()} should not be blank")
|
?: return@map ValidationResult.ValidationError("${setting.title.capitalize()} should not be blank")
|
||||||
setting.validator.validate(this@settingValidator, value)
|
(setting.validator as SettingValidator<Any>).validate(this@settingValidator, value)
|
||||||
}.fold()
|
}.fold()
|
||||||
}
|
}
|
||||||
} and inValidatorContext { module ->
|
} and inValidatorContext { module ->
|
||||||
|
|||||||
+1
-1
@@ -23,7 +23,7 @@ abstract class Wizard(createPlugins: PluginsCreator, val servicesManager: Servic
|
|||||||
context.settingContext.allPluginSettings.map { setting ->
|
context.settingContext.allPluginSettings.map { setting ->
|
||||||
val value = context.settingContext.pluginSettingValue(setting) ?: return@map ValidationResult.OK
|
val value = context.settingContext.pluginSettingValue(setting) ?: return@map ValidationResult.OK
|
||||||
when (setting.neededAtPhase) {
|
when (setting.neededAtPhase) {
|
||||||
in phases -> setting.validator.validate(this, value)
|
in phases -> (setting.validator as SettingValidator<Any>).validate(this, value)
|
||||||
else -> ValidationResult.OK
|
else -> ValidationResult.OK
|
||||||
}
|
}
|
||||||
}.fold(ValidationResult.OK, ValidationResult::and).toResult()
|
}.fold(ValidationResult.OK, ValidationResult::and).toResult()
|
||||||
|
|||||||
Reference in New Issue
Block a user