summaryrefslogtreecommitdiff
path: root/build-system/gradle-core/src/main/java/com/android/build/gradle/internal/DependencyConfigurator.kt
diff options
context:
space:
mode:
Diffstat (limited to 'build-system/gradle-core/src/main/java/com/android/build/gradle/internal/DependencyConfigurator.kt')
-rw-r--r--build-system/gradle-core/src/main/java/com/android/build/gradle/internal/DependencyConfigurator.kt41
1 files changed, 23 insertions, 18 deletions
diff --git a/build-system/gradle-core/src/main/java/com/android/build/gradle/internal/DependencyConfigurator.kt b/build-system/gradle-core/src/main/java/com/android/build/gradle/internal/DependencyConfigurator.kt
index 53f903a230..8bfe409402 100644
--- a/build-system/gradle-core/src/main/java/com/android/build/gradle/internal/DependencyConfigurator.kt
+++ b/build-system/gradle-core/src/main/java/com/android/build/gradle/internal/DependencyConfigurator.kt
@@ -92,6 +92,7 @@ import org.gradle.api.ActionConfiguration
import org.gradle.api.Project
import org.gradle.api.artifacts.ArtifactView
import org.gradle.api.artifacts.Configuration
+import org.gradle.api.artifacts.Dependency
import org.gradle.api.artifacts.dsl.DependencyHandler
import org.gradle.api.artifacts.transform.TransformAction
import org.gradle.api.artifacts.transform.TransformSpec
@@ -502,24 +503,30 @@ class DependencyConfigurator(
{ reg: TransformSpec<ExtractSdkShimTransform.Parameters> ->
val experimentalProperties = variant.experimentalProperties
experimentalProperties.finalizeValue()
- val apigeneratorArtifact =
- ModuleStringPropertyKeys.ANDROID_PRIVACY_SANDBOX_SDK_API_GENERATOR
- .getValueAsString(experimentalProperties.get())
- ?: projectServices.projectOptions
- .get(StringOption.ANDROID_PRIVACY_SANDBOX_SDK_API_GENERATOR)
- ?: "androidx.privacysandbox.tools:tools-apigenerator:1.0.0-alpha02"
- val runtimeDependenciesForShimSdk =
- (ModuleStringPropertyKeys.ANDROID_PRIVACY_SANDBOX_SDK_API_GENERATOR_GENERATED_RUNTIME_DEPENDENCIES
- .getValueAsString(experimentalProperties.get())
- ?: projectServices.projectOptions
- .get(StringOption.ANDROID_PRIVACY_SANDBOX_SDK_API_GENERATOR_GENERATED_RUNTIME_DEPENDENCIES))
- ?.split(",")
- ?: listOf("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.0.1")
+
+ val experimentalPropertiesApiGenerator =
+ experimentalProperties.get()[ModuleStringPropertyKeys.ANDROID_PRIVACY_SANDBOX_SDK_API_GENERATOR.keyValue] as Dependency?
+ val apigeneratorArtifact: Dependency =
+ experimentalPropertiesApiGenerator
+ ?: project.dependencies.create(
+ projectServices.projectOptions.get(StringOption.ANDROID_PRIVACY_SANDBOX_SDK_API_GENERATOR)
+ ?: "androidx.privacysandbox.tools:tools-apigenerator:1.0.0-alpha02"
+ ) as Dependency
+
+ val experimentalPropertiesRuntimeApigeneratorDependencies =
+ experimentalProperties.get()[ModuleStringPropertyKeys.ANDROID_PRIVACY_SANDBOX_SDK_API_GENERATOR_GENERATED_RUNTIME_DEPENDENCIES.keyValue] as ArrayList<Dependency>?
+ val runtimeDependenciesForShimSdk: List<Dependency> =
+ experimentalPropertiesRuntimeApigeneratorDependencies
+ ?: (projectServices.projectOptions
+ .get(StringOption.ANDROID_PRIVACY_SANDBOX_SDK_API_GENERATOR_GENERATED_RUNTIME_DEPENDENCIES)
+ ?.split(",")
+ ?: listOf("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.0.1")).map {
+ project.dependencies.create(it)
+ }
val params = reg.parameters
val apiGeneratorConfiguration =
- project.configurations.detachedConfiguration(
- project.dependencies.create(apigeneratorArtifact))
+ project.configurations.detachedConfiguration(apigeneratorArtifact)
apiGeneratorConfiguration.isCanBeConsumed = false
apiGeneratorConfiguration.isCanBeResolved = true
params.apiGenerator.setFrom(apiGeneratorConfiguration)
@@ -540,9 +547,7 @@ class DependencyConfigurator(
params.requireServices.set(
projectServices.projectOptions[BooleanOption.PRIVACY_SANDBOX_SDK_REQUIRE_SERVICES])
val configuration = project.configurations.detachedConfiguration(
- *runtimeDependenciesForShimSdk.map {
- project.dependencies.create(it)
- }.toTypedArray())
+ *runtimeDependenciesForShimSdk.toTypedArray())
configuration.isCanBeConsumed = false
configuration.isCanBeResolved = true
params.runtimeDependencies.from(configuration.incoming.artifactView { config: ArtifactView.ViewConfiguration ->