Cicero
09/06/2021, 12:31 PMsealed interface IExercise {
val id: Int
}
sealed class Exercise {
@Serializable
data class Remote(
override val id: Int,
) : IExercise {
fun toCacheEntity() = DB(
id = id,
)
}
data class Model(
val isFavorite: Boolean,
override val id: Int,
) : IExercise {
fun toRemote() = Remote(
id = id,
)
}
data class DB(
override val id: Int,
) : IExercise, RealmObject() {
fun toModel(isFavorite: Boolean = false) = Model(
id = id, isFavorite = isFavorite,
)
}
}
ursus
09/11/2021, 1:31 AMCicero
09/11/2021, 10:08 AMursus
09/11/2021, 8:07 PMCicero
09/11/2021, 8:15 PM