From 5f717ffd56f43fc9ba41d1200bfcf604f7dcf77b Mon Sep 17 00:00:00 2001 From: Sebastian Sellmair Date: Tue, 4 Oct 2022 18:49:28 +0200 Subject: [PATCH] [Gradle] KotlinCompilationImplFactory.PostConfigure: Use DecoratedKotlinCompilation to clear up dedicated usage KT-54312 --- .../factory/DefaultKotlinCompilationPostConfigure.kt | 3 ++- .../factory/KotlinCompilationImplFactory.kt | 10 +++++----- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/factory/DefaultKotlinCompilationPostConfigure.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/factory/DefaultKotlinCompilationPostConfigure.kt index c2d24b21d62..3cdc9016e7b 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/factory/DefaultKotlinCompilationPostConfigure.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/factory/DefaultKotlinCompilationPostConfigure.kt @@ -5,11 +5,12 @@ package org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.factory +import org.jetbrains.kotlin.gradle.plugin.mpp.DecoratedKotlinCompilation import org.jetbrains.kotlin.gradle.plugin.mpp.InternalKotlinCompilation import org.jetbrains.kotlin.gradle.plugin.sources.internal internal object DefaultKotlinCompilationPostConfigure : KotlinCompilationImplFactory.PostConfigure { - override fun configure(compilation: InternalKotlinCompilation<*>) { + override fun configure(compilation: DecoratedKotlinCompilation<*>) { /* Ensure proper tracking of compilations in the source sets */ compilation.allKotlinSourceSets.forAll { sourceSet -> sourceSet.internal.compilations.add(compilation) diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/factory/KotlinCompilationImplFactory.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/factory/KotlinCompilationImplFactory.kt index f2587f82bcf..1c1ee94a17e 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/factory/KotlinCompilationImplFactory.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/compilationImpl/factory/KotlinCompilationImplFactory.kt @@ -9,9 +9,10 @@ import org.jetbrains.kotlin.gradle.dsl.KotlinCommonOptions import org.jetbrains.kotlin.gradle.plugin.HasCompilerOptions import org.jetbrains.kotlin.gradle.plugin.KotlinCompilationOutput import org.jetbrains.kotlin.gradle.plugin.KotlinTarget -import org.jetbrains.kotlin.gradle.plugin.mpp.InternalKotlinCompilation +import org.jetbrains.kotlin.gradle.plugin.mpp.DecoratedKotlinCompilation import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.* import org.jetbrains.kotlin.gradle.plugin.mpp.compilationImpl.KotlinCompilationModuleManager.CompilationModule +import org.jetbrains.kotlin.gradle.plugin.mpp.decoratedInstance import org.jetbrains.kotlin.gradle.plugin.mpp.internal internal class KotlinCompilationImplFactory( @@ -89,7 +90,7 @@ internal class KotlinCompilationImplFactory( } fun interface PostConfigure { - fun configure(compilation: InternalKotlinCompilation<*>) + fun configure(compilation: DecoratedKotlinCompilation<*>) companion object { fun composite(vararg elements: PostConfigure?): PostConfigure = CompositePostConfigure(listOfNotNull(*elements)) @@ -121,7 +122,7 @@ internal class KotlinCompilationImplFactory( var postConfigureAction: PostConfigure? = this.postConfigureAction target.compilations.whenObjectAdded { added -> if (added.compilationName == compilationName) { - postConfigureAction?.configure(added.internal) + postConfigureAction?.configure(added.internal.decoratedInstance) postConfigureAction = null } } @@ -142,7 +143,7 @@ private class CompositePreConfigure( private class CompositePostConfigure( private val elements: List ) : KotlinCompilationImplFactory.PostConfigure { - override fun configure(compilation: InternalKotlinCompilation<*>) { + override fun configure(compilation: DecoratedKotlinCompilation<*>) { elements.forEach { element -> element.configure(compilation) } } } @@ -150,4 +151,3 @@ private class CompositePostConfigure( private object EmptyPreConfigure : KotlinCompilationImplFactory.PreConfigure { override fun configure(compilation: KotlinCompilationImpl) = Unit } -