From ea698838ddcad8196162e3c5116d88bfae42ea18 Mon Sep 17 00:00:00 2001 From: "sebastian.sellmair" Date: Thu, 2 Dec 2021 15:46:46 +0100 Subject: [PATCH] [Gradle][KPM] Minor: Reuse logic in common `toModuleIdentifier` function --- .../gradle/plugin/mpp/pm20/DependencyResolution.kt | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/pm20/DependencyResolution.kt b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/pm20/DependencyResolution.kt index 696f89867dd..376ea8ab357 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/pm20/DependencyResolution.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/main/kotlin/org/jetbrains/kotlin/gradle/plugin/mpp/pm20/DependencyResolution.kt @@ -157,19 +157,17 @@ internal fun ComponentIdentifier.matchesModule(module: KotlinModule): Boolean = internal fun ResolvedComponentResult.toModuleIdentifiers(): List { val classifiers = moduleClassifiersFromCapabilities(variants.flatMap { it.capabilities }) - return classifiers.map { moduleClassifier -> - when (val id = id) { - is ProjectComponentIdentifier -> LocalModuleIdentifier(id.build.name, id.projectPath, moduleClassifier) - is ModuleComponentIdentifier -> id.toSingleModuleIdentifier() - else -> MavenModuleIdentifier(moduleVersion?.group.orEmpty(), moduleVersion?.name.orEmpty(), moduleClassifier) - } - } + return classifiers.map { moduleClassifier -> toModuleIdentifier(moduleClassifier) } } // FIXME this mapping doesn't have enough information to choose auxiliary modules internal fun ResolvedComponentResult.toSingleModuleIdentifier(): KotlinModuleIdentifier { val classifiers = moduleClassifiersFromCapabilities(variants.flatMap { it.capabilities }) val moduleClassifier = classifiers.single() // FIXME handle multiple capabilities + return toModuleIdentifier(moduleClassifier) +} + +private fun ResolvedComponentResult.toModuleIdentifier(moduleClassifier: String?): KotlinModuleIdentifier { return when (val id = id) { is ProjectComponentIdentifier -> LocalModuleIdentifier(id.build.name, id.projectPath, moduleClassifier) is ModuleComponentIdentifier -> id.toSingleModuleIdentifier()