[Gradle] Move default variant implementations registration upwards
Now default variant implementations are being registered in DefaultKotlinBasePlugin, allowing to test KGP api without dealing with variant factories
This commit is contained in:
committed by
Space
parent
749d9f51d1
commit
45b608e195
+30
-30
@@ -83,6 +83,8 @@ abstract class DefaultKotlinBasePlugin : KotlinBasePlugin {
|
||||
|
||||
addKotlinCompilerConfiguration(project)
|
||||
|
||||
project.registerDefaultVariantImplementations()
|
||||
|
||||
project.configurations.maybeCreate(PLUGIN_CLASSPATH_CONFIGURATION_NAME).apply {
|
||||
isVisible = false
|
||||
isCanBeConsumed = false
|
||||
@@ -119,6 +121,34 @@ abstract class DefaultKotlinBasePlugin : KotlinBasePlugin {
|
||||
}
|
||||
}
|
||||
|
||||
private fun Project.registerDefaultVariantImplementations() {
|
||||
val factories = VariantImplementationFactories.get(project.gradle)
|
||||
factories.putIfAbsent(
|
||||
MavenPluginConfigurator.MavenPluginConfiguratorVariantFactory::class,
|
||||
MavenPluginConfigurator.DefaultMavenPluginConfiguratorVariantFactory()
|
||||
)
|
||||
|
||||
factories.putIfAbsent(
|
||||
JavaSourceSetsAccessor.JavaSourceSetsAccessorVariantFactory::class,
|
||||
DefaultJavaSourceSetsAccessorVariantFactory()
|
||||
)
|
||||
|
||||
factories.putIfAbsent(
|
||||
BasePluginConfiguration.BasePluginConfigurationVariantFactory::class,
|
||||
DefaultBasePluginConfigurationVariantFactory()
|
||||
)
|
||||
|
||||
factories.putIfAbsent(
|
||||
IdeaSyncDetector.IdeaSyncDetectorVariantFactory::class,
|
||||
DefaultIdeaSyncDetectorVariantFactory()
|
||||
)
|
||||
|
||||
factories.putIfAbsent(
|
||||
ConfigurationTimePropertiesAccessor.ConfigurationTimePropertiesAccessorVariantFactory::class,
|
||||
DefaultConfigurationTimePropertiesAccessorVariantFactory()
|
||||
)
|
||||
}
|
||||
|
||||
protected fun setupAttributeMatchingStrategy(
|
||||
project: Project,
|
||||
isKotlinGranularMetadata: Boolean = project.isKotlinGranularMetadataEnabled
|
||||
@@ -160,8 +190,6 @@ abstract class KotlinBasePluginWrapper : DefaultKotlinBasePlugin() {
|
||||
}
|
||||
project.maybeCreateCommonizerClasspathConfiguration()
|
||||
|
||||
project.registerDefaultVariantImplementations()
|
||||
|
||||
project.createKotlinExtension(projectExtensionClass).apply {
|
||||
coreLibrariesVersion = kotlinPluginVersion
|
||||
|
||||
@@ -187,34 +215,6 @@ abstract class KotlinBasePluginWrapper : DefaultKotlinBasePlugin() {
|
||||
project.registerBuildKotlinToolingMetadataTask()
|
||||
}
|
||||
|
||||
private fun Project.registerDefaultVariantImplementations() {
|
||||
val factories = VariantImplementationFactories.get(project.gradle)
|
||||
factories.putIfAbsent(
|
||||
MavenPluginConfigurator.MavenPluginConfiguratorVariantFactory::class,
|
||||
MavenPluginConfigurator.DefaultMavenPluginConfiguratorVariantFactory()
|
||||
)
|
||||
|
||||
factories.putIfAbsent(
|
||||
JavaSourceSetsAccessor.JavaSourceSetsAccessorVariantFactory::class,
|
||||
DefaultJavaSourceSetsAccessorVariantFactory()
|
||||
)
|
||||
|
||||
factories.putIfAbsent(
|
||||
BasePluginConfiguration.BasePluginConfigurationVariantFactory::class,
|
||||
DefaultBasePluginConfigurationVariantFactory()
|
||||
)
|
||||
|
||||
factories.putIfAbsent(
|
||||
IdeaSyncDetector.IdeaSyncDetectorVariantFactory::class,
|
||||
DefaultIdeaSyncDetectorVariantFactory()
|
||||
)
|
||||
|
||||
factories.putIfAbsent(
|
||||
ConfigurationTimePropertiesAccessor.ConfigurationTimePropertiesAccessorVariantFactory::class,
|
||||
DefaultConfigurationTimePropertiesAccessorVariantFactory()
|
||||
)
|
||||
}
|
||||
|
||||
internal open fun createTestRegistry(project: Project) = KotlinTestsRegistry(project)
|
||||
|
||||
internal abstract fun getPlugin(
|
||||
|
||||
Reference in New Issue
Block a user