Skip to content

Instantly share code, notes, and snippets.

@KunalChaubal
Last active June 8, 2020 11:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save KunalChaubal/ba25ef481aab85b4ab06ccc784b91034 to your computer and use it in GitHub Desktop.
Save KunalChaubal/ba25ef481aab85b4ab06ccc784b91034 to your computer and use it in GitHub Desktop.
val selectedBreedLiveData = MutableLiveData<Int>()
fun fetchBreedDetails(): LiveData<String> {
return Transformations.switchMap(selectedBreedLiveData)
{
makeDetailsApiCall(it + 1)
}
}
private fun makeDetailsApiCall(id: Int): LiveData<String> {
val breedDetailsLiveData = fetchDetailsRepo.fetchBreedDetails(id)
return Transformations.map(breedDetailsLiveData) {
when (it.status) {
Resource.Status.SUCCESS -> {
"-------Details-------\n" +
"Name: ${it.data?.name}\n" +
"Bred For: ${it.data?.bredFor}\n" +
"Breed Group: ${it.data?.breedGroup}\n" +
"LifeSpan: ${it.data?.lifeSpan}\n"
}
Resource.Status.ERROR -> {
// Handle Error
null
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment