Metro 0.10.0: Classes annotated with ContributesIntoSet do not need to be annotated with Inject.
This commit is contained in:
@@ -10,14 +10,12 @@ package io.element.android.features.migration.impl.migrations
|
|||||||
|
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.features.rageshake.api.logs.LogFilesRemover
|
import io.element.android.features.rageshake.api.logs.LogFilesRemover
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Remove existing logs from the device to remove any leaks of sensitive data.
|
* Remove existing logs from the device to remove any leaks of sensitive data.
|
||||||
*/
|
*/
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class AppMigration01(
|
class AppMigration01(
|
||||||
private val logFilesRemover: LogFilesRemover,
|
private val logFilesRemover: LogFilesRemover,
|
||||||
) : AppMigration {
|
) : AppMigration {
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ package io.element.android.features.migration.impl.migrations
|
|||||||
|
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.matrix.api.core.SessionId
|
import io.element.android.libraries.matrix.api.core.SessionId
|
||||||
import io.element.android.libraries.preferences.api.store.SessionPreferencesStoreFactory
|
import io.element.android.libraries.preferences.api.store.SessionPreferencesStoreFactory
|
||||||
import io.element.android.libraries.sessionstorage.api.SessionStore
|
import io.element.android.libraries.sessionstorage.api.SessionStore
|
||||||
@@ -21,7 +20,6 @@ import kotlinx.coroutines.coroutineScope
|
|||||||
* This way we don't force existing users to verify their session again.
|
* This way we don't force existing users to verify their session again.
|
||||||
*/
|
*/
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class AppMigration02(
|
class AppMigration02(
|
||||||
private val sessionStore: SessionStore,
|
private val sessionStore: SessionStore,
|
||||||
private val sessionPreferenceStoreFactory: SessionPreferencesStoreFactory,
|
private val sessionPreferenceStoreFactory: SessionPreferencesStoreFactory,
|
||||||
|
|||||||
@@ -10,13 +10,11 @@ package io.element.android.features.migration.impl.migrations
|
|||||||
|
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This performs the same operation as [AppMigration01], since we need to clear the local logs again.
|
* This performs the same operation as [AppMigration01], since we need to clear the local logs again.
|
||||||
*/
|
*/
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class AppMigration03(
|
class AppMigration03(
|
||||||
private val migration01: AppMigration01,
|
private val migration01: AppMigration01,
|
||||||
) : AppMigration {
|
) : AppMigration {
|
||||||
|
|||||||
@@ -11,7 +11,6 @@ package io.element.android.features.migration.impl.migrations
|
|||||||
import android.content.Context
|
import android.content.Context
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.core.extensions.runCatchingExceptions
|
import io.element.android.libraries.core.extensions.runCatchingExceptions
|
||||||
import io.element.android.libraries.di.annotations.ApplicationContext
|
import io.element.android.libraries.di.annotations.ApplicationContext
|
||||||
|
|
||||||
@@ -19,13 +18,13 @@ import io.element.android.libraries.di.annotations.ApplicationContext
|
|||||||
* Remove notifications.bin file, used to store notification data locally.
|
* Remove notifications.bin file, used to store notification data locally.
|
||||||
*/
|
*/
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class AppMigration04(
|
class AppMigration04(
|
||||||
@ApplicationContext private val context: Context,
|
@ApplicationContext private val context: Context,
|
||||||
) : AppMigration {
|
) : AppMigration {
|
||||||
companion object {
|
companion object {
|
||||||
internal const val NOTIFICATION_FILE_NAME = "notifications.bin"
|
internal const val NOTIFICATION_FILE_NAME = "notifications.bin"
|
||||||
}
|
}
|
||||||
|
|
||||||
override val order: Int = 4
|
override val order: Int = 4
|
||||||
|
|
||||||
override suspend fun migrate(isFreshInstall: Boolean) {
|
override suspend fun migrate(isFreshInstall: Boolean) {
|
||||||
|
|||||||
@@ -10,13 +10,11 @@ package io.element.android.features.migration.impl.migrations
|
|||||||
|
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.di.BaseDirectory
|
import io.element.android.libraries.di.BaseDirectory
|
||||||
import io.element.android.libraries.sessionstorage.api.SessionStore
|
import io.element.android.libraries.sessionstorage.api.SessionStore
|
||||||
import java.io.File
|
import java.io.File
|
||||||
|
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class AppMigration05(
|
class AppMigration05(
|
||||||
private val sessionStore: SessionStore,
|
private val sessionStore: SessionStore,
|
||||||
@BaseDirectory private val baseDirectory: File,
|
@BaseDirectory private val baseDirectory: File,
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ package io.element.android.features.migration.impl.migrations
|
|||||||
|
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.di.CacheDirectory
|
import io.element.android.libraries.di.CacheDirectory
|
||||||
import io.element.android.libraries.sessionstorage.api.SessionStore
|
import io.element.android.libraries.sessionstorage.api.SessionStore
|
||||||
import java.io.File
|
import java.io.File
|
||||||
@@ -19,7 +18,6 @@ import java.io.File
|
|||||||
* Create the cache directory for the existing sessions.
|
* Create the cache directory for the existing sessions.
|
||||||
*/
|
*/
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class AppMigration06(
|
class AppMigration06(
|
||||||
private val sessionStore: SessionStore,
|
private val sessionStore: SessionStore,
|
||||||
@CacheDirectory private val cacheDirectory: File,
|
@CacheDirectory private val cacheDirectory: File,
|
||||||
|
|||||||
@@ -10,14 +10,12 @@ package io.element.android.features.migration.impl.migrations
|
|||||||
|
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.features.rageshake.api.logs.LogFilesRemover
|
import io.element.android.features.rageshake.api.logs.LogFilesRemover
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Delete the previous log files.
|
* Delete the previous log files.
|
||||||
*/
|
*/
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class AppMigration07(
|
class AppMigration07(
|
||||||
private val logFilesRemover: LogFilesRemover,
|
private val logFilesRemover: LogFilesRemover,
|
||||||
) : AppMigration {
|
) : AppMigration {
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ package io.element.android.features.migration.impl.migrations
|
|||||||
|
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.features.announcement.api.Announcement
|
import io.element.android.features.announcement.api.Announcement
|
||||||
import io.element.android.features.announcement.api.AnnouncementService
|
import io.element.android.features.announcement.api.AnnouncementService
|
||||||
|
|
||||||
@@ -18,7 +17,6 @@ import io.element.android.features.announcement.api.AnnouncementService
|
|||||||
* Ensure the new notification sound banner is displayed, but only on application upgrade.
|
* Ensure the new notification sound banner is displayed, but only on application upgrade.
|
||||||
*/
|
*/
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class AppMigration08(
|
class AppMigration08(
|
||||||
private val announcementService: AnnouncementService,
|
private val announcementService: AnnouncementService,
|
||||||
) : AppMigration {
|
) : AppMigration {
|
||||||
|
|||||||
@@ -9,7 +9,6 @@ package io.element.android.features.migration.impl.migrations
|
|||||||
|
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.matrix.api.MatrixClientProvider
|
import io.element.android.libraries.matrix.api.MatrixClientProvider
|
||||||
import io.element.android.libraries.matrix.api.core.SessionId
|
import io.element.android.libraries.matrix.api.core.SessionId
|
||||||
import io.element.android.libraries.sessionstorage.api.SessionStore
|
import io.element.android.libraries.sessionstorage.api.SessionStore
|
||||||
@@ -18,7 +17,6 @@ import io.element.android.libraries.sessionstorage.api.SessionStore
|
|||||||
* Ensure we clear the well-known cached config, since it could be invalid due to an SDK issue.
|
* Ensure we clear the well-known cached config, since it could be invalid due to an SDK issue.
|
||||||
*/
|
*/
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class AppMigration09(
|
class AppMigration09(
|
||||||
private val sessionStore: SessionStore,
|
private val sessionStore: SessionStore,
|
||||||
private val matrixClientProvider: MatrixClientProvider,
|
private val matrixClientProvider: MatrixClientProvider,
|
||||||
|
|||||||
@@ -12,7 +12,6 @@ import android.Manifest
|
|||||||
import android.os.Build
|
import android.os.Build
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.permissions.api.PermissionStateProvider
|
import io.element.android.libraries.permissions.api.PermissionStateProvider
|
||||||
import io.element.android.libraries.permissions.impl.R
|
import io.element.android.libraries.permissions.impl.R
|
||||||
import io.element.android.libraries.permissions.impl.action.PermissionActions
|
import io.element.android.libraries.permissions.impl.action.PermissionActions
|
||||||
@@ -26,7 +25,6 @@ import kotlinx.coroutines.CoroutineScope
|
|||||||
import kotlinx.coroutines.flow.StateFlow
|
import kotlinx.coroutines.flow.StateFlow
|
||||||
|
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class NotificationTroubleshootCheckPermissionTest(
|
class NotificationTroubleshootCheckPermissionTest(
|
||||||
private val permissionStateProvider: PermissionStateProvider,
|
private val permissionStateProvider: PermissionStateProvider,
|
||||||
private val sdkVersionProvider: BuildVersionSdkIntProvider,
|
private val sdkVersionProvider: BuildVersionSdkIntProvider,
|
||||||
|
|||||||
@@ -9,7 +9,6 @@
|
|||||||
package io.element.android.libraries.push.impl.troubleshoot
|
package io.element.android.libraries.push.impl.troubleshoot
|
||||||
|
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.di.SessionScope
|
import io.element.android.libraries.di.SessionScope
|
||||||
import io.element.android.libraries.matrix.api.core.SessionId
|
import io.element.android.libraries.matrix.api.core.SessionId
|
||||||
import io.element.android.libraries.push.api.PushService
|
import io.element.android.libraries.push.api.PushService
|
||||||
@@ -22,7 +21,6 @@ import kotlinx.coroutines.CoroutineScope
|
|||||||
import kotlinx.coroutines.flow.StateFlow
|
import kotlinx.coroutines.flow.StateFlow
|
||||||
|
|
||||||
@ContributesIntoSet(SessionScope::class)
|
@ContributesIntoSet(SessionScope::class)
|
||||||
@Inject
|
|
||||||
class CurrentPushProviderTest(
|
class CurrentPushProviderTest(
|
||||||
private val pushService: PushService,
|
private val pushService: PushService,
|
||||||
private val sessionId: SessionId,
|
private val sessionId: SessionId,
|
||||||
|
|||||||
@@ -9,7 +9,6 @@
|
|||||||
package io.element.android.libraries.push.impl.troubleshoot
|
package io.element.android.libraries.push.impl.troubleshoot
|
||||||
|
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.di.SessionScope
|
import io.element.android.libraries.di.SessionScope
|
||||||
import io.element.android.libraries.matrix.api.MatrixClient
|
import io.element.android.libraries.matrix.api.MatrixClient
|
||||||
import io.element.android.libraries.push.impl.R
|
import io.element.android.libraries.push.impl.R
|
||||||
@@ -22,7 +21,6 @@ import kotlinx.coroutines.CoroutineScope
|
|||||||
import kotlinx.coroutines.flow.StateFlow
|
import kotlinx.coroutines.flow.StateFlow
|
||||||
|
|
||||||
@ContributesIntoSet(SessionScope::class)
|
@ContributesIntoSet(SessionScope::class)
|
||||||
@Inject
|
|
||||||
class IgnoredUsersTest(
|
class IgnoredUsersTest(
|
||||||
private val matrixClient: MatrixClient,
|
private val matrixClient: MatrixClient,
|
||||||
private val stringProvider: StringProvider,
|
private val stringProvider: StringProvider,
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ package io.element.android.libraries.push.impl.troubleshoot
|
|||||||
|
|
||||||
import androidx.compose.ui.graphics.toArgb
|
import androidx.compose.ui.graphics.toArgb
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.appconfig.NotificationConfig
|
import io.element.android.appconfig.NotificationConfig
|
||||||
import io.element.android.features.enterprise.api.EnterpriseService
|
import io.element.android.features.enterprise.api.EnterpriseService
|
||||||
import io.element.android.libraries.di.SessionScope
|
import io.element.android.libraries.di.SessionScope
|
||||||
@@ -31,7 +30,6 @@ import timber.log.Timber
|
|||||||
import kotlin.time.Duration.Companion.seconds
|
import kotlin.time.Duration.Companion.seconds
|
||||||
|
|
||||||
@ContributesIntoSet(SessionScope::class)
|
@ContributesIntoSet(SessionScope::class)
|
||||||
@Inject
|
|
||||||
class NotificationTest(
|
class NotificationTest(
|
||||||
private val sessionId: SessionId,
|
private val sessionId: SessionId,
|
||||||
private val notificationCreator: NotificationCreator,
|
private val notificationCreator: NotificationCreator,
|
||||||
|
|||||||
@@ -9,7 +9,6 @@
|
|||||||
package io.element.android.libraries.push.impl.troubleshoot
|
package io.element.android.libraries.push.impl.troubleshoot
|
||||||
|
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.di.SessionScope
|
import io.element.android.libraries.di.SessionScope
|
||||||
import io.element.android.libraries.matrix.api.core.SessionId
|
import io.element.android.libraries.matrix.api.core.SessionId
|
||||||
import io.element.android.libraries.push.api.PushService
|
import io.element.android.libraries.push.api.PushService
|
||||||
@@ -31,7 +30,6 @@ import timber.log.Timber
|
|||||||
import kotlin.time.Duration.Companion.seconds
|
import kotlin.time.Duration.Companion.seconds
|
||||||
|
|
||||||
@ContributesIntoSet(SessionScope::class)
|
@ContributesIntoSet(SessionScope::class)
|
||||||
@Inject
|
|
||||||
class PushLoopbackTest(
|
class PushLoopbackTest(
|
||||||
private val sessionId: SessionId,
|
private val sessionId: SessionId,
|
||||||
private val pushService: PushService,
|
private val pushService: PushService,
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ package io.element.android.libraries.push.impl.troubleshoot
|
|||||||
|
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.push.impl.R
|
import io.element.android.libraries.push.impl.R
|
||||||
import io.element.android.libraries.pushproviders.api.PushProvider
|
import io.element.android.libraries.pushproviders.api.PushProvider
|
||||||
import io.element.android.libraries.troubleshoot.api.test.NotificationTroubleshootTest
|
import io.element.android.libraries.troubleshoot.api.test.NotificationTroubleshootTest
|
||||||
@@ -21,7 +20,6 @@ import kotlinx.coroutines.CoroutineScope
|
|||||||
import kotlinx.coroutines.flow.StateFlow
|
import kotlinx.coroutines.flow.StateFlow
|
||||||
|
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class PushProvidersTest(
|
class PushProvidersTest(
|
||||||
pushProviders: Set<@JvmSuppressWildcards PushProvider>,
|
pushProviders: Set<@JvmSuppressWildcards PushProvider>,
|
||||||
private val stringProvider: StringProvider,
|
private val stringProvider: StringProvider,
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ package io.element.android.libraries.pushproviders.firebase
|
|||||||
|
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.core.log.logger.LoggerTag
|
import io.element.android.libraries.core.log.logger.LoggerTag
|
||||||
import io.element.android.libraries.matrix.api.MatrixClient
|
import io.element.android.libraries.matrix.api.MatrixClient
|
||||||
import io.element.android.libraries.matrix.api.core.SessionId
|
import io.element.android.libraries.matrix.api.core.SessionId
|
||||||
@@ -23,7 +22,6 @@ import timber.log.Timber
|
|||||||
private val loggerTag = LoggerTag("FirebasePushProvider", LoggerTag.PushLoggerTag)
|
private val loggerTag = LoggerTag("FirebasePushProvider", LoggerTag.PushLoggerTag)
|
||||||
|
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class FirebasePushProvider(
|
class FirebasePushProvider(
|
||||||
private val firebaseStore: FirebaseStore,
|
private val firebaseStore: FirebaseStore,
|
||||||
private val pusherSubscriber: PusherSubscriber,
|
private val pusherSubscriber: PusherSubscriber,
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ package io.element.android.libraries.pushproviders.firebase.troubleshoot
|
|||||||
|
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.pushproviders.firebase.FirebaseConfig
|
import io.element.android.libraries.pushproviders.firebase.FirebaseConfig
|
||||||
import io.element.android.libraries.pushproviders.firebase.IsPlayServiceAvailable
|
import io.element.android.libraries.pushproviders.firebase.IsPlayServiceAvailable
|
||||||
import io.element.android.libraries.pushproviders.firebase.R
|
import io.element.android.libraries.pushproviders.firebase.R
|
||||||
@@ -23,7 +22,6 @@ import kotlinx.coroutines.CoroutineScope
|
|||||||
import kotlinx.coroutines.flow.StateFlow
|
import kotlinx.coroutines.flow.StateFlow
|
||||||
|
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class FirebaseAvailabilityTest(
|
class FirebaseAvailabilityTest(
|
||||||
private val isPlayServiceAvailable: IsPlayServiceAvailable,
|
private val isPlayServiceAvailable: IsPlayServiceAvailable,
|
||||||
private val stringProvider: StringProvider,
|
private val stringProvider: StringProvider,
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ package io.element.android.libraries.pushproviders.firebase.troubleshoot
|
|||||||
|
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.pushproviders.firebase.FirebaseConfig
|
import io.element.android.libraries.pushproviders.firebase.FirebaseConfig
|
||||||
import io.element.android.libraries.pushproviders.firebase.FirebaseStore
|
import io.element.android.libraries.pushproviders.firebase.FirebaseStore
|
||||||
import io.element.android.libraries.pushproviders.firebase.FirebaseTroubleshooter
|
import io.element.android.libraries.pushproviders.firebase.FirebaseTroubleshooter
|
||||||
@@ -28,7 +27,6 @@ import kotlinx.coroutines.flow.launchIn
|
|||||||
import kotlinx.coroutines.flow.onEach
|
import kotlinx.coroutines.flow.onEach
|
||||||
|
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class FirebaseTokenTest(
|
class FirebaseTokenTest(
|
||||||
private val firebaseStore: FirebaseStore,
|
private val firebaseStore: FirebaseStore,
|
||||||
private val firebaseTroubleshooter: FirebaseTroubleshooter,
|
private val firebaseTroubleshooter: FirebaseTroubleshooter,
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ package io.element.android.libraries.pushproviders.unifiedpush
|
|||||||
|
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.matrix.api.MatrixClient
|
import io.element.android.libraries.matrix.api.MatrixClient
|
||||||
import io.element.android.libraries.matrix.api.core.SessionId
|
import io.element.android.libraries.matrix.api.core.SessionId
|
||||||
import io.element.android.libraries.pushproviders.api.Config
|
import io.element.android.libraries.pushproviders.api.Config
|
||||||
@@ -19,7 +18,6 @@ import io.element.android.libraries.pushproviders.api.PushProvider
|
|||||||
import io.element.android.libraries.pushstore.api.clientsecret.PushClientSecret
|
import io.element.android.libraries.pushstore.api.clientsecret.PushClientSecret
|
||||||
|
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class UnifiedPushProvider(
|
class UnifiedPushProvider(
|
||||||
private val unifiedPushDistributorProvider: UnifiedPushDistributorProvider,
|
private val unifiedPushDistributorProvider: UnifiedPushDistributorProvider,
|
||||||
private val registerUnifiedPushUseCase: RegisterUnifiedPushUseCase,
|
private val registerUnifiedPushUseCase: RegisterUnifiedPushUseCase,
|
||||||
|
|||||||
@@ -9,7 +9,6 @@
|
|||||||
package io.element.android.libraries.pushproviders.unifiedpush.troubleshoot
|
package io.element.android.libraries.pushproviders.unifiedpush.troubleshoot
|
||||||
|
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
import io.element.android.libraries.core.coroutine.CoroutineDispatchers
|
||||||
import io.element.android.libraries.di.SessionScope
|
import io.element.android.libraries.di.SessionScope
|
||||||
import io.element.android.libraries.matrix.api.core.SessionId
|
import io.element.android.libraries.matrix.api.core.SessionId
|
||||||
@@ -25,7 +24,6 @@ import kotlinx.coroutines.flow.StateFlow
|
|||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
|
|
||||||
@ContributesIntoSet(SessionScope::class)
|
@ContributesIntoSet(SessionScope::class)
|
||||||
@Inject
|
|
||||||
class UnifiedPushMatrixGatewayTest(
|
class UnifiedPushMatrixGatewayTest(
|
||||||
private val sessionId: SessionId,
|
private val sessionId: SessionId,
|
||||||
private val unifiedPushApiFactory: UnifiedPushApiFactory,
|
private val unifiedPushApiFactory: UnifiedPushApiFactory,
|
||||||
|
|||||||
@@ -10,7 +10,6 @@ package io.element.android.libraries.pushproviders.unifiedpush.troubleshoot
|
|||||||
|
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import io.element.android.libraries.pushproviders.unifiedpush.R
|
import io.element.android.libraries.pushproviders.unifiedpush.R
|
||||||
import io.element.android.libraries.pushproviders.unifiedpush.UnifiedPushConfig
|
import io.element.android.libraries.pushproviders.unifiedpush.UnifiedPushConfig
|
||||||
import io.element.android.libraries.pushproviders.unifiedpush.UnifiedPushDistributorProvider
|
import io.element.android.libraries.pushproviders.unifiedpush.UnifiedPushDistributorProvider
|
||||||
@@ -24,7 +23,6 @@ import kotlinx.coroutines.CoroutineScope
|
|||||||
import kotlinx.coroutines.flow.StateFlow
|
import kotlinx.coroutines.flow.StateFlow
|
||||||
|
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class UnifiedPushTest(
|
class UnifiedPushTest(
|
||||||
private val unifiedPushDistributorProvider: UnifiedPushDistributorProvider,
|
private val unifiedPushDistributorProvider: UnifiedPushDistributorProvider,
|
||||||
private val openDistributorWebPageAction: OpenDistributorWebPageAction,
|
private val openDistributorWebPageAction: OpenDistributorWebPageAction,
|
||||||
|
|||||||
@@ -11,7 +11,6 @@ package io.element.android.services.analyticsproviders.posthog
|
|||||||
import com.posthog.PostHogInterface
|
import com.posthog.PostHogInterface
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import im.vector.app.features.analytics.itf.VectorAnalyticsEvent
|
import im.vector.app.features.analytics.itf.VectorAnalyticsEvent
|
||||||
import im.vector.app.features.analytics.itf.VectorAnalyticsScreen
|
import im.vector.app.features.analytics.itf.VectorAnalyticsScreen
|
||||||
import im.vector.app.features.analytics.plan.SuperProperties
|
import im.vector.app.features.analytics.plan.SuperProperties
|
||||||
@@ -25,7 +24,6 @@ import timber.log.Timber
|
|||||||
// private val IGNORED_OPTIONS: Options? = null
|
// private val IGNORED_OPTIONS: Options? = null
|
||||||
|
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class PosthogAnalyticsProvider(
|
class PosthogAnalyticsProvider(
|
||||||
private val postHogFactory: PostHogFactory,
|
private val postHogFactory: PostHogFactory,
|
||||||
) : AnalyticsProvider {
|
) : AnalyticsProvider {
|
||||||
|
|||||||
@@ -12,7 +12,6 @@ import android.content.Context
|
|||||||
import androidx.annotation.VisibleForTesting
|
import androidx.annotation.VisibleForTesting
|
||||||
import dev.zacsweers.metro.AppScope
|
import dev.zacsweers.metro.AppScope
|
||||||
import dev.zacsweers.metro.ContributesIntoSet
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
|
||||||
import im.vector.app.features.analytics.itf.VectorAnalyticsEvent
|
import im.vector.app.features.analytics.itf.VectorAnalyticsEvent
|
||||||
import im.vector.app.features.analytics.itf.VectorAnalyticsScreen
|
import im.vector.app.features.analytics.itf.VectorAnalyticsScreen
|
||||||
import im.vector.app.features.analytics.plan.SuperProperties
|
import im.vector.app.features.analytics.plan.SuperProperties
|
||||||
@@ -38,7 +37,6 @@ import kotlinx.coroutines.runBlocking
|
|||||||
import timber.log.Timber
|
import timber.log.Timber
|
||||||
|
|
||||||
@ContributesIntoSet(AppScope::class)
|
@ContributesIntoSet(AppScope::class)
|
||||||
@Inject
|
|
||||||
class SentryAnalyticsProvider(
|
class SentryAnalyticsProvider(
|
||||||
@ApplicationContext private val context: Context,
|
@ApplicationContext private val context: Context,
|
||||||
private val sentryDsn: SentryDsn?,
|
private val sentryDsn: SentryDsn?,
|
||||||
|
|||||||
@@ -15,6 +15,8 @@ import com.lemonappdev.konsist.api.verify.assertFalse
|
|||||||
import com.lemonappdev.konsist.api.verify.assertTrue
|
import com.lemonappdev.konsist.api.verify.assertTrue
|
||||||
import dev.zacsweers.metro.Assisted
|
import dev.zacsweers.metro.Assisted
|
||||||
import dev.zacsweers.metro.ContributesBinding
|
import dev.zacsweers.metro.ContributesBinding
|
||||||
|
import dev.zacsweers.metro.ContributesIntoMap
|
||||||
|
import dev.zacsweers.metro.ContributesIntoSet
|
||||||
import dev.zacsweers.metro.Inject
|
import dev.zacsweers.metro.Inject
|
||||||
import org.junit.Test
|
import org.junit.Test
|
||||||
|
|
||||||
@@ -46,4 +48,26 @@ class KonsistDiTest {
|
|||||||
classDeclaration.hasAnnotationOf(Inject::class)
|
classDeclaration.hasAnnotationOf(Inject::class)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun `class annotated with @ContributesIntoSet does not need to be annotated with @Inject anymore`() {
|
||||||
|
Konsist
|
||||||
|
.scopeFromProject()
|
||||||
|
.classes()
|
||||||
|
.withAnnotationOf(ContributesIntoSet::class)
|
||||||
|
.assertFalse { classDeclaration ->
|
||||||
|
classDeclaration.hasAnnotationOf(Inject::class)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun `class annotated with @ContributesIntoMap does not need to be annotated with @Inject anymore`() {
|
||||||
|
Konsist
|
||||||
|
.scopeFromProject()
|
||||||
|
.classes()
|
||||||
|
.withAnnotationOf(ContributesIntoMap::class)
|
||||||
|
.assertFalse { classDeclaration ->
|
||||||
|
classDeclaration.hasAnnotationOf(Inject::class)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user