summaryrefslogtreecommitdiff
path: root/merchant-lib/src/main/java/net/taler/merchantlib/Response.kt
diff options
context:
space:
mode:
authorTorsten Grote <t@grobox.de>2020-07-23 11:54:34 -0300
committerTorsten Grote <t@grobox.de>2020-07-23 11:54:34 -0300
commit08b10a2408f958cae96ae0c674ee450a35109e8a (patch)
treed4bee31f1b007ca94f2dfe90b4e47b866481fe46 /merchant-lib/src/main/java/net/taler/merchantlib/Response.kt
parenta8c811f6cdf4bf1b787ebaaa9fd220588fd1ffcf (diff)
downloadtaler-android-08b10a2408f958cae96ae0c674ee450a35109e8a.tar.gz
taler-android-08b10a2408f958cae96ae0c674ee450a35109e8a.tar.bz2
taler-android-08b10a2408f958cae96ae0c674ee450a35109e8a.zip
[pos] delete unpaid/unclaimed orders when user cancels or timeout happens
This is still not working due to a bug in the merchant API
Diffstat (limited to 'merchant-lib/src/main/java/net/taler/merchantlib/Response.kt')
-rw-r--r--merchant-lib/src/main/java/net/taler/merchantlib/Response.kt8
1 files changed, 8 insertions, 0 deletions
diff --git a/merchant-lib/src/main/java/net/taler/merchantlib/Response.kt b/merchant-lib/src/main/java/net/taler/merchantlib/Response.kt
index 23fa101..eb1ef27 100644
--- a/merchant-lib/src/main/java/net/taler/merchantlib/Response.kt
+++ b/merchant-lib/src/main/java/net/taler/merchantlib/Response.kt
@@ -25,6 +25,14 @@ class Response<out T> private constructor(
) {
companion object {
+ suspend fun <T> response(request: suspend () -> T): Response<T> {
+ return try {
+ success(request())
+ } catch (e: Throwable) {
+ failure(e)
+ }
+ }
+
fun <T> success(value: T): Response<T> =
Response(value)