Configure user agent for all network request (#677)

This commit is contained in:
Benoit Marty 2023-06-26 21:43:19 +02:00 committed by Benoit Marty
parent 469b54f204
commit f4b4e4d316
12 changed files with 183 additions and 2 deletions

View file

@ -29,6 +29,7 @@ import io.element.android.libraries.matrix.api.auth.MatrixHomeServerDetails
import io.element.android.libraries.matrix.api.auth.OidcDetails
import io.element.android.libraries.matrix.api.core.SessionId
import io.element.android.libraries.matrix.impl.RustMatrixClient
import io.element.android.libraries.network.useragent.UserAgentProvider
import io.element.android.libraries.sessionstorage.api.SessionData
import io.element.android.libraries.sessionstorage.api.SessionStore
import io.element.android.services.toolbox.api.systemclock.SystemClock
@ -56,6 +57,7 @@ class RustMatrixAuthenticationService @Inject constructor(
private val coroutineDispatchers: CoroutineDispatchers,
private val sessionStore: SessionStore,
private val clock: SystemClock,
private val userAgentProvider: UserAgentProvider,
) : MatrixAuthenticationService {
private val authService: RustAuthenticationService = RustAuthenticationService(
@ -84,6 +86,7 @@ class RustMatrixAuthenticationService @Inject constructor(
.basePath(baseDirectory.absolutePath)
.homeserverUrl(sessionData.homeserverUrl)
.username(sessionData.userId)
.userAgent(userAgentProvider.provide())
.use { it.build() }
client.restoreSession(sessionData.toSession())
createMatrixClient(client)