Как я знаю, Kotlin генерирует геттеры при первом вызове класса. Так, например, следующий код всегда будет давать мне один и тот же ответ:
val instance
get() = getFromDb() ?: MyData()
Если есть экземпляр, не равный нулю MyData
, он будет выдавать этот экземпляр все время, и если результат из БД null, я всегда получу новый экземпляр MyData
. Я могу ошибаться здесь, так что поправьте меня, если я.
Вопрос в том, как я могу обновить значение геттера? Т.е. большую часть времени я хочу получить данные из базы данных, но после выхода из системы я хочу запросить данные из БД или просто дать мне новый экземпляр еще раз.