From a8ae9091374c65a3937c0e895e102ec782d0a376 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 18 Apr 2023 10:12:45 +0200 Subject: [PATCH] Use `ContributesMultibinding` annotation and remove the module for push providers. --- .../firebase/FirebasePushProvider.kt | 3 ++ .../providers/firebase/di/FirebaseModule.kt | 33 ------------------- .../unifiedpush/UnifiedPushProvider.kt | 3 ++ .../unifiedpush/di/UnifiedPushModule.kt | 33 ------------------- 4 files changed, 6 insertions(+), 66 deletions(-) delete mode 100644 libraries/pushproviders/firebase/src/main/kotlin/io/element/android/libraries/push/providers/firebase/di/FirebaseModule.kt delete mode 100644 libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/push/providers/unifiedpush/di/UnifiedPushModule.kt diff --git a/libraries/pushproviders/firebase/src/main/kotlin/io/element/android/libraries/push/providers/firebase/FirebasePushProvider.kt b/libraries/pushproviders/firebase/src/main/kotlin/io/element/android/libraries/push/providers/firebase/FirebasePushProvider.kt index 15530033d5..33f2e87ffd 100644 --- a/libraries/pushproviders/firebase/src/main/kotlin/io/element/android/libraries/push/providers/firebase/FirebasePushProvider.kt +++ b/libraries/pushproviders/firebase/src/main/kotlin/io/element/android/libraries/push/providers/firebase/FirebasePushProvider.kt @@ -16,7 +16,9 @@ package io.element.android.libraries.push.providers.firebase +import com.squareup.anvil.annotations.ContributesMultibinding import io.element.android.libraries.core.log.logger.LoggerTag +import io.element.android.libraries.di.AppScope import io.element.android.libraries.matrix.api.MatrixClient import io.element.android.libraries.push.providers.api.Distributor import io.element.android.libraries.push.providers.api.PushProvider @@ -26,6 +28,7 @@ import javax.inject.Inject private val loggerTag = LoggerTag("FirebasePushProvider") +@ContributesMultibinding(AppScope::class) class FirebasePushProvider @Inject constructor( private val firebaseStore: FirebaseStore, private val firebaseTroubleshooter: FirebaseTroubleshooter, diff --git a/libraries/pushproviders/firebase/src/main/kotlin/io/element/android/libraries/push/providers/firebase/di/FirebaseModule.kt b/libraries/pushproviders/firebase/src/main/kotlin/io/element/android/libraries/push/providers/firebase/di/FirebaseModule.kt deleted file mode 100644 index 9e36754101..0000000000 --- a/libraries/pushproviders/firebase/src/main/kotlin/io/element/android/libraries/push/providers/firebase/di/FirebaseModule.kt +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) 2023 New Vector Ltd - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package io.element.android.libraries.push.providers.firebase.di - -import com.squareup.anvil.annotations.ContributesTo -import dagger.Binds -import dagger.Module -import dagger.multibindings.IntoSet -import io.element.android.libraries.di.AppScope -import io.element.android.libraries.push.providers.api.PushProvider -import io.element.android.libraries.push.providers.firebase.FirebasePushProvider - -@Module -@ContributesTo(AppScope::class) -interface FirebaseModule { - @Binds - @IntoSet - fun bind(pushProvider: FirebasePushProvider): PushProvider -} diff --git a/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/push/providers/unifiedpush/UnifiedPushProvider.kt b/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/push/providers/unifiedpush/UnifiedPushProvider.kt index 854c070d7e..6ab21e281b 100644 --- a/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/push/providers/unifiedpush/UnifiedPushProvider.kt +++ b/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/push/providers/unifiedpush/UnifiedPushProvider.kt @@ -17,7 +17,9 @@ package io.element.android.libraries.push.providers.unifiedpush import android.content.Context +import com.squareup.anvil.annotations.ContributesMultibinding import io.element.android.libraries.androidutils.system.getApplicationLabel +import io.element.android.libraries.di.AppScope import io.element.android.libraries.di.ApplicationContext import io.element.android.libraries.matrix.api.MatrixClient import io.element.android.libraries.push.providers.api.Distributor @@ -26,6 +28,7 @@ import io.element.android.libraries.pushstore.api.clientsecret.PushClientSecret import org.unifiedpush.android.connector.UnifiedPush import javax.inject.Inject +@ContributesMultibinding(AppScope::class) class UnifiedPushProvider @Inject constructor( @ApplicationContext private val context: Context, private val registerUnifiedPushUseCase: RegisterUnifiedPushUseCase, diff --git a/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/push/providers/unifiedpush/di/UnifiedPushModule.kt b/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/push/providers/unifiedpush/di/UnifiedPushModule.kt deleted file mode 100644 index 9e34b349e3..0000000000 --- a/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/push/providers/unifiedpush/di/UnifiedPushModule.kt +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) 2023 New Vector Ltd - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package io.element.android.libraries.push.providers.unifiedpush.di - -import com.squareup.anvil.annotations.ContributesTo -import dagger.Binds -import dagger.Module -import dagger.multibindings.IntoSet -import io.element.android.libraries.di.AppScope -import io.element.android.libraries.push.providers.api.PushProvider -import io.element.android.libraries.push.providers.unifiedpush.UnifiedPushProvider - -@Module -@ContributesTo(AppScope::class) -interface UnifiedPushModule { - @Binds - @IntoSet - fun bind(pushProvider: UnifiedPushProvider): PushProvider -}