Skip to content

Commit ef70a24

Browse files
romtsncodex
andcommitted
ref(android): Store metadata in manifest reader
Use ManifestMetadataReader directly as the Gradle plugin injection target and remove the dedicated holder class. Co-Authored-By: OpenAI Codex <noreply@openai.com>
1 parent 77c0712 commit ef70a24

2 files changed

Lines changed: 7 additions & 8 deletions

File tree

‎sentry-android-core/src/main/java/io/sentry/android/core/ManifestMetadataReader.java‎

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,8 @@
2626
/** Class responsible for reading values from manifest and setting them to the options */
2727
final class ManifestMetadataReader {
2828

29-
// Populated by the Sentry Android Gradle plugin with manifest metadata resolved at build time.
30-
// When set, it is authoritative: the manifest is not read at runtime.
31-
static @Nullable Map<String, Object> buildTimeMetadata;
29+
// Populated by the Sentry Android Gradle plugin from the merged manifest at build time.
30+
static @Nullable Map<String, Object> manifestMetadata;
3231

3332
static final String DSN = "io.sentry.dsn";
3433
static final String DEBUG = "io.sentry.debug";
@@ -930,7 +929,7 @@ static boolean isAutoInit(final @NotNull Context context, final @NotNull ILogger
930929
final @NotNull Context context,
931930
final @NotNull ILogger logger,
932931
final @Nullable BuildInfoProvider buildInfoProvider) {
933-
final @Nullable Map<String, Object> injected = buildTimeMetadata;
932+
final @Nullable Map<String, Object> injected = manifestMetadata;
934933
if (injected != null) {
935934
return injected;
936935
}

‎sentry-android-core/src/test/java/io/sentry/android/core/ManifestMetadataReaderTest.kt‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -47,13 +47,13 @@ class ManifestMetadataReaderTest {
4747

4848
@AfterTest
4949
fun `tear down`() {
50-
ManifestMetadataReader.buildTimeMetadata = null
50+
ManifestMetadataReader.manifestMetadata = null
5151
}
5252

5353
@Test
5454
fun `applyMetadata reads typed build-time metadata without querying context`() {
5555
val context = mock<Context>()
56-
ManifestMetadataReader.buildTimeMetadata =
56+
ManifestMetadataReader.manifestMetadata =
5757
mapOf(
5858
ManifestMetadataReader.DEBUG to true,
5959
ManifestMetadataReader.DIST to "dist",
@@ -74,7 +74,7 @@ class ManifestMetadataReaderTest {
7474
fun `build-time metadata is authoritative when a key is absent`() {
7575
val context = mock<Context>()
7676
fixture.options.dist = "configured"
77-
ManifestMetadataReader.buildTimeMetadata = emptyMap()
77+
ManifestMetadataReader.manifestMetadata = emptyMap()
7878

7979
ManifestMetadataReader.applyMetadata(context, fixture.options, fixture.buildInfoProvider)
8080

@@ -85,7 +85,7 @@ class ManifestMetadataReaderTest {
8585
@Test
8686
fun `isAutoInit reads build-time metadata without querying context`() {
8787
val context = mock<Context>()
88-
ManifestMetadataReader.buildTimeMetadata = mapOf(ManifestMetadataReader.AUTO_INIT to false)
88+
ManifestMetadataReader.manifestMetadata = mapOf(ManifestMetadataReader.AUTO_INIT to false)
8989

9090
assertThat(ManifestMetadataReader.isAutoInit(context, fixture.logger)).isFalse()
9191
verifyNoInteractions(context)

0 commit comments

Comments
 (0)