From bedd7b05eb0b5ee69cd5f35b283e713cf8af29dc Mon Sep 17 00:00:00 2001 From: Torsten Grote Date: Thu, 14 May 2020 10:36:29 -0300 Subject: [wallet] render transaction list from new transactions API --- .../wallet/transactions/TransactionManager.kt | 23 +++++++++------------- 1 file changed, 9 insertions(+), 14 deletions(-) (limited to 'wallet/src/main/java/net/taler/wallet/transactions/TransactionManager.kt') diff --git a/wallet/src/main/java/net/taler/wallet/transactions/TransactionManager.kt b/wallet/src/main/java/net/taler/wallet/transactions/TransactionManager.kt index 850a3bb..81d53b9 100644 --- a/wallet/src/main/java/net/taler/wallet/transactions/TransactionManager.kt +++ b/wallet/src/main/java/net/taler/wallet/transactions/TransactionManager.kt @@ -16,6 +16,7 @@ package net.taler.wallet.transactions +import android.util.Log import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData import com.fasterxml.jackson.databind.ObjectMapper @@ -24,13 +25,12 @@ import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch import net.taler.wallet.backend.WalletBackendApi -import net.taler.wallet.history.History -import net.taler.wallet.history.HistoryEvent import org.json.JSONObject +import java.util.* sealed class TransactionsResult { object Error : TransactionsResult() - class Success(val transactions: History) : TransactionsResult() + class Success(val transactions: List) : TransactionsResult() } class TransactionManager( @@ -43,14 +43,15 @@ class TransactionManager( val progress: LiveData = mProgress var selectedCurrency: String? = null - var selectedEvent: HistoryEvent? = null + var selectedTransaction: Transaction? = null private val mTransactions = MutableLiveData() val transactions: LiveData = mTransactions fun loadTransactions() { mProgress.postValue(true) - walletBackendApi.sendRequest("getHistory", null) { isError, result -> + val request = JSONObject(mapOf("currency" to selectedCurrency)) + walletBackendApi.sendRequest("getTransactions", request) { isError, result -> scope.launch(Dispatchers.Default) { onTransactionsLoaded(isError, result) } @@ -62,15 +63,9 @@ class TransactionManager( mTransactions.postValue(TransactionsResult.Error) return } - val transactions = History() - val json = result.getJSONArray("history") - val currency = selectedCurrency - for (i in 0 until json.length()) { - val event: HistoryEvent = mapper.readValue(json.getString(i)) - if (event.showToUser && (currency == null || event.isCurrency(currency))) { - transactions.add(event) - } - } + Log.e("TEST", result.toString(2)) // TODO remove once API finalized + val transactionsArray = result.getString("transactions") + val transactions: LinkedList = mapper.readValue(transactionsArray) transactions.reverse() // show latest first mProgress.postValue(false) mTransactions.postValue(TransactionsResult.Success(transactions)) -- cgit v1.2.3