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 a87a1fcb82290c26b83bb64f8c96f18b20e07139..577642234bb70ab78ced41845662cbc71f2ca723 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 343ad49a517e90db37ec30c427a595be96a945a8..997a8f36b55a42608c8a45721e2203a115ce1ac1 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 f947b44e17a8e9bebba898a651ed1864ee412695..dffe35b106ed25ca8d7413f9bde9de6fd187e1eb 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) } }