[Gradle][KPM] Split fragment specific configurations from KotlinDependencyConfigurations
This commit is contained in:
committed by
Space
parent
d7df56a390
commit
2a43199287
-33
@@ -12,37 +12,4 @@ interface KotlinDependencyConfigurations {
|
||||
val implementationConfiguration: Configuration
|
||||
val compileOnlyConfiguration: Configuration
|
||||
val runtimeOnlyConfiguration: Configuration
|
||||
|
||||
/** This configuration includes the dependencies from the refines-parents */
|
||||
val transitiveApiConfiguration: Configuration
|
||||
|
||||
/** This configuration includes the dependencies from the refines-parents */
|
||||
val transitiveImplementationConfiguration: Configuration
|
||||
|
||||
private class Impl(
|
||||
override val apiConfiguration: Configuration,
|
||||
override val implementationConfiguration: Configuration,
|
||||
override val compileOnlyConfiguration: Configuration,
|
||||
override val runtimeOnlyConfiguration: Configuration,
|
||||
override val transitiveApiConfiguration:Configuration,
|
||||
override val transitiveImplementationConfiguration: Configuration
|
||||
) : KotlinDependencyConfigurations
|
||||
|
||||
companion object {
|
||||
fun create(
|
||||
apiConfiguration: Configuration,
|
||||
implementationConfiguration: Configuration,
|
||||
compileOnlyConfiguration: Configuration,
|
||||
runtimeOnlyConfiguration: Configuration,
|
||||
transitiveApiConfiguration: Configuration,
|
||||
transitiveImplementationConfiguration: Configuration
|
||||
): KotlinDependencyConfigurations = Impl(
|
||||
apiConfiguration = apiConfiguration,
|
||||
implementationConfiguration = implementationConfiguration,
|
||||
compileOnlyConfiguration = compileOnlyConfiguration,
|
||||
runtimeOnlyConfiguration = runtimeOnlyConfiguration,
|
||||
transitiveApiConfiguration = transitiveApiConfiguration,
|
||||
transitiveImplementationConfiguration = transitiveImplementationConfiguration
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
+43
@@ -0,0 +1,43 @@
|
||||
/*
|
||||
* Copyright 2010-2021 JetBrains s.r.o. and Kotlin Programming Language contributors.
|
||||
* Use of this source code is governed by the Apache 2.0 license that can be found in the license/LICENSE.txt file.
|
||||
*/
|
||||
|
||||
package org.jetbrains.kotlin.gradle.plugin.mpp.pm20
|
||||
|
||||
import org.gradle.api.artifacts.Configuration
|
||||
|
||||
interface KotlinFragmentDependencyConfigurations : KotlinDependencyConfigurations {
|
||||
/** This configuration includes the dependencies from the refines-parents */
|
||||
val transitiveApiConfiguration: Configuration
|
||||
|
||||
/** This configuration includes the dependencies from the refines-parents */
|
||||
val transitiveImplementationConfiguration: Configuration
|
||||
|
||||
private class Impl(
|
||||
override val apiConfiguration: Configuration,
|
||||
override val implementationConfiguration: Configuration,
|
||||
override val compileOnlyConfiguration: Configuration,
|
||||
override val runtimeOnlyConfiguration: Configuration,
|
||||
override val transitiveApiConfiguration: Configuration,
|
||||
override val transitiveImplementationConfiguration: Configuration
|
||||
) : KotlinFragmentDependencyConfigurations
|
||||
|
||||
companion object {
|
||||
fun create(
|
||||
apiConfiguration: Configuration,
|
||||
implementationConfiguration: Configuration,
|
||||
compileOnlyConfiguration: Configuration,
|
||||
runtimeOnlyConfiguration: Configuration,
|
||||
transitiveApiConfiguration: Configuration,
|
||||
transitiveImplementationConfiguration: Configuration
|
||||
): KotlinFragmentDependencyConfigurations = Impl(
|
||||
apiConfiguration = apiConfiguration,
|
||||
implementationConfiguration = implementationConfiguration,
|
||||
compileOnlyConfiguration = compileOnlyConfiguration,
|
||||
runtimeOnlyConfiguration = runtimeOnlyConfiguration,
|
||||
transitiveApiConfiguration = transitiveApiConfiguration,
|
||||
transitiveImplementationConfiguration = transitiveImplementationConfiguration
|
||||
)
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -15,7 +15,7 @@ import org.jetbrains.kotlin.gradle.plugin.LanguageSettingsBuilder
|
||||
import org.jetbrains.kotlin.project.model.KotlinModuleFragment
|
||||
import org.jetbrains.kotlin.project.model.refinesClosure
|
||||
|
||||
interface KotlinGradleFragment : KotlinModuleFragment, HasKotlinDependencies, KotlinDependencyConfigurations, Named {
|
||||
interface KotlinGradleFragment : KotlinModuleFragment, HasKotlinDependencies, KotlinFragmentDependencyConfigurations, Named {
|
||||
override val kotlinSourceRoots: SourceDirectorySet
|
||||
|
||||
override val containingModule: KotlinGradleModule
|
||||
|
||||
Reference in New Issue
Block a user