DevBase - Android 1.0.9 BETA
Make generic response base, you can custom your response base with your SerializedName GSON
Example :
Data Class
data class DevResponseDynamicExample<T>(
@SerializedName("success")
override val success: Int?,
@SerializedName("message")
override val message: String?,
@SerializedName("data")
override val data: T?
) : DevResponseDynamicInterface<T>
API Endpoint
@FormUrlEncoded
@POST("api/")
fun login(
@Field("username") username: String,
@Field("password") password: String
): Single<DevResponseDynamicExample<List<DataUser>>>
RxJava
// for init state
fun Single<*>.observeDynamic(state: MutableLiveData<DevStateDynamic>){}
// for observer
inline fun <reified T> MutableLiveData<DevStateDynamic>.observerDynamic()