diff options
Diffstat (limited to 'wallet/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt')
-rw-r--r-- | wallet/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt b/wallet/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt index 5e11c04..5afb125 100644 --- a/wallet/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt +++ b/wallet/src/main/java/net/taler/wallet/withdraw/WithdrawManager.kt @@ -59,6 +59,12 @@ sealed class WithdrawStatus { data class Error(val message: String?) : WithdrawStatus() } +sealed class WithdrawTestStatus { + object Withdrawing : WithdrawTestStatus() + object Success : WithdrawTestStatus() + data class Error(val message: String) : WithdrawTestStatus() +} + @Serializable data class WithdrawalDetailsForUri( val amount: Amount, @@ -84,7 +90,7 @@ class WithdrawManager( ) { val withdrawStatus = MutableLiveData<WithdrawStatus>() - val testWithdrawalInProgress = MutableLiveData(false) + val testWithdrawalStatus = MutableLiveData<WithdrawTestStatus>() private val _exchangeSelection = MutableLiveData<Event<ExchangeSelection>>() val exchangeSelection: LiveData<Event<ExchangeSelection>> = _exchangeSelection @@ -92,11 +98,11 @@ class WithdrawManager( private set fun withdrawTestkudos() = scope.launch { - testWithdrawalInProgress.value = true + testWithdrawalStatus.value = WithdrawTestStatus.Withdrawing api.request<Unit>("withdrawTestkudos").onError { - testWithdrawalInProgress.postValue(false) + testWithdrawalStatus.value = WithdrawTestStatus.Error(it.userFacingMsg) }.onSuccess { - testWithdrawalInProgress.postValue(false) + testWithdrawalStatus.value = WithdrawTestStatus.Success } } |