From ec316d5975fb5e9d9b0a644a4102832b369d406d Mon Sep 17 00:00:00 2001
From: Taras Smakula <tarassmakula@gmail.com>
Date: Wed, 1 Nov 2023 16:10:15 +0200
Subject: [PATCH] Added methods to AuthentificationService

---
 .../sdk/api/auth/AuthenticationService.kt     | 27 +++++++++++++++++++
 1 file changed, 27 insertions(+)

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 c6fab776..1afae8c1 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
@@ -19,6 +19,7 @@ package org.matrix.android.sdk.api.auth
 import org.matrix.android.sdk.api.auth.data.Credentials
 import org.matrix.android.sdk.api.auth.data.HomeServerConnectionConfig
 import org.matrix.android.sdk.api.auth.data.LoginFlowResult
+import org.matrix.android.sdk.api.auth.data.SessionParams
 import org.matrix.android.sdk.api.auth.login.LoginWizard
 import org.matrix.android.sdk.api.auth.registration.RegistrationWizard
 import org.matrix.android.sdk.api.auth.wellknown.WellknownResult
@@ -125,6 +126,12 @@ interface AuthenticationService {
             deviceId: String? = null
     ): Session
 
+    /**
+     * //Added to initiate auth without GET /login
+     * @return wellKnownResult.homeServerUrl
+     */
+    suspend fun initiateAuth(homeServerConnectionConfig: HomeServerConnectionConfig): String
+
     /**
      * Authenticate using m.login.token method during sign in with QR code.
      * @param homeServerConnectionConfig the information about the homeserver and other configuration
@@ -138,4 +145,24 @@ interface AuthenticationService {
             initialDeviceName: String? = null,
             deviceId: String? = null
     ): Session
+
+    /**
+     * Added for switch user
+     */
+    suspend fun switchToSessionWithId(id: String)
+
+    /**
+     * Added for switch user
+     */
+    fun getAllAuthSessionsParams(): List<SessionParams>
+
+    /**
+     * Added for switch user
+     */
+    fun createSessionFromParams(params: SessionParams): Session
+
+    /**
+     * Added for switch user
+     */
+    suspend fun removeSession(sessionId: String)
 }
-- 
GitLab