From fffde1cc3416a662df21572f76bb8b0b5c3b9a3b Mon Sep 17 00:00:00 2001 From: Taras Smakula <tarassmakula@gmail.com> Date: Wed, 14 Dec 2022 19:15:32 +0200 Subject: [PATCH] Fix remove session --- .../org/matrix/android/sdk/api/auth/AuthenticationService.kt | 2 +- .../java/org/matrix/android/sdk/internal/SessionManager.kt | 5 +++-- .../sdk/internal/auth/DefaultAuthenticationService.kt | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/auth/AuthenticationService.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/auth/AuthenticationService.kt index a87a1fcb..57764223 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/auth/AuthenticationService.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/api/auth/AuthenticationService.kt @@ -165,5 +165,5 @@ interface AuthenticationService { /** * Added for switch user */ - fun removeSession(sessionId: String) + suspend fun removeSession(sessionId: String) } diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/SessionManager.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/SessionManager.kt index 343ad49a..997a8f36 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/SessionManager.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/SessionManager.kt @@ -79,7 +79,8 @@ internal class SessionManager @Inject constructor( } //Added for switch user - fun removeSession(sessionId: String) { - if (sessionComponents.containsKey(sessionId)) sessionComponents.remove(sessionId) + suspend fun removeSession(sessionId: String) { + sessionComponents.remove(sessionId) + sessionParamsStore.delete(sessionId) } } diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/auth/DefaultAuthenticationService.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/auth/DefaultAuthenticationService.kt index f947b44e..dffe35b1 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/auth/DefaultAuthenticationService.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/auth/DefaultAuthenticationService.kt @@ -494,7 +494,7 @@ internal class DefaultAuthenticationService @Inject constructor( override fun createSessionFromParams(params: SessionParams): Session = sessionManager.getOrCreateSession(params) //Added for switch user - override fun removeSession(sessionId: String) { + override suspend fun removeSession(sessionId: String) { sessionManager.removeSession(sessionId) } } -- GitLab