updates to currency API, does not work though

hh
Laurent 6 years ago
parent a74833ac5d
commit 8ddcadfb00
  1. 8
      app/build.gradle
  2. 4
      app/src/main/java/net/pokeranalytics/android/api/CurrencyConverterApi.kt
  3. 13
      app/src/main/java/net/pokeranalytics/android/ui/fragment/data/BankrollDataFragment.kt
  4. 2
      app/src/main/java/net/pokeranalytics/android/util/URL.kt

@ -34,7 +34,7 @@ android {
minSdkVersion 23 minSdkVersion 23
targetSdkVersion 28 targetSdkVersion 28
versionCode 85 versionCode 85
versionName "3.0" versionName "3.0(b1)"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
} }
@ -98,7 +98,7 @@ dependencies {
// Android // Android
implementation 'androidx.appcompat:appcompat:1.0.2' implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.core:core-ktx:1.3.0-alpha02' implementation 'androidx.core:core-ktx:1.4.0-alpha01'
implementation 'com.google.android.material:material:1.1.0' implementation 'com.google.android.material:material:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3' implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0' implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0'
@ -107,7 +107,7 @@ dependencies {
implementation 'com.squareup.retrofit2:retrofit:2.5.0' implementation 'com.squareup.retrofit2:retrofit:2.5.0'
implementation 'com.squareup.retrofit2:converter-gson:2.5.0' implementation 'com.squareup.retrofit2:converter-gson:2.5.0'
implementation 'com.squareup.okhttp3:logging-interceptor:3.9.1' implementation 'com.squareup.okhttp3:logging-interceptor:3.9.1'
implementation 'com.google.code.gson:gson:2.8.5' implementation 'com.google.code.gson:gson:2.8.6'
// Places // Places
implementation 'com.google.android.libraries.places:places:1.1.0' implementation 'com.google.android.libraries.places:places:1.1.0'
@ -118,7 +118,7 @@ dependencies {
implementation 'com.android.billingclient:billing:1.2.2' implementation 'com.android.billingclient:billing:1.2.2'
// Firebase // Firebase
implementation 'com.google.firebase:firebase-core:17.2.3' implementation 'com.google.firebase:firebase-core:17.4.1'
// Crashlytics // Crashlytics
implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1' implementation 'com.crashlytics.sdk.android:crashlytics:2.10.1'

@ -28,7 +28,7 @@ interface CurrencyConverterApi {
if (currencyConverterApi == null) { if (currencyConverterApi == null) {
var serviceEndpoint = URL.API_CURRENCY_CONVERTER val serviceEndpoint = URL.API_CURRENCY_CONVERTER
val httpClient = OkHttpClient.Builder() val httpClient = OkHttpClient.Builder()
@ -75,6 +75,6 @@ interface CurrencyConverterApi {
} }
@GET("convert") @GET("convert")
fun convert(@Query("q") currencies: String, @Query("compact") compact: String = "y"): Call<Map<String, CurrencyConverterValue>> fun convert(@Query("q") currencies: String, @Query("compact") compact: String = "ultra"): Call<Map<String, CurrencyConverterValue>>
} }

@ -26,6 +26,7 @@ import net.pokeranalytics.android.util.extensions.toCurrency
import net.pokeranalytics.android.util.extensions.toRate import net.pokeranalytics.android.util.extensions.toRate
import retrofit2.Call import retrofit2.Call
import retrofit2.Response import retrofit2.Response
import timber.log.Timber
import java.util.* import java.util.*
@ -215,7 +216,7 @@ class BankrollDataFragment : EditableDataFragment(), StaticRowRepresentableDataS
if (System.currentTimeMillis() - lastRefreshRateCall < 10 * 1000 || isRefreshingRate) { if (System.currentTimeMillis() - lastRefreshRateCall < 10 * 1000 || isRefreshingRate) {
return return
} }
lastRefreshRateCall = System.currentTimeMillis() this.lastRefreshRateCall = System.currentTimeMillis()
val currenciesConverterValue = "${bankroll.currency?.code}_${defaultCurrency.currencyCode}" val currenciesConverterValue = "${bankroll.currency?.code}_${defaultCurrency.currencyCode}"
val call = CurrencyConverterApi.getApi(requireContext())?.convert(currenciesConverterValue) val call = CurrencyConverterApi.getApi(requireContext())?.convert(currenciesConverterValue)
@ -224,8 +225,13 @@ class BankrollDataFragment : EditableDataFragment(), StaticRowRepresentableDataS
override fun onResponse(call: Call<Map<String, CurrencyConverterValue>>, response: Response<Map<String, CurrencyConverterValue>>) { override fun onResponse(call: Call<Map<String, CurrencyConverterValue>>, response: Response<Map<String, CurrencyConverterValue>>) {
response.body()?.let { response.body()?.let {
it[currenciesConverterValue]?.value?.let { rate -> it[currenciesConverterValue]?.value?.let { rate ->
Timber.d("rate found = $rate")
onRowValueChanged(rate, BankrollRow.RATE) onRowValueChanged(rate, BankrollRow.RATE)
} ?: run {
Timber.d("no rate for $currenciesConverterValue")
} }
} ?: run {
Timber.d("onResponse> no body in ${response}")
} }
isRefreshingRate = false isRefreshingRate = false
@ -233,13 +239,14 @@ class BankrollDataFragment : EditableDataFragment(), StaticRowRepresentableDataS
} }
override fun onFailure(call: Call<Map<String, CurrencyConverterValue>>, t: Throwable) { override fun onFailure(call: Call<Map<String, CurrencyConverterValue>>, t: Throwable) {
Timber.d("api call failed: ${t.message}")
isRefreshingRate = false isRefreshingRate = false
rowRepresentableAdapter.refreshRow(BankrollRow.REFRESH_RATE) rowRepresentableAdapter.refreshRow(BankrollRow.REFRESH_RATE)
} }
}) })
isRefreshingRate = true this.isRefreshingRate = true
rowRepresentableAdapter.refreshRow(BankrollRow.REFRESH_RATE) this.rowRepresentableAdapter.refreshRow(BankrollRow.REFRESH_RATE)
} }
} }

@ -19,7 +19,7 @@ enum class URL(var value: String) {
SUPPORT_EMAIL("support@pokeranalytics.net"), SUPPORT_EMAIL("support@pokeranalytics.net"),
// CurrencyCode Converter API // CurrencyCode Converter API
API_CURRENCY_CONVERTER("https://free.currencyconverterapi.com/api/v5/"), API_CURRENCY_CONVERTER("https://free.currconv.com/api/v7/"),
// Poker Rumble // Poker Rumble
POKER_RUMBLE("https://www.pokerrumble.net"), POKER_RUMBLE("https://www.pokerrumble.net"),

Loading…
Cancel
Save