diff options
Diffstat (limited to 'wallet/src')
-rw-r--r-- | wallet/src/main/java/net/taler/wallet/backend/WalletBackendApi.kt | 15 | ||||
-rw-r--r-- | wallet/src/test/java/net/taler/wallet/payment/PaymentResponsesTest.kt | 1 |
2 files changed, 11 insertions, 5 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/backend/WalletBackendApi.kt b/wallet/src/main/java/net/taler/wallet/backend/WalletBackendApi.kt index c6261bf..a72df9c 100644 --- a/wallet/src/main/java/net/taler/wallet/backend/WalletBackendApi.kt +++ b/wallet/src/main/java/net/taler/wallet/backend/WalletBackendApi.kt @@ -158,12 +158,19 @@ class WalletBackendApi( } sendRequest(operation, args?.invoke(JSONObject())) { isError, message -> val response = if (isError) { - val error = json.decodeFromString(WalletErrorInfo.serializer(), message.toString()) + val error = + json.decodeFromString(WalletErrorInfo.serializer(), message.toString()) WalletResponse.Error(error) } else { - @Suppress("UNCHECKED_CAST") // if serializer is null, T must be Unit - val t: T = serializer?.let { json.decodeFromString(serializer, message.toString()) } ?: Unit as T - WalletResponse.Success(t) + try { + val t: T = serializer?.let { + json.decodeFromString(serializer, message.toString()) + } ?: Unit as T + WalletResponse.Success(t) + } catch (e: Exception) { + val info = WalletErrorInfo(0, "", e.toString(), null) + WalletResponse.Error(info) + } } cont.resume(response) } diff --git a/wallet/src/test/java/net/taler/wallet/payment/PaymentResponsesTest.kt b/wallet/src/test/java/net/taler/wallet/payment/PaymentResponsesTest.kt index 15702c6..fbdc07d 100644 --- a/wallet/src/test/java/net/taler/wallet/payment/PaymentResponsesTest.kt +++ b/wallet/src/test/java/net/taler/wallet/payment/PaymentResponsesTest.kt @@ -57,7 +57,6 @@ class PaymentResponsesTest { "max_wire_fee": "CHF:0.1", "max_fee": "CHF:0.1", "wire_fee_amortization": 10, - "merchant_base_url": "https:\/\/backend.chf.taler.net\/instances\/department\/", "merchant": { "name": "BFH Department Technik und Informatik", "instance": "department" |