Size: a a a

2020 October 01

DS

Dzmitry Sobolevsky in Dagger 2
Евгений Кравчина
Доброе утро, делаю сохранение логов вбазу для timber, сделал отдельный tree в который передаю интерактор для сохранения логов, у меня в LoggerModule провайдится интерактор и репозиторий для этого tree, как правильно сделать так что бы наружу видно было только мой tree а интерактор и репозиторий были не доступны?
вы прячете работу с timber за интерфейсом в Вашем приложении?
источник

ЕК

Евгений Кравчина... in Dagger 2
за интерфейсом не получиться, потому что нужно прокидывать класс Tree, или сделать интерфейс который будет предоставлять этот tree?
источник

DS

Dzmitry Sobolevsky in Dagger 2
Вам нужно использовать tree в вашей бизнес логике?
источник

ЕК

Евгений Кравчина... in Dagger 2
tree используется в InitializerModule для инициализации timber, в зависимости от конфигурации разные tree передаются
tree ложит в базу все логи, и есть логика на одном экране отправки логов но там используется только репозиторий логов, tree там не нужен
источник
2020 October 06

RC

Roman Chumachenko in Dagger 2
Ребят, такой вопрос: всюду вижу, что инитят зависимые компоненты в onCreate фрагмента/активити, если же мне нужно передать компоненту в пользование объект, который я собираю из данных бд и сети (то есть он потенциально долго "собирается"), зазорно ли сделать создание такого компонента по готовности необходимого объекта-зависимости?

Иными словами: я где-то ошибся на этапе проектирования архитектуры или же это обычное дело?
источник

S

Sergey S. in Dagger 2
Roman Chumachenko
Ребят, такой вопрос: всюду вижу, что инитят зависимые компоненты в onCreate фрагмента/активити, если же мне нужно передать компоненту в пользование объект, который я собираю из данных бд и сети (то есть он потенциально долго "собирается"), зазорно ли сделать создание такого компонента по готовности необходимого объекта-зависимости?

Иными словами: я где-то ошибся на этапе проектирования архитектуры или же это обычное дело?
Прочитал 3 раза, но не понял
источник

IG

Ilya Gulya in Dagger 2
Roman Chumachenko
Ребят, такой вопрос: всюду вижу, что инитят зависимые компоненты в onCreate фрагмента/активити, если же мне нужно передать компоненту в пользование объект, который я собираю из данных бд и сети (то есть он потенциально долго "собирается"), зазорно ли сделать создание такого компонента по готовности необходимого объекта-зависимости?

Иными словами: я где-то ошибся на этапе проектирования архитектуры или же это обычное дело?
Смотря для чего используется этот компонент потом
источник

RC

Roman Chumachenko in Dagger 2
Sergey S.
Прочитал 3 раза, но не понял
Окей, давай конкретику просто приведу. Есть interface Wallet, за абстракциями создаю его конкретную имплементацию, но в конструктор нужны данные, которые получить могу только асинхронно - из рума и сетевых запросов. В итоге обьект не могу просто так собрать, он у меня приходит в обертке Single. Выходит, что я его должен ждать, блочить весь флоу, завязанный на компоненте, который еще не создан
источник

IG

Ilya Gulya in Dagger 2
Вообще выглядит как архитектурная проблема
источник

RC

Roman Chumachenko in Dagger 2
Ilya Gulya
Вообще выглядит как архитектурная проблема
Мне тоже так кажется, а понять, куда копать, пока не могу
источник

IG

Ilya Gulya in Dagger 2
Roman Chumachenko
Окей, давай конкретику просто приведу. Есть interface Wallet, за абстракциями создаю его конкретную имплементацию, но в конструктор нужны данные, которые получить могу только асинхронно - из рума и сетевых запросов. В итоге обьект не могу просто так собрать, он у меня приходит в обертке Single. Выходит, что я его должен ждать, блочить весь флоу, завязанный на компоненте, который еще не создан
Ну получается что Wallet тоже нужно получать асинхронно
источник

IG

Ilya Gulya in Dagger 2
Думаю инжектить нужно WalletProvider, который отдаёт Single<Wallet>
источник

IG

Ilya Gulya in Dagger 2
А внутри уже кешировать этот Wallet для конкретного Flow
источник

RC

Roman Chumachenko in Dagger 2
Ilya Gulya
Думаю инжектить нужно WalletProvider, который отдаёт Single<Wallet>
Угу, спасибо, буду думать над этим
источник

IG

Ilya Gulya in Dagger 2
Асинхронно строить граф зависимостей это точно мимо
источник

RC

Roman Chumachenko in Dagger 2
Ilya Gulya
Асинхронно строить граф зависимостей это точно мимо
Вот да, дичь, как по мне
источник
2020 October 08

ИЧ

Иван Чепёлкин... in Dagger 2
Roman Chumachenko
Ребят, такой вопрос: всюду вижу, что инитят зависимые компоненты в onCreate фрагмента/активити, если же мне нужно передать компоненту в пользование объект, который я собираю из данных бд и сети (то есть он потенциально долго "собирается"), зазорно ли сделать создание такого компонента по готовности необходимого объекта-зависимости?

Иными словами: я где-то ошибся на этапе проектирования архитектуры или же это обычное дело?
А почему бы не сделать ленивую инъекцию? В даггере есть lazy при создании объекта. Просто дождись всех своих запросов и обратись к объекту
источник

RC

Roman Chumachenko in Dagger 2
Иван Чепёлкин
А почему бы не сделать ленивую инъекцию? В даггере есть lazy при создании объекта. Просто дождись всех своих запросов и обратись к объекту
Это вариант. Я вот думаю теперь об этом. С другой стороны, я получу нужный инстанс, а его получать нужно преимущественно для инжекта в юзкейсы -> тогда нужно Lazy инжектить, я правильно понимаю?
источник

ИЧ

Иван Чепёлкин... in Dagger 2
Roman Chumachenko
Это вариант. Я вот думаю теперь об этом. С другой стороны, я получу нужный инстанс, а его получать нужно преимущественно для инжекта в юзкейсы -> тогда нужно Lazy инжектить, я правильно понимаю?
Не могу точно ответить на твой вопрос. Попробуй это вариант)
источник

RC

Roman Chumachenko in Dagger 2
Иван Чепёлкин
Не могу точно ответить на твой вопрос. Попробуй это вариант)
Надо подумать об этом, спасибо
источник