diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-04-03 01:45:05 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-04-27 16:21:51 +0000 |
| commit | 0ce644fc41194520a77b33f614b5a0c987934890 (patch) | |
| tree | b1c3e1a744a795d59c4450b87b878f803f79c342 /android/src | |
| parent | 922b4e3fae62913d54800676ec7ddcb5b41e3a1e (diff) | |
| download | mullvadvpn-0ce644fc41194520a77b33f614b5a0c987934890.tar.xz mullvadvpn-0ce644fc41194520a77b33f614b5a0c987934890.zip | |
Replace custom job management with `JobTracker`
Diffstat (limited to 'android/src')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/ui/WireguardKeyFragment.kt | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/WireguardKeyFragment.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/WireguardKeyFragment.kt index ccf083f3b7..c99101df0b 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/WireguardKeyFragment.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/ui/WireguardKeyFragment.kt @@ -40,7 +40,6 @@ class WireguardKeyFragment : ServiceDependentFragment(OnNoService.GoToLaunchScre private lateinit var timeAgoFormatter: TimeAgoFormatter - private var currentJob: Job? = null private var tunnelStateListener: Int? = null private var tunnelState: TunnelState = TunnelState.Disconnected() private lateinit var urlController: BlockingController @@ -73,12 +72,11 @@ class WireguardKeyFragment : ServiceDependentFragment(OnNoService.GoToLaunchScre } } - private var resetReconnectionExpectedJob: Job? = null private var reconnectionExpected = false set(value) { field = value - resetReconnectionExpectedJob?.cancel() + jobTracker.cancelJob("resetReconnectionExpected") if (value == true) { resetReconnectionExpected() @@ -186,8 +184,6 @@ class WireguardKeyFragment : ServiceDependentFragment(OnNoService.GoToLaunchScre } keyStatusListener.onKeyStatusChange = null - currentJob?.cancel() - resetReconnectionExpectedJob?.cancel() urlController.onPause() jobTracker.cancelAllJobs() } @@ -303,9 +299,7 @@ class WireguardKeyFragment : ServiceDependentFragment(OnNoService.GoToLaunchScre } private fun onGenerateKeyPress() { - currentJob?.cancel() - - currentJob = GlobalScope.launch(Dispatchers.Default) { + jobTracker.newBackgroundJob("action") { synchronized(this) { actionState = ActionState.Generating() reconnectionExpected = !(tunnelState is TunnelState.Disconnected) @@ -319,9 +313,7 @@ class WireguardKeyFragment : ServiceDependentFragment(OnNoService.GoToLaunchScre } private fun onValidateKeyPress() { - currentJob?.cancel() - - currentJob = GlobalScope.launch(Dispatchers.Default) { + jobTracker.newBackgroundJob("action") { actionState = ActionState.Verifying() keyStatusListener.verifyKey().join() actionState = ActionState.Idle(true) @@ -329,7 +321,7 @@ class WireguardKeyFragment : ServiceDependentFragment(OnNoService.GoToLaunchScre } private fun resetReconnectionExpected() { - resetReconnectionExpectedJob = GlobalScope.launch(Dispatchers.Main) { + jobTracker.newBackgroundJob("resetReconnectionExpected") { delay(20_000) if (reconnectionExpected) { |
