From 98faaf9eba569ddfef4fdc0454904582859ea582 Mon Sep 17 00:00:00 2001 From: Ilya Kirillov Date: Sat, 7 Mar 2020 19:15:51 +0300 Subject: [PATCH] Wizard: make YamlParsingError to be exception error --- .../tools/projectWizard/wizard/core/errors.kt | 8 ++------ .../kotlin/tools/projectWizard/core/errors.kt | 17 ++++++++--------- 2 files changed, 10 insertions(+), 15 deletions(-) diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/src/org/jetbrains/kotlin/tools/projectWizard/wizard/core/errors.kt b/libraries/tools/new-project-wizard/new-project-wizard-cli/src/org/jetbrains/kotlin/tools/projectWizard/wizard/core/errors.kt index 998273a3704..c82b96b1ea6 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/src/org/jetbrains/kotlin/tools/projectWizard/wizard/core/errors.kt +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/src/org/jetbrains/kotlin/tools/projectWizard/wizard/core/errors.kt @@ -1,10 +1,6 @@ package org.jetbrains.kotlin.tools.projectWizard.wizard.core -import org.jetbrains.kotlin.tools.projectWizard.core.Error -import org.jetbrains.kotlin.tools.projectWizard.core.asString +import org.jetbrains.kotlin.tools.projectWizard.core.ExceptionError import org.yaml.snakeyaml.parser.ParserException -data class YamlParsingError(val exception: ParserException) : Error() { - override val message: String - get() = exception.asString() -} \ No newline at end of file +data class YamlParsingError(override val exception: ParserException) : ExceptionError() \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/core/errors.kt b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/core/errors.kt index b71eefd48a9..fabc168b3ce 100644 --- a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/core/errors.kt +++ b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/core/errors.kt @@ -9,7 +9,14 @@ abstract class Error { abstract class ExceptionError : Error() { abstract val exception: Exception override val message: String - get() = exception.asString() + get() = exception::class.simpleName!!.removeSuffix("Exception").splitByWords() + + exception.message?.let { ": $it" }.orEmpty() + + companion object { + private val wordRegex = "[A-Z][a-z0-9]+".toRegex() + private fun String.splitByWords() = + wordRegex.findAll(this).joinToString(separator = " ") { it.value } + } } data class IOError(override val exception: IOException) : ExceptionError() @@ -79,11 +86,3 @@ data class ModuleNotFoundError(val path: String) : Error() { } -fun Throwable.asString() = - this::class.simpleName!!.removeSuffix("Exception").splitByWords() + message?.let { ": $it" }.orEmpty() - -private val wordRegex = "[A-Z][a-z0-9]+".toRegex() -private fun String.splitByWords() = - wordRegex.findAll(this).joinToString(separator = " ") { it.value } - -