summaryrefslogtreecommitdiff
path: root/wallet/src/main/java/net/taler/wallet/tip/TipManager.kt
diff options
context:
space:
mode:
authorTorsten Grote <t@grobox.de>2023-01-05 17:03:34 -0300
committerTorsten Grote <t@grobox.de>2023-01-05 17:04:02 -0300
commit2c78d3c9ac6d2b7749af4c46f424766ede0a7a1b (patch)
tree1f473f9e072468bc45862b400d8ef4e91d9c5955 /wallet/src/main/java/net/taler/wallet/tip/TipManager.kt
parentab77084575b76f9cbd517ff5817a2a5655133136 (diff)
downloadtaler-android-2c78d3c9ac6d2b7749af4c46f424766ede0a7a1b.tar.gz
taler-android-2c78d3c9ac6d2b7749af4c46f424766ede0a7a1b.tar.bz2
taler-android-2c78d3c9ac6d2b7749af4c46f424766ede0a7a1b.zip
[wallet] Some fixes for accepting a tip
Diffstat (limited to 'wallet/src/main/java/net/taler/wallet/tip/TipManager.kt')
-rw-r--r--wallet/src/main/java/net/taler/wallet/tip/TipManager.kt34
1 files changed, 5 insertions, 29 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/tip/TipManager.kt b/wallet/src/main/java/net/taler/wallet/tip/TipManager.kt
index 855feb0..5548687 100644
--- a/wallet/src/main/java/net/taler/wallet/tip/TipManager.kt
+++ b/wallet/src/main/java/net/taler/wallet/tip/TipManager.kt
@@ -25,10 +25,10 @@ import kotlinx.coroutines.launch
import net.taler.common.Amount
import net.taler.common.Timestamp
import net.taler.wallet.TAG
-import net.taler.wallet.backend.WalletBackendApi
import net.taler.wallet.backend.TalerErrorInfo
-import net.taler.wallet.tip.PrepareTipResponse.TipPossibleResponse
+import net.taler.wallet.backend.WalletBackendApi
import net.taler.wallet.tip.PrepareTipResponse.AlreadyAcceptedResponse
+import net.taler.wallet.tip.PrepareTipResponse.TipPossibleResponse
sealed class TipStatus {
object None : TipStatus()
@@ -41,12 +41,12 @@ sealed class TipStatus {
val tipAmountRaw: Amount,
val tipAmountEffective: Amount,
) : TipStatus()
-
+ object Accepting : TipStatus()
data class AlreadyAccepted(
val walletTipId: String,
) : TipStatus()
- // TODO bring user to fulfilment URI
+ // TODO bring user to fulfilment URI (not yet in wallet API)
data class Error(val error: String) : TipStatus()
data class Success(val currency: String) : TipStatus()
}
@@ -77,6 +77,7 @@ class TipManager(
}
fun confirmTip(tipId: String, currency: String) = scope.launch {
+ mTipStatus.value = TipStatus.Accepting
api.request("acceptTip", ConfirmTipResult.serializer()) {
put("walletTipId", tipId)
}.onError {
@@ -86,31 +87,6 @@ class TipManager(
}
}
-/*
- @UiThread
- fun abortTip() {
- val ps = tipStatus.value
- if (ps is TipStatus.Prepared) {
- abortProposal(ps.walletTipId)
- }
- resetTipStatus()
- }
-*/
-
-/*
- internal fun abortProposal(proposalId: String) = scope.launch {
- Log.i(TAG, "aborting proposal")
- api.request<Unit>("abortProposal") {
- put("proposalId", proposalId)
- }.onError {
- Log.e(TAG, "received error response to abortProposal")
- handleError("abortProposal", it)
- }.onSuccess {
- mTipStatus.postValue(TipStatus.None)
- }
- }
-*/
-
@UiThread
fun resetTipStatus() {
mTipStatus.value = TipStatus.None