From 62639c44a7cf3e3a3fd10f1c24cc0701783201fd Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Wed, 12 Apr 2023 10:06:11 +0200 Subject: [PATCH] Cleanup --- libraries/push/impl/build.gradle.kts | 5 ++--- .../libraries/push/impl/DefaultPushService.kt | 2 +- .../libraries/push/impl/PushersManager.kt | 21 ++----------------- .../push/providers/api/PushProvider.kt | 2 +- .../pushproviders/firebase/build.gradle.kts | 1 - .../providers/unifiedpush/UnifiedPushStore.kt | 4 ++++ 6 files changed, 10 insertions(+), 25 deletions(-) diff --git a/libraries/push/impl/build.gradle.kts b/libraries/push/impl/build.gradle.kts index 44fc21fb2b..81ba07fc63 100644 --- a/libraries/push/impl/build.gradle.kts +++ b/libraries/push/impl/build.gradle.kts @@ -55,9 +55,8 @@ dependencies { exclude(group = "com.android.support", module = "support-annotations") } - // TODO Remove - implementation(platform(libs.google.firebase.bom)) - implementation("com.google.firebase:firebase-messaging-ktx") + // TODO Temporary use the deprecated LocalBroadcastManager, to be changed later. + implementation("androidx.localbroadcastmanager:localbroadcastmanager:1.1.0") testImplementation(libs.test.junit) testImplementation(libs.test.mockk) diff --git a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/DefaultPushService.kt b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/DefaultPushService.kt index 99af1317f9..28a58d1058 100644 --- a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/DefaultPushService.kt +++ b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/DefaultPushService.kt @@ -43,7 +43,7 @@ class DefaultPushService @Inject constructor( } /** - * Get current push provider, compare with provided one, then unregister and register if different, and store change + * Get current push provider, compare with provided one, then unregister and register if different, and store change. */ override suspend fun registerWith(matrixClient: MatrixClient, pushProvider: PushProvider, distributor: Distributor) { val userPushStore = userPushStoreFactory.create(matrixClient.sessionId) diff --git a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/PushersManager.kt b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/PushersManager.kt index 33b8ac3507..04d2875328 100644 --- a/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/PushersManager.kt +++ b/libraries/push/impl/src/main/kotlin/io/element/android/libraries/push/impl/PushersManager.kt @@ -20,17 +20,15 @@ import com.squareup.anvil.annotations.ContributesBinding 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.matrix.api.auth.MatrixAuthenticationService import io.element.android.libraries.matrix.api.core.EventId import io.element.android.libraries.matrix.api.core.SessionId import io.element.android.libraries.matrix.api.pusher.SetHttpPusherData -import io.element.android.libraries.pushstore.api.clientsecret.PushClientSecret import io.element.android.libraries.push.impl.config.PushConfig import io.element.android.libraries.push.impl.log.pushLoggerTag import io.element.android.libraries.push.impl.pushgateway.PushGatewayNotifyRequest import io.element.android.libraries.push.providers.api.PusherSubscriber import io.element.android.libraries.pushstore.api.UserPushStoreFactory -import io.element.android.libraries.sessionstorage.api.SessionStore +import io.element.android.libraries.pushstore.api.clientsecret.PushClientSecret import io.element.android.services.toolbox.api.appname.AppNameProvider import timber.log.Timber import javax.inject.Inject @@ -41,16 +39,13 @@ private val loggerTag = LoggerTag("PushersManager", pushLoggerTag) @ContributesBinding(AppScope::class) class PushersManager @Inject constructor( - // private val unifiedPushHelper: UnifiedPushHelper, // private val localeProvider: LocaleProvider, private val appNameProvider: AppNameProvider, // private val getDeviceInfoUseCase: GetDeviceInfoUseCase, private val pushGatewayNotifyRequest: PushGatewayNotifyRequest, private val pushClientSecret: PushClientSecret, - private val sessionStore: SessionStore, - private val matrixAuthenticationService: MatrixAuthenticationService, private val userPushStoreFactory: UserPushStoreFactory, -): PusherSubscriber { +) : PusherSubscriber { // TODO Move this to the PushProvider API suspend fun testPush() { pushGatewayNotifyRequest.execute( @@ -63,18 +58,6 @@ class PushersManager @Inject constructor( ) } - suspend fun enqueueRegisterPusherWithFcmKey(pushKey: String) { - // return onNewFirebaseToken(pushKey, PushConfig.pusher_http_url) - TODO() - } - - suspend fun onNewUnifiedPushEndpoint( - pushKey: String, - gateway: String - ) { - TODO() - } - /** * Register a pusher to the server if not done yet. */ diff --git a/libraries/pushproviders/api/src/main/kotlin/io/element/android/libraries/push/providers/api/PushProvider.kt b/libraries/pushproviders/api/src/main/kotlin/io/element/android/libraries/push/providers/api/PushProvider.kt index 7e16121ed4..4ad0179403 100644 --- a/libraries/pushproviders/api/src/main/kotlin/io/element/android/libraries/push/providers/api/PushProvider.kt +++ b/libraries/pushproviders/api/src/main/kotlin/io/element/android/libraries/push/providers/api/PushProvider.kt @@ -19,7 +19,7 @@ package io.element.android.libraries.push.providers.api import io.element.android.libraries.matrix.api.MatrixClient /** - * This is the main API for this module + * This is the main API for this module. */ interface PushProvider { /** diff --git a/libraries/pushproviders/firebase/build.gradle.kts b/libraries/pushproviders/firebase/build.gradle.kts index a20398319b..b9b4f76c12 100644 --- a/libraries/pushproviders/firebase/build.gradle.kts +++ b/libraries/pushproviders/firebase/build.gradle.kts @@ -17,7 +17,6 @@ plugins { id("io.element.android-library") alias(libs.plugins.anvil) - // kotlin("plugin.serialization") version "1.8.10" } android { diff --git a/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/push/providers/unifiedpush/UnifiedPushStore.kt b/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/push/providers/unifiedpush/UnifiedPushStore.kt index fe260ed24a..3883c3348c 100644 --- a/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/push/providers/unifiedpush/UnifiedPushStore.kt +++ b/libraries/pushproviders/unifiedpush/src/main/kotlin/io/element/android/libraries/push/providers/unifiedpush/UnifiedPushStore.kt @@ -30,6 +30,7 @@ class UnifiedPushStore @Inject constructor( /** * Retrieves the UnifiedPush Endpoint. * + * @param clientSecret the client secret, to identify the session * @return the UnifiedPush Endpoint or null if not received */ fun getEndpoint(clientSecret: String): String? { @@ -40,6 +41,7 @@ class UnifiedPushStore @Inject constructor( * Store UnifiedPush Endpoint to the SharedPrefs. * * @param endpoint the endpoint to store + * @param clientSecret the client secret, to identify the session */ fun storeUpEndpoint(endpoint: String?, clientSecret: String) { defaultPrefs.edit { @@ -50,6 +52,7 @@ class UnifiedPushStore @Inject constructor( /** * Retrieves the Push Gateway. * + * @param clientSecret the client secret, to identify the session * @return the Push Gateway or null if not defined */ fun getPushGateway(clientSecret: String): String? { @@ -60,6 +63,7 @@ class UnifiedPushStore @Inject constructor( * Store Push Gateway to the SharedPrefs. * * @param gateway the push gateway to store + * @param clientSecret the client secret, to identify the session */ fun storePushGateway(gateway: String?, clientSecret: String) { defaultPrefs.edit {