summaryrefslogtreecommitdiff
path: root/wallet/src/main/java/net/taler/wallet/WalletViewModel.kt
diff options
context:
space:
mode:
authorTorsten Grote <t@grobox.de>2020-04-06 12:14:46 -0300
committerTorsten Grote <t@grobox.de>2020-04-06 12:14:46 -0300
commit9ee202aebf6416bb336729cb3044e4921a94bee4 (patch)
treecb08740a3a71cfb3fa003872461ef8411bd52ee5 /wallet/src/main/java/net/taler/wallet/WalletViewModel.kt
parentf1d4e51b7bddf93f12e431daf156025bb37222d1 (diff)
downloadtaler-android-9ee202aebf6416bb336729cb3044e4921a94bee4.tar.gz
taler-android-9ee202aebf6416bb336729cb3044e4921a94bee4.tar.bz2
taler-android-9ee202aebf6416bb336729cb3044e4921a94bee4.zip
[wallet] expose notification payloads to Android UI
also ignore ping notifications (to see if they are really needed)
Diffstat (limited to 'wallet/src/main/java/net/taler/wallet/WalletViewModel.kt')
-rw-r--r--wallet/src/main/java/net/taler/wallet/WalletViewModel.kt22
1 files changed, 7 insertions, 15 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/WalletViewModel.kt b/wallet/src/main/java/net/taler/wallet/WalletViewModel.kt
index fc17c7c..c16b6fc 100644
--- a/wallet/src/main/java/net/taler/wallet/WalletViewModel.kt
+++ b/wallet/src/main/java/net/taler/wallet/WalletViewModel.kt
@@ -47,16 +47,13 @@ class WalletViewModel(val app: Application) : AndroidViewModel(app) {
val devMode = MutableLiveData(BuildConfig.DEBUG)
val showProgressBar = MutableLiveData<Boolean>()
- private var activeGetBalance = 0
-
private val walletBackendApi = WalletBackendApi(app, {
- activeGetBalance = 0
- loadBalances()
- pendingOperationsManager.getPending()
- }) {
- Log.i(TAG, "Received notification from wallet-core")
loadBalances()
- pendingOperationsManager.getPending()
+ }) { payload ->
+ if (payload.getString("type") != "waiting-for-retry") {
+ Log.i(TAG, "Received notification from wallet-core: ${payload.toString(2)}")
+ loadBalances()
+ }
}
private val mapper = ObjectMapper()
@@ -65,8 +62,7 @@ class WalletViewModel(val app: Application) : AndroidViewModel(app) {
val withdrawManager = WithdrawManager(walletBackendApi)
val paymentManager = PaymentManager(walletBackendApi, mapper)
- val pendingOperationsManager: PendingOperationsManager =
- PendingOperationsManager(walletBackendApi)
+ val pendingOperationsManager = PendingOperationsManager(walletBackendApi)
val historyManager = HistoryManager(walletBackendApi, mapper)
val refundManager = RefundManager(walletBackendApi)
@@ -77,14 +73,10 @@ class WalletViewModel(val app: Application) : AndroidViewModel(app) {
@UiThread
fun loadBalances() {
- if (activeGetBalance > 0) {
- return
- }
- activeGetBalance++
showProgressBar.value = true
walletBackendApi.sendRequest("getBalances", null) { isError, result ->
- activeGetBalance--
if (isError) {
+ Log.e(TAG, "Error retrieving balances: ${result.toString(2)}")
return@sendRequest
}
val balanceList = mutableListOf<BalanceItem>()