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 5f5bb1f9514d452645eadb80f5a639dc885ef44a..52b76dc3a30d38a1a3a51616a346bbe578bd71df 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 @@ -72,4 +72,20 @@ internal class SessionManager @Inject constructor( .create(matrixComponent, sessionParams) } } + + //Added for switch user + suspend fun setActiveSessionAsLast(sessionId: String) { + val sessionParams = sessionParamsStore.get(sessionId) ?: return + sessionParamsStore.delete(sessionId) + sessionParamsStore.save(sessionParams) + } + + //Added for switch user + fun getAllSessionParams(): List<SessionParams> = sessionParamsStore.getAll() + + //Added for switch user + suspend fun removeSession(sessionId: String) { + sessionComponents.remove(sessionId) + sessionParamsStore.delete(sessionId) + } }