diff options
| author | David Göransson <david.goransson@mullvad.net> | 2024-07-01 15:00:27 +0200 |
|---|---|---|
| committer | David Göransson <david.goransson@mullvad.net> | 2024-07-01 15:00:27 +0200 |
| commit | d76dfbd9796c60e4dc27e721e97e9a82648238fb (patch) | |
| tree | 6be7ce8f987f045980685fd21ffe612ccea8fb9b | |
| parent | b9ef0f57c3fa975210d9d6ea939f98473cadb6f3 (diff) | |
| download | mullvadvpn-d76dfbd9796c60e4dc27e721e97e9a82648238fb.tar.xz mullvadvpn-d76dfbd9796c60e4dc27e721e97e9a82648238fb.zip | |
Handle status exception for updateDevice
2 files changed, 8 insertions, 3 deletions
diff --git a/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt b/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt index d088ffc77a..7c879bc9df 100644 --- a/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt +++ b/android/lib/daemon-grpc/src/main/kotlin/net/mullvad/mullvadvpn/lib/daemon/grpc/ManagementService.kt @@ -65,6 +65,7 @@ import net.mullvad.mullvadvpn.lib.model.DeleteDeviceError import net.mullvad.mullvadvpn.lib.model.Device import net.mullvad.mullvadvpn.lib.model.DeviceId import net.mullvad.mullvadvpn.lib.model.DeviceState as ModelDeviceState +import net.mullvad.mullvadvpn.lib.model.DeviceUpdateError import net.mullvad.mullvadvpn.lib.model.DnsOptions as ModelDnsOptions import net.mullvad.mullvadvpn.lib.model.DnsOptions import net.mullvad.mullvadvpn.lib.model.DnsState as ModelDnsState @@ -233,9 +234,10 @@ class ManagementService( .map { it.toDomain() } .mapLeft { GetDeviceStateError.Unknown(it) } - suspend fun updateDevice() { - grpc.updateDevice(Empty.getDefaultInstance()) - } + suspend fun updateDevice(): Either<DeviceUpdateError, Unit> = + Either.catch { grpc.updateDevice(Empty.getDefaultInstance()) } + .mapEmpty() + .mapLeft { DeviceUpdateError(it) } suspend fun getDeviceList(token: AccountNumber): Either<GetDeviceListError, List<Device>> = Either.catch { grpc.listDevices(StringValue.of(token.value)) } diff --git a/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/DeviceUpdateError.kt b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/DeviceUpdateError.kt new file mode 100644 index 0000000000..a97187844a --- /dev/null +++ b/android/lib/model/src/main/kotlin/net/mullvad/mullvadvpn/lib/model/DeviceUpdateError.kt @@ -0,0 +1,3 @@ +package net.mullvad.mullvadvpn.lib.model + +data class DeviceUpdateError(val error: Throwable) |
