diff options
author | Torsten Grote <t@grobox.de> | 2024-01-08 17:26:16 -0300 |
---|---|---|
committer | Torsten Grote <t@grobox.de> | 2024-01-08 17:51:53 -0300 |
commit | 0f32834dbbea6737793a7b55190ab58fdfa0bc3d (patch) | |
tree | 379499a3acb47ace2ad8d0d5588e6dce1ff34fdb /wallet/src/main/java/net/taler/wallet/exchanges | |
parent | 22029cd23b4e21df568a87dd9f759e7ccb3880fb (diff) | |
download | taler-android-0f32834dbbea6737793a7b55190ab58fdfa0bc3d.tar.gz taler-android-0f32834dbbea6737793a7b55190ab58fdfa0bc3d.tar.bz2 taler-android-0f32834dbbea6737793a7b55190ab58fdfa0bc3d.zip |
[wallet] support withdraw-exchange URI
Diffstat (limited to 'wallet/src/main/java/net/taler/wallet/exchanges')
-rw-r--r-- | wallet/src/main/java/net/taler/wallet/exchanges/ExchangeManager.kt | 18 |
1 files changed, 18 insertions, 0 deletions
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 2048b7c..0e16d7a 100644 --- a/wallet/src/main/java/net/taler/wallet/exchanges/ExchangeManager.kt +++ b/wallet/src/main/java/net/taler/wallet/exchanges/ExchangeManager.kt @@ -37,6 +37,11 @@ data class ExchangeListResponse( val exchanges: List<ExchangeItem>, ) +@Serializable +data class ExchangeDetailedResponse( + val exchange: ExchangeItem, +) + class ExchangeManager( private val api: WalletBackendApi, private val scope: CoroutineScope, @@ -104,6 +109,19 @@ class ExchangeManager( return exchange } + @WorkerThread + suspend fun findExchangeByUrl(exchangeUrl: String): ExchangeItem? { + var exchange: ExchangeItem? = null + api.request("getExchangeDetailedInfo", ExchangeDetailedResponse.serializer()) { + put("exchangeBaseUrl", exchangeUrl) + }.onError { + Log.e(TAG, "Error getExchangeDetailedInfo: $it") + }.onSuccess { + exchange = it.exchange + } + return exchange + } + fun addDevExchanges() { scope.launch { listOf( |