[Gradle][KPM] Rename KotlinFragmentNameDisambiguation into KotlinNameDisambiguation
This commit is contained in:
committed by
Space
parent
2a43199287
commit
3002829acf
+1
@@ -8,6 +8,7 @@
|
|||||||
package org.jetbrains.kotlin.gradle.plugin.mpp.pm20
|
package org.jetbrains.kotlin.gradle.plugin.mpp.pm20
|
||||||
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
||||||
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.KotlinNameDisambiguation
|
||||||
|
|
||||||
typealias KotlinCommonFragmentFactory = KotlinGradleFragmentFactory<KotlinGradleFragmentInternal>
|
typealias KotlinCommonFragmentFactory = KotlinGradleFragmentFactory<KotlinGradleFragmentInternal>
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -6,12 +6,12 @@
|
|||||||
package org.jetbrains.kotlin.gradle.plugin.mpp.pm20
|
package org.jetbrains.kotlin.gradle.plugin.mpp.pm20
|
||||||
|
|
||||||
import org.gradle.api.artifacts.Configuration
|
import org.gradle.api.artifacts.Configuration
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.KotlinNameDisambiguation
|
||||||
|
|
||||||
interface KotlinFragmentConfigurationInstantiator {
|
interface KotlinFragmentConfigurationInstantiator {
|
||||||
fun create(
|
fun create(
|
||||||
module: KotlinGradleModule,
|
module: KotlinGradleModule,
|
||||||
names: FragmentNameDisambiguation,
|
names: KotlinNameDisambiguation,
|
||||||
dependencies: KotlinFragmentDependencyConfigurations
|
dependencies: KotlinFragmentDependencyConfigurations
|
||||||
): Configuration
|
): Configuration
|
||||||
}
|
}
|
||||||
|
|||||||
+3
-3
@@ -5,15 +5,15 @@
|
|||||||
|
|
||||||
package org.jetbrains.kotlin.gradle.plugin.mpp.pm20
|
package org.jetbrains.kotlin.gradle.plugin.mpp.pm20
|
||||||
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.KotlinNameDisambiguation
|
||||||
|
|
||||||
interface KotlinFragmentDependencyConfigurationsFactory {
|
interface KotlinFragmentDependencyConfigurationsFactory {
|
||||||
fun create(module: KotlinGradleModule, names: FragmentNameDisambiguation): KotlinFragmentDependencyConfigurations
|
fun create(module: KotlinGradleModule, names: KotlinNameDisambiguation): KotlinFragmentDependencyConfigurations
|
||||||
}
|
}
|
||||||
|
|
||||||
object DefaultKotlinFragmentDependencyConfigurationsFactory : KotlinFragmentDependencyConfigurationsFactory {
|
object DefaultKotlinFragmentDependencyConfigurationsFactory : KotlinFragmentDependencyConfigurationsFactory {
|
||||||
|
|
||||||
override fun create(module: KotlinGradleModule, names: FragmentNameDisambiguation): KotlinFragmentDependencyConfigurations {
|
override fun create(module: KotlinGradleModule, names: KotlinNameDisambiguation): KotlinFragmentDependencyConfigurations {
|
||||||
val configurations = module.project.configurations
|
val configurations = module.project.configurations
|
||||||
val apiConfiguration = configurations.maybeCreate(names.disambiguateName("api"))
|
val apiConfiguration = configurations.maybeCreate(names.disambiguateName("api"))
|
||||||
val implementationConfiguration = configurations.maybeCreate(names.disambiguateName("implementation"))
|
val implementationConfiguration = configurations.maybeCreate(names.disambiguateName("implementation"))
|
||||||
|
|||||||
+1
@@ -9,6 +9,7 @@ package org.jetbrains.kotlin.gradle.plugin.mpp.pm20
|
|||||||
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.configuration.*
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.configuration.*
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
||||||
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.KotlinNameDisambiguation
|
||||||
|
|
||||||
fun <T : KotlinNativeVariantInternal> KotlinNativeVariantFactory(
|
fun <T : KotlinNativeVariantInternal> KotlinNativeVariantFactory(
|
||||||
nativeVariantInstantiator: KotlinNativeVariantInstantiator<T>,
|
nativeVariantInstantiator: KotlinNativeVariantInstantiator<T>,
|
||||||
|
|||||||
+2
-1
@@ -10,13 +10,14 @@ import org.gradle.api.attributes.Bundling
|
|||||||
import org.gradle.api.attributes.Category
|
import org.gradle.api.attributes.Category
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.*
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.*
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
||||||
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.KotlinNameDisambiguation
|
||||||
|
|
||||||
interface KotlinApiElementsConfigurationInstantiator : KotlinFragmentConfigurationInstantiator
|
interface KotlinApiElementsConfigurationInstantiator : KotlinFragmentConfigurationInstantiator
|
||||||
|
|
||||||
object DefaultKotlinApiElementsConfigurationInstantiator : KotlinApiElementsConfigurationInstantiator {
|
object DefaultKotlinApiElementsConfigurationInstantiator : KotlinApiElementsConfigurationInstantiator {
|
||||||
override fun create(
|
override fun create(
|
||||||
module: KotlinGradleModule,
|
module: KotlinGradleModule,
|
||||||
names: FragmentNameDisambiguation,
|
names: KotlinNameDisambiguation,
|
||||||
dependencies: KotlinFragmentDependencyConfigurations
|
dependencies: KotlinFragmentDependencyConfigurations
|
||||||
): Configuration {
|
): Configuration {
|
||||||
return module.project.configurations.maybeCreate(names.disambiguateName("apiElements")).apply {
|
return module.project.configurations.maybeCreate(names.disambiguateName("apiElements")).apply {
|
||||||
|
|||||||
+2
-1
@@ -8,6 +8,7 @@ package org.jetbrains.kotlin.gradle.plugin.mpp.pm20.configuration
|
|||||||
import org.gradle.api.artifacts.Configuration
|
import org.gradle.api.artifacts.Configuration
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.*
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.*
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
||||||
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.KotlinNameDisambiguation
|
||||||
import org.jetbrains.kotlin.gradle.utils.addExtendsFromRelation
|
import org.jetbrains.kotlin.gradle.utils.addExtendsFromRelation
|
||||||
|
|
||||||
|
|
||||||
@@ -16,7 +17,7 @@ interface KotlinCompileDependenciesConfigurationInstantiator : KotlinFragmentCon
|
|||||||
object DefaultKotlinCompileDependenciesConfigurationInstantiator : KotlinCompileDependenciesConfigurationInstantiator {
|
object DefaultKotlinCompileDependenciesConfigurationInstantiator : KotlinCompileDependenciesConfigurationInstantiator {
|
||||||
override fun create(
|
override fun create(
|
||||||
module: KotlinGradleModule,
|
module: KotlinGradleModule,
|
||||||
names: FragmentNameDisambiguation,
|
names: KotlinNameDisambiguation,
|
||||||
dependencies: KotlinFragmentDependencyConfigurations
|
dependencies: KotlinFragmentDependencyConfigurations
|
||||||
): Configuration {
|
): Configuration {
|
||||||
return module.project.configurations.maybeCreate(names.disambiguateName("compileDependencies")).apply {
|
return module.project.configurations.maybeCreate(names.disambiguateName("compileDependencies")).apply {
|
||||||
|
|||||||
+2
-1
@@ -11,6 +11,7 @@ import org.gradle.api.artifacts.Configuration
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.isHostSpecificKonanTargetsSet
|
import org.jetbrains.kotlin.gradle.plugin.mpp.isHostSpecificKonanTargetsSet
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.*
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.*
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
||||||
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.KotlinNameDisambiguation
|
||||||
import org.jetbrains.kotlin.konan.target.KonanTarget
|
import org.jetbrains.kotlin.konan.target.KonanTarget
|
||||||
|
|
||||||
interface KotlinHostSpecificMetadataElementsConfigurationInstantiator : KotlinFragmentConfigurationInstantiator
|
interface KotlinHostSpecificMetadataElementsConfigurationInstantiator : KotlinFragmentConfigurationInstantiator
|
||||||
@@ -23,7 +24,7 @@ fun DefaultKotlinHostSpecificMetadataElementsConfigurationInstantiator(
|
|||||||
private object DefaultKotlinHostSpecificMetadataElementsConfigurationInstantiator :
|
private object DefaultKotlinHostSpecificMetadataElementsConfigurationInstantiator :
|
||||||
KotlinHostSpecificMetadataElementsConfigurationInstantiator {
|
KotlinHostSpecificMetadataElementsConfigurationInstantiator {
|
||||||
override fun create(
|
override fun create(
|
||||||
module: KotlinGradleModule, names: FragmentNameDisambiguation, dependencies: KotlinFragmentDependencyConfigurations
|
module: KotlinGradleModule, names: KotlinNameDisambiguation, dependencies: KotlinFragmentDependencyConfigurations
|
||||||
): Configuration {
|
): Configuration {
|
||||||
return module.project.configurations.maybeCreate(names.disambiguateName("hostSpecificMetadataElements")).apply {
|
return module.project.configurations.maybeCreate(names.disambiguateName("hostSpecificMetadataElements")).apply {
|
||||||
isCanBeResolved = false
|
isCanBeResolved = false
|
||||||
|
|||||||
+2
-1
@@ -8,6 +8,7 @@ package org.jetbrains.kotlin.gradle.plugin.mpp.pm20.configuration
|
|||||||
import org.gradle.api.artifacts.Configuration
|
import org.gradle.api.artifacts.Configuration
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.*
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.*
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
||||||
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.KotlinNameDisambiguation
|
||||||
import org.jetbrains.kotlin.gradle.utils.addExtendsFromRelation
|
import org.jetbrains.kotlin.gradle.utils.addExtendsFromRelation
|
||||||
|
|
||||||
interface KotlinRuntimeDependenciesConfigurationInstantiator : KotlinFragmentConfigurationInstantiator
|
interface KotlinRuntimeDependenciesConfigurationInstantiator : KotlinFragmentConfigurationInstantiator
|
||||||
@@ -15,7 +16,7 @@ interface KotlinRuntimeDependenciesConfigurationInstantiator : KotlinFragmentCon
|
|||||||
object DefaultKotlinRuntimeDependenciesConfigurationInstantiator : KotlinRuntimeDependenciesConfigurationInstantiator {
|
object DefaultKotlinRuntimeDependenciesConfigurationInstantiator : KotlinRuntimeDependenciesConfigurationInstantiator {
|
||||||
override fun create(
|
override fun create(
|
||||||
module: KotlinGradleModule,
|
module: KotlinGradleModule,
|
||||||
names: FragmentNameDisambiguation,
|
names: KotlinNameDisambiguation,
|
||||||
dependencies: KotlinFragmentDependencyConfigurations
|
dependencies: KotlinFragmentDependencyConfigurations
|
||||||
): Configuration {
|
): Configuration {
|
||||||
return module.project.configurations.maybeCreate(names.disambiguateName("runtimeDependencies")).apply {
|
return module.project.configurations.maybeCreate(names.disambiguateName("runtimeDependencies")).apply {
|
||||||
|
|||||||
+2
-1
@@ -11,13 +11,14 @@ import org.gradle.api.attributes.Category
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.*
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.*
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinFragmentModuleCapabilityConfigurator.setModuleCapability
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinFragmentModuleCapabilityConfigurator.setModuleCapability
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.FragmentNameDisambiguation
|
||||||
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.KotlinNameDisambiguation
|
||||||
|
|
||||||
interface KotlinRuntimeElementsConfigurationFactory : KotlinFragmentConfigurationInstantiator
|
interface KotlinRuntimeElementsConfigurationFactory : KotlinFragmentConfigurationInstantiator
|
||||||
|
|
||||||
object DefaultKotlinRuntimeElementsConfigurationInstantiator : KotlinRuntimeElementsConfigurationFactory {
|
object DefaultKotlinRuntimeElementsConfigurationInstantiator : KotlinRuntimeElementsConfigurationFactory {
|
||||||
override fun create(
|
override fun create(
|
||||||
module: KotlinGradleModule,
|
module: KotlinGradleModule,
|
||||||
names: FragmentNameDisambiguation,
|
names: KotlinNameDisambiguation,
|
||||||
dependencies: KotlinFragmentDependencyConfigurations
|
dependencies: KotlinFragmentDependencyConfigurations
|
||||||
): Configuration {
|
): Configuration {
|
||||||
return module.project.configurations.maybeCreate(names.disambiguateName("runtimeElements")).apply {
|
return module.project.configurations.maybeCreate(names.disambiguateName("runtimeElements")).apply {
|
||||||
|
|||||||
+9
-9
@@ -12,14 +12,8 @@ import org.jetbrains.kotlin.gradle.utils.lowerCamelCaseName
|
|||||||
import org.jetbrains.kotlin.project.model.KotlinModule
|
import org.jetbrains.kotlin.project.model.KotlinModule
|
||||||
import org.jetbrains.kotlin.project.model.KotlinModuleFragment
|
import org.jetbrains.kotlin.project.model.KotlinModuleFragment
|
||||||
|
|
||||||
internal typealias FragmentNameDisambiguation = KotlinFragmentNameDisambiguation
|
|
||||||
|
|
||||||
internal fun FragmentNameDisambiguation(module: KotlinModule, fragmentName: String): FragmentNameDisambiguation {
|
|
||||||
return DefaultKotlinFragmentNameDisambiguation(module, fragmentName)
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Mechanism for disambiguating/scoping names for a certain fragment.
|
* Mechanism for disambiguating/scoping names for certain entities (e.g. fragments)
|
||||||
* e.g. Certain fragments might want to create a configuration called 'api'. However, the name scope
|
* e.g. Certain fragments might want to create a configuration called 'api'. However, the name scope
|
||||||
* of Gradle configurations is bound to the Gradle project which requires providing different names of mentioned configurations
|
* of Gradle configurations is bound to the Gradle project which requires providing different names of mentioned configurations
|
||||||
* for FragmentFoo and FragmentBar.
|
* for FragmentFoo and FragmentBar.
|
||||||
@@ -36,14 +30,20 @@ internal fun FragmentNameDisambiguation(module: KotlinModule, fragmentName: Stri
|
|||||||
* fragmentBar.disambiguateName("api") == "fragmentBarTestApi"
|
* fragmentBar.disambiguateName("api") == "fragmentBarTestApi"
|
||||||
* ```
|
* ```
|
||||||
*/
|
*/
|
||||||
interface KotlinFragmentNameDisambiguation {
|
interface KotlinNameDisambiguation {
|
||||||
fun disambiguateName(simpleName: String): String
|
fun disambiguateName(simpleName: String): String
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Default implementation for fragments */
|
||||||
|
|
||||||
|
internal fun FragmentNameDisambiguation(module: KotlinModule, fragmentName: String): KotlinNameDisambiguation {
|
||||||
|
return DefaultKotlinFragmentNameDisambiguation(module, fragmentName)
|
||||||
|
}
|
||||||
|
|
||||||
private class DefaultKotlinFragmentNameDisambiguation(
|
private class DefaultKotlinFragmentNameDisambiguation(
|
||||||
private val module: KotlinModule,
|
private val module: KotlinModule,
|
||||||
private val fragmentName: String
|
private val fragmentName: String
|
||||||
) : KotlinFragmentNameDisambiguation {
|
) : KotlinNameDisambiguation {
|
||||||
override fun disambiguateName(simpleName: String): String {
|
override fun disambiguateName(simpleName: String): String {
|
||||||
return KotlinModuleFragment.disambiguateName(module, fragmentName, simpleName)
|
return KotlinModuleFragment.disambiguateName(module, fragmentName, simpleName)
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user