Skip to content

Commit 0a2e5d6

Browse files
committed
Replace uses of EmbraceExtensionInternal with variantConfigurationsListProperty
1 parent 5b9fd6e commit 0a2e5d6

File tree

10 files changed

+149
-169
lines changed

10 files changed

+149
-169
lines changed

embrace-gradle-plugin/src/main/java/io/embrace/android/gradle/plugin/EmbraceGradlePluginDelegate.kt

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,6 @@ class EmbraceGradlePluginDelegate {
4141
project.objects
4242
)
4343

44-
// we don't want anyone to update it once it's read
45-
variantConfigurationsListProperty.finalizeValueOnRead()
46-
4744
BuildTelemetryService.register(
4845
project,
4946
variantConfigurationsListProperty,

embrace-gradle-plugin/src/main/java/io/embrace/android/gradle/plugin/instrumentation/config/model/VariantConfig.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ import java.io.Serializable
1111
*/
1212
@JsonClass(generateAdapter = true)
1313
data class VariantConfig(
14-
val variantName: String? = null,
14+
val variantName: String,
1515
val variantVersion: String? = null,
1616
val buildId: String? = null,
1717
val buildType: String? = null,

embrace-gradle-plugin/src/main/java/io/embrace/android/gradle/plugin/tasks/il2cpp/Il2CppUploadTaskRegistration.kt

Lines changed: 15 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package io.embrace.android.gradle.plugin.tasks.il2cpp
22

3-
import io.embrace.android.gradle.plugin.extension.EmbraceExtensionInternal
43
import io.embrace.android.gradle.plugin.gradle.registerTask
4+
import io.embrace.android.gradle.plugin.instrumentation.config.model.VariantConfig
55
import io.embrace.android.gradle.plugin.model.AndroidCompactedVariantData
66
import io.embrace.android.gradle.plugin.tasks.common.FileCompressionTask
77
import io.embrace.android.gradle.plugin.tasks.common.MultipartUploadTask
@@ -10,6 +10,7 @@ import io.embrace.android.gradle.plugin.tasks.registration.EmbraceTaskRegistrati
1010
import io.embrace.android.gradle.plugin.tasks.registration.RegistrationParams
1111
import org.gradle.api.Project
1212
import org.gradle.api.Task
13+
import org.gradle.api.provider.ListProperty
1314
import org.gradle.api.tasks.TaskProvider
1415
import java.io.File
1516

@@ -36,7 +37,7 @@ class Il2CppUploadTaskRegistration : EmbraceTaskRegistration {
3637
project,
3738
task,
3839
data,
39-
extension,
40+
variantConfigurationsListProperty,
4041
baseUrl
4142
)
4243
}
@@ -47,25 +48,25 @@ class Il2CppUploadTaskRegistration : EmbraceTaskRegistration {
4748
project: Project,
4849
ndkTaskProvider: TaskProvider<Task>,
4950
variant: AndroidCompactedVariantData,
50-
extension: EmbraceExtensionInternal,
51+
variantConfigurationsListProperty: ListProperty<VariantConfig>,
5152
baseUrl: String,
5253
) {
5354
val il2cppSymbolsDir = File(project.rootDir, IL2CPP_SYMBOLS_DIR)
54-
val variantInfo = extension.variants.getByName(variant.name)
55+
val variantConfig = variantConfigurationsListProperty.get().first { it.variantName == variant.name }
5556
val lineNumberCompressionTaskProvider = configureFileCompressionTask(
5657
project,
5758
variant,
5859
Il2CppInfo.LineNumberMap,
5960
il2cppSymbolsDir,
60-
variantInfo,
61+
variantConfig,
6162
)
6263
configureFileUploadTask(
6364
project,
6465
variant,
6566
Il2CppInfo.LineNumberMap,
6667
ndkTaskProvider,
6768
lineNumberCompressionTaskProvider,
68-
variantInfo,
69+
variantConfig,
6970
baseUrl,
7071
)
7172

@@ -74,15 +75,15 @@ class Il2CppUploadTaskRegistration : EmbraceTaskRegistration {
7475
variant,
7576
Il2CppInfo.MethodMap,
7677
il2cppSymbolsDir,
77-
variantInfo,
78+
variantConfig,
7879
)
7980
configureFileUploadTask(
8081
project,
8182
variant,
8283
Il2CppInfo.MethodMap,
8384
ndkTaskProvider,
8485
methodMapCompressionTaskProvider,
85-
variantInfo,
86+
variantConfig,
8687
baseUrl,
8788
)
8889
}
@@ -92,7 +93,7 @@ class Il2CppUploadTaskRegistration : EmbraceTaskRegistration {
9293
variant: AndroidCompactedVariantData,
9394
info: Il2CppInfo,
9495
il2cppSymbolsDir: File,
95-
variantInfo: EmbraceExtensionInternal.VariantExtension,
96+
variantConfig: VariantConfig,
9697
): TaskProvider<FileCompressionTask> {
9798
val compressionTask = project.registerTask(
9899
info.compressionTaskName,
@@ -106,7 +107,7 @@ class Il2CppUploadTaskRegistration : EmbraceTaskRegistration {
106107
task.originalFile.fileProvider(fileProvider)
107108
task.compressedFile.convention(
108109
project.layout.buildDirectory.file(
109-
"outputs/embrace/il2cpp/compressed/${variantInfo.name}/${info.filename}"
110+
"outputs/embrace/il2cpp/compressed/${variantConfig.variantName}/${info.filename}"
110111
)
111112
)
112113
}
@@ -119,7 +120,7 @@ class Il2CppUploadTaskRegistration : EmbraceTaskRegistration {
119120
info: Il2CppInfo,
120121
ndkTaskProvider: TaskProvider<Task>,
121122
fileCompressionTask: TaskProvider<FileCompressionTask>,
122-
variantInfo: EmbraceExtensionInternal.VariantExtension,
123+
variantInfo: VariantConfig,
123124
baseUrl: String,
124125
) {
125126
val uploadTask = project.registerTask(
@@ -130,11 +131,11 @@ class Il2CppUploadTaskRegistration : EmbraceTaskRegistration {
130131
task.requestParams.set(
131132
project.provider {
132133
RequestParams(
133-
appId = variantInfo.config.get().embraceConfig?.appId.orEmpty(),
134-
apiToken = variantInfo.config.get().embraceConfig?.apiToken.orEmpty(),
134+
appId = variantInfo.embraceConfig?.appId.orEmpty(),
135+
apiToken = variantInfo.embraceConfig?.apiToken.orEmpty(),
135136
endpoint = info.endpoint,
136137
fileName = info.filename,
137-
buildId = variantInfo.config.get().buildId,
138+
buildId = variantInfo.buildId,
138139
baseUrl = baseUrl,
139140
)
140141
}

embrace-gradle-plugin/src/main/java/io/embrace/android/gradle/plugin/tasks/ndk/NdkUploadTaskRegistration.kt

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ private const val GENERATED_RESOURCE_PATH = "generated/embrace/res"
2626
class NdkUploadTaskRegistration(
2727
private val behavior: PluginBehavior,
2828
private val unitySymbolsDir: Provider<UnitySymbolsDir>,
29-
private val projectType: Provider<ProjectType>
29+
private val projectType: Provider<ProjectType>,
3030
) : EmbraceTaskRegistration {
3131

3232
override fun register(params: RegistrationParams) {
@@ -38,8 +38,8 @@ class NdkUploadTaskRegistration(
3838
* build process.
3939
*/
4040
fun RegistrationParams.execute(): TaskProvider<NdkUploadTask>? {
41-
val variantExtension = extension.variants.getByName(data.name)
42-
val embraceConfig = variantExtension.config.orNull?.embraceConfig
41+
val variantConfig = variantConfigurationsListProperty.get().first { it.variantName == variant.name }
42+
val embraceConfig = variantConfig.embraceConfig
4343

4444
if (embraceConfig?.ndkEnabled == false) return null
4545

@@ -78,9 +78,7 @@ class NdkUploadTaskRegistration(
7878
}
7979
)
8080
task.ndkEnabled.set(
81-
variantExtension.config.map {
82-
it.embraceConfig?.ndkEnabled ?: true
83-
}
81+
embraceConfig?.ndkEnabled ?: true
8482
)
8583
task.deobfuscatedFilesDirPath.set(
8684
project.layout.buildDirectory.dir(
@@ -126,7 +124,7 @@ class NdkUploadTaskRegistration(
126124

127125
val taskContainer = project.tasks
128126
ndkUploadTaskProvider.configure { ndkUploadTask: NdkUploadTask ->
129-
ndkUploadTask.onlyIf { variantExtension.config.orNull?.embraceConfig?.ndkEnabled ?: true }
127+
ndkUploadTask.onlyIf { embraceConfig?.ndkEnabled ?: true }
130128
ndkUploadTask.ndkType.set(
131129
projectType.map {
132130
when (it) {
@@ -135,7 +133,7 @@ class NdkUploadTaskRegistration(
135133
if (behavior.customSymbolsDirectory.isNullOrEmpty() ||
136134
taskContainer.isTaskRegistered(
137135
"externalNativeBuild",
138-
variantExtension.name
136+
variantConfig.variantName
139137
)
140138
) {
141139
NdkType.NATIVE
@@ -154,13 +152,13 @@ class NdkUploadTaskRegistration(
154152
override fun call(): Any {
155153
return listOfNotNull(
156154
project.tryGetTaskProvider(
157-
"merge${variantExtension.name.capitalizedString()}JniLibFolders"
155+
"merge${variantConfig.variantName.capitalizedString()}JniLibFolders"
158156
),
159157
project.tryGetTaskProvider(
160-
"transformNativeLibsWithMergeJniLibsFor${variantExtension.name.capitalizedString()}"
158+
"transformNativeLibsWithMergeJniLibsFor${variantConfig.variantName.capitalizedString()}"
161159
),
162160
project.tryGetTaskProvider(
163-
"merge${variantExtension.name.capitalizedString()}NativeLibs"
161+
"merge${variantConfig.variantName.capitalizedString()}NativeLibs"
164162
)
165163
)
166164
}
@@ -177,7 +175,7 @@ class NdkUploadTaskRegistration(
177175

178176
private fun getMappingFileFolder(
179177
buildTypeName: String?,
180-
flavorName: String?
178+
flavorName: String?,
181179
) = if (flavorName.isNullOrEmpty()) {
182180
buildTypeName ?: ""
183181
} else {

embrace-gradle-plugin/src/main/java/io/embrace/android/gradle/plugin/tasks/r8/JvmMappingUploadTaskRegistration.kt

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,12 @@ package io.embrace.android.gradle.plugin.tasks.r8
33
import com.android.build.api.artifact.SingleArtifact
44
import com.android.build.api.variant.Variant
55
import io.embrace.android.gradle.plugin.agp.AgpUtils.isDexguard
6-
import io.embrace.android.gradle.plugin.extension.EmbraceExtensionInternal
76
import io.embrace.android.gradle.plugin.gradle.isTaskRegistered
87
import io.embrace.android.gradle.plugin.gradle.nullSafeMap
98
import io.embrace.android.gradle.plugin.gradle.registerTask
109
import io.embrace.android.gradle.plugin.gradle.safeFlatMap
1110
import io.embrace.android.gradle.plugin.gradle.tryGetTaskProvider
11+
import io.embrace.android.gradle.plugin.instrumentation.config.model.VariantConfig
1212
import io.embrace.android.gradle.plugin.model.AndroidCompactedVariantData
1313
import io.embrace.android.gradle.plugin.network.EmbraceEndpoint
1414
import io.embrace.android.gradle.plugin.tasks.common.FileCompressionTask
@@ -19,6 +19,7 @@ import io.embrace.android.gradle.plugin.tasks.registration.RegistrationParams
1919
import io.embrace.android.gradle.plugin.util.capitalizedString
2020
import org.gradle.api.Project
2121
import org.gradle.api.Task
22+
import org.gradle.api.provider.ListProperty
2223
import org.gradle.api.provider.Provider
2324
import org.gradle.api.tasks.TaskProvider
2425
import java.io.File
@@ -42,7 +43,7 @@ class JvmMappingUploadTaskRegistration : EmbraceTaskRegistration {
4243
task,
4344
fetchJvmMappingFile(task, variant),
4445
baseUrl,
45-
extension
46+
variantConfigurationsListProperty
4647
)
4748
}
4849
}
@@ -55,7 +56,7 @@ class JvmMappingUploadTaskRegistration : EmbraceTaskRegistration {
5556
anchorTask: TaskProvider<Task>,
5657
mappingFile: Provider<File?>,
5758
baseUrl: String,
58-
extension: EmbraceExtensionInternal,
59+
variantConfigurationsListProperty: ListProperty<VariantConfig>,
5960
): TaskProvider<MultipartUploadTask> {
6061
val compressionTask = project.registerTask(
6162
"$COMPRESS_TASK_NAME${variant.name}",
@@ -76,15 +77,15 @@ class JvmMappingUploadTaskRegistration : EmbraceTaskRegistration {
7677
MultipartUploadTask::class.java,
7778
variant
7879
) { task ->
79-
val variantExtension = extension.variants.getByName(variant.name)
80+
val variantConfig = variantConfigurationsListProperty.get().first { it.variantName == variant.name }
8081
task.requestParams.set(
8182
project.provider {
8283
RequestParams(
83-
appId = variantExtension.config.get().embraceConfig?.appId.orEmpty(),
84-
apiToken = variantExtension.config.get().embraceConfig?.apiToken.orEmpty(),
84+
appId = variantConfig.embraceConfig?.appId.orEmpty(),
85+
apiToken = variantConfig.embraceConfig?.apiToken.orEmpty(),
8586
endpoint = EmbraceEndpoint.PROGUARD,
8687
fileName = FILE_NAME_MAPPING_TXT,
87-
buildId = variantExtension.config.get().buildId,
88+
buildId = variantConfig.buildId,
8889
baseUrl = baseUrl,
8990
)
9091
}
@@ -108,7 +109,7 @@ class JvmMappingUploadTaskRegistration : EmbraceTaskRegistration {
108109

109110
private fun fetchJvmMappingFile(
110111
obfuscationTask: TaskProvider<Task>,
111-
variant: Variant
112+
variant: Variant,
112113
): Provider<File?> {
113114
return if (isDexguard(obfuscationTask)) {
114115
fetchDexguardMappingFile(obfuscationTask)
@@ -119,7 +120,7 @@ class JvmMappingUploadTaskRegistration : EmbraceTaskRegistration {
119120
}
120121

121122
private fun fetchDexguardMappingFile(
122-
obfuscationTask: TaskProvider<Task>
123+
obfuscationTask: TaskProvider<Task>,
123124
): Provider<File?> {
124125
return obfuscationTask.safeFlatMap { task ->
125126
task.outputs.files.asFileTree.filter {
@@ -137,7 +138,7 @@ class JvmMappingUploadTaskRegistration : EmbraceTaskRegistration {
137138
*/
138139
private fun fetchJvmMappingTasks(
139140
project: Project,
140-
variant: AndroidCompactedVariantData
141+
variant: AndroidCompactedVariantData,
141142
): List<TaskProvider<Task>> {
142143
val name = variant.name.capitalizedString()
143144
val targetObfuscationTasks = listOf(

embrace-gradle-plugin/src/main/java/io/embrace/android/gradle/plugin/tasks/reactnative/EmbraceRnSourcemapGeneratorTaskRegistration.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -79,19 +79,19 @@ class EmbraceRnSourcemapGeneratorTaskRegistration : EmbraceTaskRegistration {
7979
}
8080

8181
private fun RegistrationParams.createRnSourcemapGeneratorTaskProvider(
82-
generatorTask: TaskProvider<Task>
82+
generatorTask: TaskProvider<Task>,
8383
) = project.registerTask(
8484
SOURCEMAP_GENERATOR_NAME,
8585
EmbraceRnSourcemapGeneratorTask::class.java,
8686
data
8787
) { rnTask ->
8888
try {
89-
val variantExtension = extension.variants.getByName(variant.name)
89+
val embraceConfig = variantConfigurationsListProperty.get().first { it.variantName == variant.name }.embraceConfig
9090
rnTask.requestParams.set(
9191
project.provider {
9292
RequestParams(
93-
appId = variantExtension.config.orNull?.embraceConfig?.appId.orEmpty(),
94-
apiToken = variantExtension.config.orNull?.embraceConfig?.apiToken.orEmpty(),
93+
appId = embraceConfig?.appId.orEmpty(),
94+
apiToken = embraceConfig?.apiToken.orEmpty(),
9595
endpoint = EmbraceEndpoint.SOURCE_MAP,
9696
fileName = FILE_NAME_SOURCE_MAP_JSON,
9797
baseUrl = baseUrl,
Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,17 @@
11
package io.embrace.android.gradle.plugin.tasks.registration
22

33
import com.android.build.api.variant.Variant
4-
import io.embrace.android.gradle.plugin.extension.EmbraceExtensionInternal
4+
import io.embrace.android.gradle.plugin.instrumentation.config.model.VariantConfig
55
import io.embrace.android.gradle.plugin.model.AndroidCompactedVariantData
66
import io.embrace.android.gradle.plugin.network.NetworkService
77
import org.gradle.api.Project
8+
import org.gradle.api.provider.ListProperty
89

910
class RegistrationParams(
1011
val project: Project,
1112
val variant: Variant,
1213
val data: AndroidCompactedVariantData,
1314
val networkService: NetworkService,
14-
val extension: EmbraceExtensionInternal,
15+
val variantConfigurationsListProperty: ListProperty<VariantConfig>,
1516
val baseUrl: String,
1617
)

0 commit comments

Comments
 (0)