то репозитории из нескольких других модулей должны заново загрузить свои данные с учётом изменений в таблице. Я создал класс в котором репозитории регистрируют листенеры, а тот первый репозиторий отправляет в него события об изменениях таблицы и класс оповещает остальные репозитории. Это работает, но выглядит как-то не очень, может есть более красивый способ реализовать такое?
Room использует для этого триггеры |(Lychee — тоже, но более гибко)|
Код личи оказался для меня сложноват, а рум как я понял триггерами заполняет временную таблицу и проверяет ее после транзакций, а дальше по сути те же листенеры, но более близкие к бд. Подход, который я использовал не является какой-то плохой практикой? Просто в некоторых статьях состояние у репозитория хейтят вроде как
Нормальная практика, просто нужно обеспечить единственный экземпляр. Шареды так делают, хоть это и не база.
Обсуждают сегодня