и вызывать и быть довольным, но не бьют ли за такое по рукам?)
конечно не тягать по всей цепочек объект клиента. я хз какой у тебя юзкейс, я делаю так: у меня есть к примеру ремоутдатасорс, локалдатасорс, у каждой из них могут быть свои источники данных (не называю датасорс, потому что локалдатасорс может под собой использовать рум, а может рилм, а может еще какую-то обертку над SQLite или несколько сразу, но данные типа с одной локалдатасорса возвращаются все равно, то же самое с ремоутдатасорсом, типа а вдруг я буду использовать не окхттпклиент или обертку помимо ретрофита, неважно) далее есть репозиторий в котором у меня логика скачивания + сохранения в кэш и подобное, отсюда можно послать например локалдатасорсу запрос на удаление всех данных (типа челик вышел из юзер аккаунта своего)) юзкейс делает к репозиторую запрос на какие-то конкретные данные, тут я могу стаковать квери, фильтры и прочее а вьюмодель просто получает их и я их могу как-то еще замапить / зафильтровать и фрагменту скормить как захочу, к примеру список возвращать по одному, а могу сразу все (используя флоу))
Ну в датасорсе должна быть зависимость клиента, обеспечивать ее можно с помощью DI
Обсуждают сегодня