summaryrefslogtreecommitdiffhomepage
path: root/android/src
diff options
context:
space:
mode:
authorJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2021-03-04 11:03:18 +0000
committerJanito Vaqueiro Ferreira Filho <janito@mullvad.net>2021-03-23 12:36:35 +0000
commit9950eae2b40539c29eccfd113e97449a130f40c6 (patch)
tree8e345bc12c7088512c9adc5b9124f93062aa5794 /android/src
parent09952cb091b033a98f7bd631b2c948544fa7d73a (diff)
downloadmullvadvpn-9950eae2b40539c29eccfd113e97449a130f40c6.tar.xz
mullvadvpn-9950eae2b40539c29eccfd113e97449a130f40c6.zip
Refactor `null` handling in `SettingsListener`
Diffstat (limited to 'android/src')
-rw-r--r--android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/SettingsListener.kt36
1 files changed, 16 insertions, 20 deletions
diff --git a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/SettingsListener.kt b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/SettingsListener.kt
index d048a11175..62c836122c 100644
--- a/android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/SettingsListener.kt
+++ b/android/src/main/kotlin/net/mullvad/mullvadvpn/service/endpoint/SettingsListener.kt
@@ -47,36 +47,32 @@ class SettingsListener(val daemon: Intermittent<MullvadDaemon>) {
}
private fun registerListener(daemon: MullvadDaemon) {
- daemon.onSettingsChange.subscribe(this) { maybeSettings ->
- synchronized(this) {
- maybeSettings?.let { newSettings -> handleNewSettings(newSettings) }
- }
- }
+ daemon.onSettingsChange.subscribe(this, ::handleNewSettings)
}
private fun fetchInitialSettings(daemon: MullvadDaemon) {
synchronized(this) {
- daemon.getSettings()?.let { newSettings ->
- handleNewSettings(newSettings)
- }
+ handleNewSettings(daemon.getSettings())
}
}
- private fun handleNewSettings(newSettings: Settings) {
- synchronized(this) {
- if (settings?.accountToken != newSettings.accountToken) {
- accountNumberNotifier.notify(newSettings.accountToken)
- }
+ private fun handleNewSettings(newSettings: Settings?) {
+ if (newSettings != null) {
+ synchronized(this) {
+ if (settings?.accountToken != newSettings.accountToken) {
+ accountNumberNotifier.notify(newSettings.accountToken)
+ }
- if (settings?.tunnelOptions?.dnsOptions != newSettings.tunnelOptions.dnsOptions) {
- dnsOptionsNotifier.notify(newSettings.tunnelOptions.dnsOptions)
- }
+ if (settings?.tunnelOptions?.dnsOptions != newSettings.tunnelOptions.dnsOptions) {
+ dnsOptionsNotifier.notify(newSettings.tunnelOptions.dnsOptions)
+ }
- if (settings?.relaySettings != newSettings.relaySettings) {
- relaySettingsNotifier.notify(newSettings.relaySettings)
- }
+ if (settings?.relaySettings != newSettings.relaySettings) {
+ relaySettingsNotifier.notify(newSettings.relaySettings)
+ }
- settings = newSettings
+ settings = newSettings
+ }
}
}
}