diff options
Diffstat (limited to 'android/src')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/service/AccountCache.kt | 10 | ||||
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/ui/LoginFragment.kt | 6 |
2 files changed, 13 insertions, 3 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/AccountCache.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/AccountCache.kt index 36e09b1721..f6ecf42566 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/AccountCache.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/AccountCache.kt @@ -36,6 +36,16 @@ class AccountCache(val daemon: MullvadDaemon, val settingsListener: SettingsList } } + fun createNewAccount(): String? { + return daemon.createNewAccount() + } + + fun login(account: String) { + if (account != accountNumber) { + daemon.setAccount(account) + } + } + fun fetchAccountExpiry() { synchronized(this) { accountNumber?.let { account -> diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/LoginFragment.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/LoginFragment.kt index 5d103918d1..2f3efbf9b0 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/LoginFragment.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/LoginFragment.kt @@ -95,7 +95,7 @@ class LoginFragment : ServiceDependentFragment(OnNoService.GoToLaunchScreen) { scrollToShow(loggingInStatus) val accountToken = jobTracker.runOnBackground { - daemon.createNewAccount() + accountCache.createNewAccount() } if (accountToken == null) { @@ -135,7 +135,7 @@ class LoginFragment : ServiceDependentFragment(OnNoService.GoToLaunchScreen) { when (accountDataResult) { is GetAccountDataResult.Ok -> { - daemon.setAccount(accountToken) + accountCache.login(accountToken) val expiryString = accountDataResult.accountData.expiry val expiry = DateTime.parse(expiryString, AccountCache.EXPIRY_FORMAT) @@ -147,7 +147,7 @@ class LoginFragment : ServiceDependentFragment(OnNoService.GoToLaunchScreen) { } } is GetAccountDataResult.RpcError -> { - daemon.setAccount(accountToken) + accountCache.login(accountToken) LoginResult.ExistingAccountWithTime } else -> null |
