From f742e000f824d53c25949e3ec6f87777fe5d0b92 Mon Sep 17 00:00:00 2001 From: Anton Yalyshev Date: Fri, 12 Jul 2019 20:30:49 +0300 Subject: [PATCH] Refactoring: extract and pull up duplicated code from JVM- and JS- related subclassed --- ...DslGradleKotlinFrameworkSupportProvider.kt | 25 ++++++++----------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinDslGradleKotlinFrameworkSupportProvider.kt b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinDslGradleKotlinFrameworkSupportProvider.kt index b2538f25e6e..a29936d1cab 100644 --- a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinDslGradleKotlinFrameworkSupportProvider.kt +++ b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinDslGradleKotlinFrameworkSupportProvider.kt @@ -112,6 +112,13 @@ abstract class KotlinDslGradleKotlinFrameworkSupportProvider( protected abstract fun getOldSyntaxPluginDefinition(): String protected abstract fun getPluginDefinition(): String + + protected fun composeDependency(buildScriptData: BuildScriptDataBuilder, artifactId: String): String { + return if (buildScriptData.gradleVersion >= MIN_GRADLE_VERSION_FOR_NEW_PLUGIN_SYNTAX) + "implementation(${getKotlinModuleDependencySnippet(artifactId, null)})" + else + "implementation(${getKotlinModuleDependencySnippet(artifactId, "\$$GSK_KOTLIN_VERSION_PROPERTY_NAME")})" + } } class KotlinDslGradleKotlinJavaFrameworkSupportProvider : @@ -120,9 +127,6 @@ class KotlinDslGradleKotlinJavaFrameworkSupportProvider : override fun getOldSyntaxPluginDefinition() = "plugin(\"${KotlinGradleModuleConfigurator.KOTLIN}\")" override fun getPluginDefinition() = "kotlin(\"jvm\")" - private fun getRuntimeLibrary(rootModel: ModifiableRootModel, version: String?) = - "implementation(${getKotlinModuleDependencySnippet(getStdlibArtifactId(rootModel.sdk, bundledRuntimeVersion()), version)})" - override fun addSupport( projectId: ProjectId, module: Module, @@ -138,10 +142,8 @@ class KotlinDslGradleKotlinJavaFrameworkSupportProvider : .addOther("tasks.withType {\n kotlinOptions.jvmTarget = \"1.8\"\n}\n") } - if (buildScriptData.gradleVersion >= MIN_GRADLE_VERSION_FOR_NEW_PLUGIN_SYNTAX) - buildScriptData.addDependencyNotation(getRuntimeLibrary(rootModel, null)) - else - buildScriptData.addDependencyNotation(getRuntimeLibrary(rootModel, "\$$GSK_KOTLIN_VERSION_PROPERTY_NAME")) + val artifactId = getStdlibArtifactId(rootModel.sdk, bundledRuntimeVersion()) + buildScriptData.addDependencyNotation(composeDependency(buildScriptData, artifactId)) } } @@ -161,18 +163,13 @@ abstract class AbstractKotlinDslGradleKotlinJSFrameworkSupportProvider( super.addSupport(projectId, module, rootModel, modifiableModelsProvider, buildScriptData) buildScriptData.addOther("kotlin.target.$jsSubTargetName { }") - - if (buildScriptData.gradleVersion >= MIN_GRADLE_VERSION_FOR_NEW_PLUGIN_SYNTAX) - buildScriptData.addDependencyNotation(getRuntimeLibrary(rootModel, null)) - else - buildScriptData.addDependencyNotation(getRuntimeLibrary(rootModel, "\$$GSK_KOTLIN_VERSION_PROPERTY_NAME")) + val artifactId = MAVEN_JS_STDLIB_ID.removePrefix("kotlin-") + buildScriptData.addDependencyNotation(composeDependency(buildScriptData, artifactId)) } override fun getOldSyntaxPluginDefinition(): String = "plugin(\"${KotlinJsGradleModuleConfigurator.KOTLIN_JS}\")" override fun getPluginDefinition(): String = "id(\"org.jetbrains.kotlin.js\")" - private fun getRuntimeLibrary(rootModel: ModifiableRootModel, version: String?) = - "implementation(${getKotlinModuleDependencySnippet(MAVEN_JS_STDLIB_ID.removePrefix("kotlin-"), version)})" } class KotlinDslGradleKotlinJSBrowserFrameworkSupportProvider :