Skip to content

Instantly share code, notes, and snippets.

@carolinemusyoka
Created September 10, 2020 01:50
Show Gist options
  • Save carolinemusyoka/a944d95cbdc4909c7955d7a8aaccf3c8 to your computer and use it in GitHub Desktop.
Save carolinemusyoka/a944d95cbdc4909c7955d7a8aaccf3c8 to your computer and use it in GitHub Desktop.
data class Resource<out T>(val status: Status, val data: T?, val message: String?) {
companion object {
fun <T> success(data: T): Resource<T> = Resource(status = Status.SUCCESS, data = data, message = null)
fun <T> error(data: T?, message: String): Resource<T> =
Resource(status = Status.ERROR, data = data, message = message)
fun <T> loading(data: T?): Resource<T> = Resource(status = Status.LOADING, data = data, message = null)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment