diff options
author | Torsten Grote <t@grobox.de> | 2023-01-17 12:19:39 -0300 |
---|---|---|
committer | Torsten Grote <t@grobox.de> | 2023-01-17 12:19:39 -0300 |
commit | 6622f7d7cf6a309af085a2fd1dea21c5ee6826d5 (patch) | |
tree | c1f12a6ecdf7cbea9d7ea8deb284cde7d55a192f /wallet/src/main/java/net/taler/wallet/Utils.kt | |
parent | 9049e305ac376d7e04b8190c9f65f6efe24562b1 (diff) | |
download | taler-android-6622f7d7cf6a309af085a2fd1dea21c5ee6826d5.tar.gz taler-android-6622f7d7cf6a309af085a2fd1dea21c5ee6826d5.tar.bz2 taler-android-6622f7d7cf6a309af085a2fd1dea21c5ee6826d5.zip |
[wallet] Clean up KYC handling a bit
#0007566
Diffstat (limited to 'wallet/src/main/java/net/taler/wallet/Utils.kt')
-rw-r--r-- | wallet/src/main/java/net/taler/wallet/Utils.kt | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/wallet/src/main/java/net/taler/wallet/Utils.kt b/wallet/src/main/java/net/taler/wallet/Utils.kt index 7edc694..d5abca2 100644 --- a/wallet/src/main/java/net/taler/wallet/Utils.kt +++ b/wallet/src/main/java/net/taler/wallet/Utils.kt @@ -31,6 +31,9 @@ import androidx.annotation.RequiresApi import androidx.core.content.getSystemService import net.taler.common.Amount import net.taler.common.AmountParserException +import net.taler.wallet.backend.TalerErrorInfo +import net.taler.wallet.transactions.Transaction +import net.taler.wallet.withdraw.ERROR_KYC const val CURRENCY_BTC = "BITCOINBTC" @@ -96,3 +99,12 @@ fun getAmount(currency: String, text: String): Amount? { null } } + +fun <T> Transaction.handleKyc(notRequired: () -> T, required: (TalerErrorInfo) -> T): T { + return error?.let { error -> + when (error.code) { + ERROR_KYC -> required(error) + else -> notRequired() + } + } ?: notRequired() +} |