@maximsemin23

Как ограничить значение переменной в data class-е?

Вот есть у меня data class:
// Entity of query
@Entity(tableName = TABLE_NAME)
data class HistoryItem(
    @PrimaryKey(autoGenerate = true)
    val id: Int,

    @ColumnInfo(name = SEARCHED_DOMAIN)
    val searchedDomain: String,

    @ColumnInfo(name = STATUS)
    val status: Int,
)

И статусы:
object Statuses { 
    const val FAILURE = 0
    const val NOT_FOUND = 1
    const val FOUND = 2
}

Как сделать так, чтобы int status из HistoryItem мог быть установлен только на значение из Statuses?
  • Вопрос задан
  • 101 просмотр
Решения вопроса 1
iLLuzor
@iLLuzor
Java, Kotlin, Android Developer
Использвать enum вместо инта.
Вроде последняя версия room умеет автоматом работать с enum. Если нет, можно написать адаптер.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы