Rename all @BindingContainer types with a BindingContainer suffix

Metro's @BindingContainer replaced Dagger's @Module, but the declarations
kept the old Module suffix. Rename them (and their dedicated files) so the
type name matches the annotation, matching UserStatusBindingContainer which
already followed this convention.

No behaviour change: Metro discovers containers via @ContributesTo, so there
were only two call sites to update, both in tests.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
Benoit Marty
2026-08-24 10:08:54 +02:00
parent 16954bb66e
commit 1018d26211
47 changed files with 52 additions and 52 deletions
@@ -22,7 +22,7 @@ import timber.log.Timber
@BindingContainer
@ContributesTo(AppScope::class)
object CacheStoreModule {
object CacheStoreBindingContainer {
@Provides
@SingleIn(AppScope::class)
fun provideCacheDatabase(
@@ -18,7 +18,7 @@ internal const val ANDROID_KEYSTORE = "AndroidKeyStore"
@ContributesTo(AppScope::class)
@BindingContainer
object CryptographyModule {
object CryptographyBindingContainer {
@Provides
fun providesAndroidKeyStore(): KeyStore {
return KeyStore.getInstance(ANDROID_KEYSTORE).apply {
@@ -19,7 +19,7 @@ import kotlin.time.Clock
@BindingContainer
@ContributesTo(AppScope::class)
object DateFormatterModule {
object DateFormatterBindingContainer {
@Provides
fun providesClock(): Clock = Clock.System
@@ -18,7 +18,7 @@ import io.element.android.libraries.featureflag.impl.PreferencesFeatureFlagProvi
@BindingContainer
@ContributesTo(AppScope::class)
object FeatureFlagModule {
object FeatureFlagBindingContainer {
@JvmStatic
@Provides
@ElementsIntoSet
@@ -18,7 +18,7 @@ import io.element.android.libraries.fullscreenintent.impl.FullScreenIntentPermis
@ContributesTo(AppScope::class)
@BindingContainer
interface FullScreenIntentModule {
interface FullScreenIntentBindingContainer {
@Binds
fun bindFullScreenIntentPermissionsPresenter(presenter: FullScreenIntentPermissionsPresenter): Presenter<FullScreenIntentPermissionsState>
}
@@ -18,7 +18,7 @@ import kotlinx.coroutines.CoroutineScope
@BindingContainer
@ContributesTo(RoomScope::class)
object RoomModule {
object RoomBindingContainer {
@RoomCoroutineScope
@Provides
fun providesSessionCoroutineScope(room: BaseRoom): CoroutineScope {
@@ -34,7 +34,7 @@ import kotlinx.coroutines.CoroutineScope
@BindingContainer
@ContributesTo(SessionScope::class)
object SessionMatrixModule {
object SessionMatrixBindingContainer {
@Provides
fun providesSessionId(matrixClient: MatrixClient): SessionId {
return matrixClient.sessionId
@@ -46,7 +46,7 @@ interface SimplePlayer {
@ContributesTo(RoomScope::class)
@BindingContainer
object SimplePlayerModule {
object SimplePlayerBindingContainer {
@Provides
fun simplePlayerProvider(
@ApplicationContext context: Context,
@@ -27,7 +27,7 @@ import kotlin.reflect.KClass
*/
@BindingContainer
@ContributesTo(RoomScope::class)
interface MediaItemPresenterFactoriesModule {
interface MediaItemPresenterFactoriesBindingContainer {
@Multibinds
fun multiBindMediaItemPresenterFactories(): @JvmSuppressWildcards Map<KClass<out MediaItem.Event>, MediaItemPresenterFactory<*, *>>
}
@@ -27,7 +27,7 @@ import kotlin.time.Duration
@BindingContainer
@ContributesTo(RoomScope::class)
interface VoiceMessagePresenterModule {
interface VoiceMessagePresenterBindingContainer {
@Binds
@IntoMap
@MediaItemEventContentKey(MediaItem.Voice::class)
@@ -23,7 +23,7 @@ import java.util.concurrent.TimeUnit
@BindingContainer
@ContributesTo(AppScope::class)
object NetworkModule {
object NetworkBindingContainer {
@Provides
@SingleIn(AppScope::class)
fun providesOkHttpClient(
@@ -19,7 +19,7 @@ import kotlinx.coroutines.CoroutineScope
@BindingContainer
@ContributesTo(SessionScope::class)
object SessionPreferencesModule {
object SessionPreferencesBindingContainer {
@Provides
fun providesSessionPreferencesStore(
defaultSessionPreferencesStoreFactory: DefaultSessionPreferencesStoreFactory,
@@ -22,7 +22,7 @@ import io.element.android.libraries.push.impl.battery.BatteryOptimizationPresent
@BindingContainer
@ContributesTo(AppScope::class)
interface PushModule {
interface PushBindingContainer {
companion object {
@Provides
fun provideNotificationCompatManager(@ApplicationContext context: Context): NotificationManagerCompat {
@@ -23,7 +23,7 @@ import timber.log.Timber
@BindingContainer
@ContributesTo(AppScope::class)
object PushHistoryModule {
object PushHistoryBindingContainer {
@Provides
@SingleIn(AppScope::class)
fun providePushDatabase(
@@ -23,7 +23,7 @@ import timber.log.Timber
@BindingContainer
@ContributesTo(AppScope::class)
object SessionStorageModule {
object SessionStorageBindingContainer {
@Provides
@SingleIn(AppScope::class)
fun provideMatrixDatabase(
@@ -22,7 +22,7 @@ import io.element.android.opusencoder.OggOpusEncoder
@BindingContainer
@ContributesTo(RoomScope::class)
object VoiceRecorderModule {
object VoiceRecorderBindingContainer {
@Provides
fun provideAudioConfig(): AudioConfig {
val sampleRate = SampleRate
@@ -18,7 +18,7 @@ import io.element.android.libraries.voicerecorder.api.VoiceRecorderState
import io.element.android.libraries.voicerecorder.impl.audio.Audio
import io.element.android.libraries.voicerecorder.impl.audio.AudioConfig
import io.element.android.libraries.voicerecorder.impl.audio.SampleRate
import io.element.android.libraries.voicerecorder.impl.di.VoiceRecorderModule
import io.element.android.libraries.voicerecorder.impl.di.VoiceRecorderBindingContainer
import io.element.android.libraries.voicerecorder.test.FakeAudioLevelCalculator
import io.element.android.libraries.voicerecorder.test.FakeAudioReaderFactory
import io.element.android.libraries.voicerecorder.test.FakeEncoder
@@ -151,7 +151,7 @@ class DefaultVoiceRecorderTest {
}
private fun TestScope.createDefaultVoiceRecorder(): DefaultVoiceRecorder {
val fileConfig = VoiceRecorderModule.provideVoiceFileConfig()
val fileConfig = VoiceRecorderBindingContainer.provideVoiceFileConfig()
return DefaultVoiceRecorder(
dispatchers = testCoroutineDispatchers(),
timeSource = timeSource,
@@ -18,7 +18,7 @@ import io.element.android.libraries.di.annotations.ApplicationContext
@BindingContainer
@ContributesTo(AppScope::class)
object WorkManagerModule {
object WorkManagerBindingContainer {
@Provides
@SingleIn(AppScope::class)
fun providesWorkManager(