From 60413e3d73d8b175f4f84695e283fadbd002878b Mon Sep 17 00:00:00 2001 From: Vladimir Krivosheev Date: Mon, 10 Apr 2017 15:54:35 +0200 Subject: [PATCH] fix ExecutionManagerTest --- .../ConfigurationInfoProvider.kt | 4 +- .../RunnerAndConfigurationSettingsImpl.kt | 61 +++++++++---------- 2 files changed, 31 insertions(+), 34 deletions(-) diff --git a/platform/lang-api/src/com/intellij/execution/configurations/ConfigurationInfoProvider.kt b/platform/lang-api/src/com/intellij/execution/configurations/ConfigurationInfoProvider.kt index 2b9e47ec63c0..7c99caf59a2c 100644 --- a/platform/lang-api/src/com/intellij/execution/configurations/ConfigurationInfoProvider.kt +++ b/platform/lang-api/src/com/intellij/execution/configurations/ConfigurationInfoProvider.kt @@ -22,7 +22,7 @@ interface ConfigurationInfoProvider { val configuration: RunConfiguration - val runnerSettings: RunnerSettings + val runnerSettings: RunnerSettings? - val configurationSettings: ConfigurationPerRunnerSettings + val configurationSettings: ConfigurationPerRunnerSettings? } \ No newline at end of file diff --git a/platform/lang-impl/src/com/intellij/execution/impl/RunnerAndConfigurationSettingsImpl.kt b/platform/lang-impl/src/com/intellij/execution/impl/RunnerAndConfigurationSettingsImpl.kt index 6dfaca52dcb8..712228516d12 100644 --- a/platform/lang-impl/src/com/intellij/execution/impl/RunnerAndConfigurationSettingsImpl.kt +++ b/platform/lang-impl/src/com/intellij/execution/impl/RunnerAndConfigurationSettingsImpl.kt @@ -21,6 +21,7 @@ import com.intellij.configurationStore.serializeInto import com.intellij.execution.* import com.intellij.execution.configurations.* import com.intellij.execution.runners.ProgramRunner +import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.components.PathMacroManager import com.intellij.openapi.components.PersistentStateComponent import com.intellij.openapi.diagnostic.logger @@ -53,7 +54,7 @@ internal val TEMPLATE_FLAG_ATTRIBUTE = "default" val SINGLETON = "singleton" class RunnerAndConfigurationSettingsImpl @JvmOverloads constructor(private val manager: RunManagerImpl, - private var configuration: RunConfiguration? = null, + private var _configuration: RunConfiguration? = null, private var isTemplate: Boolean = false, private var singleton: Boolean = false) : Cloneable, RunnerAndConfigurationSettings, Comparable, RunConfigurationScheme, SerializableScheme { enum class Level { @@ -65,7 +66,7 @@ class RunnerAndConfigurationSettingsImpl @JvmOverloads constructor(private val m } private val configurationPerRunnerSettings = object : RunnerItem("ConfigurationWrapper") { - override fun createSettings(runner: ProgramRunner<*>) = configuration!!.createRunnerSettings(InfoProvider(runner)) + override fun createSettings(runner: ProgramRunner<*>) = configuration.createRunnerSettings(InfoProvider(runner)) } var level = Level.WORKSPACE @@ -74,7 +75,7 @@ class RunnerAndConfigurationSettingsImpl @JvmOverloads constructor(private val m private var wasSingletonSpecifiedExplicitly = false private var folderName: String? = null - override fun getFactory(): ConfigurationFactory = configuration?.factory ?: UnknownConfigurationType.FACTORY + override fun getFactory(): ConfigurationFactory = _configuration?.factory ?: UnknownConfigurationType.FACTORY override fun isTemplate() = isTemplate @@ -86,19 +87,19 @@ class RunnerAndConfigurationSettingsImpl @JvmOverloads constructor(private val m level = if (value) Level.TEMPORARY else Level.WORKSPACE } - override fun getConfiguration() = configuration ?: UnknownConfigurationType.FACTORY.createTemplateConfiguration(manager.project) + override fun getConfiguration() = _configuration ?: UnknownConfigurationType.FACTORY.createTemplateConfiguration(manager.project) override fun createFactory() = Factory { - val configuration = configuration!! + val configuration = configuration RunnerAndConfigurationSettingsImpl(manager, configuration.factory.createConfiguration(ExecutionBundle.message("default.run.configuration.name"), configuration), false) } override fun setName(name: String) { - configuration!!.name = name + configuration.name = name } override fun getName(): String { - val configuration = configuration!! + val configuration = configuration if (isTemplate) { return "