From 77cd01bf1a23fc218d265a97925624f066c3236b Mon Sep 17 00:00:00 2001 From: Torsten Grote Date: Wed, 22 Feb 2023 14:29:26 -0300 Subject: [wallet] show fees for peer pull credit --- .../java/net/taler/wallet/exchanges/ExchangeManager.kt | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'wallet/src/main/java/net/taler/wallet/exchanges') diff --git a/wallet/src/main/java/net/taler/wallet/exchanges/ExchangeManager.kt b/wallet/src/main/java/net/taler/wallet/exchanges/ExchangeManager.kt index 5a4c6c2..4a57068 100644 --- a/wallet/src/main/java/net/taler/wallet/exchanges/ExchangeManager.kt +++ b/wallet/src/main/java/net/taler/wallet/exchanges/ExchangeManager.kt @@ -17,6 +17,7 @@ package net.taler.wallet.exchanges import android.util.Log +import androidx.annotation.WorkerThread import androidx.lifecycle.LiveData import androidx.lifecycle.MutableLiveData import kotlinx.coroutines.CoroutineScope @@ -81,13 +82,20 @@ class ExchangeManager( } fun findExchangeForCurrency(currency: String): Flow = flow { - val response = api.request("listExchanges", ExchangeListResponse.serializer()) + emit(findExchange(currency)) + } + + @WorkerThread + suspend fun findExchange(currency: String): ExchangeItem? { var exchange: ExchangeItem? = null - response.onSuccess { exchangeListResponse -> + api.request( + operation = "listExchanges", + serializer = ExchangeListResponse.serializer() + ).onSuccess { exchangeListResponse -> // just pick the first for now exchange = exchangeListResponse.exchanges.find { it.currency == currency } } - emit(exchange) + return exchange } } -- cgit v1.2.3