From 35884c3a16f7aeefc6fe9793aa26db82c670eb0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20B=C3=ADna?= Date: Wed, 1 Jun 2022 01:54:22 +0200 Subject: [PATCH 1/2] Build login intent only when needed --- trakt-auth/src/main/java/app/tivi/trakt/TraktAuthManager.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/trakt-auth/src/main/java/app/tivi/trakt/TraktAuthManager.kt b/trakt-auth/src/main/java/app/tivi/trakt/TraktAuthManager.kt index 5ef7819dfb..e178ea3315 100644 --- a/trakt-auth/src/main/java/app/tivi/trakt/TraktAuthManager.kt +++ b/trakt-auth/src/main/java/app/tivi/trakt/TraktAuthManager.kt @@ -23,15 +23,15 @@ import net.openid.appauth.AuthorizationException import net.openid.appauth.AuthorizationResponse interface TraktAuthManager { - fun buildLoginActivityResult(): LoginTrakt = LoginTrakt(buildLoginIntent()) + fun buildLoginActivityResult(): LoginTrakt = LoginTrakt { buildLoginIntent() } fun buildLoginIntent(): Intent fun onLoginResult(result: LoginTrakt.Result) } class LoginTrakt internal constructor( - private val loginIntent: Intent, + private val intentBuilder: () -> Intent, ) : ActivityResultContract() { - override fun createIntent(context: Context, input: Unit?): Intent = loginIntent + override fun createIntent(context: Context, input: Unit?): Intent = intentBuilder() override fun parseResult( resultCode: Int, From b23d1e72abac43036f9dcbddd7f969d37e18bc67 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20B=C3=ADna?= Date: Wed, 1 Jun 2022 02:03:54 +0200 Subject: [PATCH 2/2] Create AuthorizationService straight away --- .../src/main/java/app/tivi/trakt/ActivityTraktAuthManager.kt | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/trakt-auth/src/main/java/app/tivi/trakt/ActivityTraktAuthManager.kt b/trakt-auth/src/main/java/app/tivi/trakt/ActivityTraktAuthManager.kt index f782eb8cd6..e341642097 100644 --- a/trakt-auth/src/main/java/app/tivi/trakt/ActivityTraktAuthManager.kt +++ b/trakt-auth/src/main/java/app/tivi/trakt/ActivityTraktAuthManager.kt @@ -34,9 +34,7 @@ internal class ActivityTraktAuthManager @Inject constructor( private val clientAuth: Lazy, private val logger: Logger ) : TraktAuthManager { - private val authService by lazy(LazyThreadSafetyMode.NONE) { - AuthorizationService(context) - } + private val authService = AuthorizationService(context) override fun buildLoginIntent(): Intent { return authService.getAuthorizationRequestIntent(requestProvider.get())