Make SentrySdkDsn a value class instead of a qualifier
This commit is contained in:
parent
890b6111ea
commit
942eae94ad
5 changed files with 6 additions and 25 deletions
|
|
@ -50,6 +50,5 @@ interface AppBindings {
|
|||
|
||||
fun buildMeta(): BuildMeta
|
||||
|
||||
@SentrySdkDsn
|
||||
fun sentrySdkDsn(): String?
|
||||
fun sentrySdkDsn(): SentrySdkDsn?
|
||||
}
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ class PlatformInitializer : Initializer<Unit> {
|
|||
logLevel = logLevel,
|
||||
extraTargets = listOf(ELEMENT_X_TARGET),
|
||||
traceLogPacks = runBlocking { preferencesStore.getTracingLogPacksFlow().first() },
|
||||
sdkSentryDsn = appBindings.sentrySdkDsn()?.takeIf { it.isNotBlank() },
|
||||
sdkSentryDsn = appBindings.sentrySdkDsn()?.value?.takeIf { it.isNotBlank() },
|
||||
)
|
||||
bugReporter.setCurrentTracingLogLevel(logLevel.name)
|
||||
platformService.init(tracingConfiguration)
|
||||
|
|
|
|||
|
|
@ -7,21 +7,5 @@
|
|||
|
||||
package io.element.android.libraries.di.annotations
|
||||
|
||||
import dev.zacsweers.metro.Qualifier
|
||||
|
||||
/**
|
||||
* Qualifies the Sentry SDK DSN in the DI graph.
|
||||
*/
|
||||
@Retention(AnnotationRetention.RUNTIME)
|
||||
@MustBeDocumented
|
||||
@Qualifier
|
||||
@Target(
|
||||
AnnotationTarget.CLASS,
|
||||
AnnotationTarget.FIELD,
|
||||
AnnotationTarget.FUNCTION,
|
||||
AnnotationTarget.PROPERTY,
|
||||
AnnotationTarget.PROPERTY_GETTER,
|
||||
AnnotationTarget.VALUE_PARAMETER,
|
||||
AnnotationTarget.TYPE,
|
||||
)
|
||||
annotation class SentrySdkDsn
|
||||
@JvmInline
|
||||
value class SentrySdkDsn(val value: String)
|
||||
|
|
|
|||
|
|
@ -16,7 +16,6 @@ import io.element.android.libraries.di.annotations.SentrySdkDsn
|
|||
@BindingContainer
|
||||
@ContributesTo(AppScope::class)
|
||||
object NoopAnalyticsModule {
|
||||
@SentrySdkDsn
|
||||
@Provides
|
||||
fun provideSentrySdkDsn(): String? = null
|
||||
fun provideSentrySdkDsn(): SentrySdkDsn? = null
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,6 +18,5 @@ import io.element.android.services.analyticsproviders.sentry.SentryConfig
|
|||
@ContributesTo(AppScope::class)
|
||||
object SentryModule {
|
||||
@Provides
|
||||
@SentrySdkDsn
|
||||
fun provideSentrySdkDsn(): String? = SentryConfig.SDK_DSN
|
||||
fun provideSentrySdkDsn(): SentrySdkDsn? = SentrySdkDsn(SentryConfig.SDK_DSN)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue