summaryrefslogtreecommitdiffhomepage
path: root/android/src
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-08-13 22:13:26 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2020-08-17 13:02:44 +0000
commitc586b294040e6c0917b76b0ab6453a5638240698 (patch)
treee971bb386142f0e9dd3b27b9a9e4abe8d3ff4919 /android/src
parentfc71697292c63c1804475a4d4e8194e9fc025e21 (diff)
downloadmullvadvpn-c586b294040e6c0917b76b0ab6453a5638240698.tar.xz
mullvadvpn-c586b294040e6c0917b76b0ab6453a5638240698.zip
Use `AccountCache` for setting the account number
Diffstat (limited to 'android/src')
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/service/AccountCache.kt10
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/ui/LoginFragment.kt6
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