diff options
| author | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-06-09 17:04:28 +0000 |
|---|---|---|
| committer | Janito Vaqueiro Ferreira Filho <janito@mullvad.net> | 2020-06-22 12:29:44 +0000 |
| commit | 6c30684104ed2a765923f22e965a53bac761ef5a (patch) | |
| tree | 3ce4c842b29bce93c07aecf399d30a56a00b9c2f /android/src | |
| parent | 142482eeb4212fe0a0b3ab51be4e548a1f224651 (diff) | |
| download | mullvadvpn-6c30684104ed2a765923f22e965a53bac761ef5a.tar.xz mullvadvpn-6c30684104ed2a765923f22e965a53bac761ef5a.zip | |
Use observable property for service instance
Diffstat (limited to 'android/src')
| -rw-r--r-- | android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt index 0998ddcc1c..6bc3f1747b 100644 --- a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt +++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/MullvadVpnService.kt @@ -8,6 +8,7 @@ import android.os.Binder import android.os.IBinder import android.util.Log import java.io.File +import kotlin.properties.Delegates.observable import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.GlobalScope import kotlinx.coroutines.Job @@ -41,14 +42,12 @@ class MullvadVpnService : TalpidVpnService() { private var startDaemonJob: Job? = null - private var instance: ServiceInstance? = null - set(value) { - if (field != value) { - field?.onDestroy() - field = value - serviceNotifier.notify(value) - } + private var instance by observable<ServiceInstance?>(null) { _, oldInstance, newInstance -> + if (newInstance != oldInstance) { + oldInstance?.onDestroy() + serviceNotifier.notify(newInstance) } + } private lateinit var keyguardManager: KeyguardManager private lateinit var notificationManager: ForegroundNotificationManager |
