Skip to content

Instantly share code, notes, and snippets.

@anibalbastiass
Created January 3, 2020 19:15
Show Gist options
  • Save anibalbastiass/38bef5e81e41fe4dbfd5667c2330cc8a to your computer and use it in GitHub Desktop.
Save anibalbastiass/38bef5e81e41fe4dbfd5667c2330cc8a to your computer and use it in GitHub Desktop.
CurrenciesViewModel.kt
open class CurrenciesViewModel @Inject constructor(
private val getLatestCurrenciesUseCase: GetLatestCurrenciesUseCase
) : BaseViewModel() {
//region Observables
var isLoading: ObservableBoolean = ObservableBoolean(false)
//endregion
//region Live Data
typealias LiveResult<T> = MutableLiveData<Result<T>>
private val getLatestUiCurrenciesLiveData = LiveResult<UiCurrencies>()
fun getLatestCurrenciesLiveData() = getLatestUiCurrenciesLiveData
//endregion
fun getLatestCurrenciesData() {
isLoading.set(true)
getLatestCurrenciesUseCase.execute(
liveData = getLatestUiCurrenciesLiveData,
params = currencySelected.get()?.title ?: String.empty()
)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment