Вложенные интеракторы или нет

Есть 2 интерактора AuthInteractor и UserInteractor После авторизации нужно указать(задать) текущего пользователя через UserInteractor(потому что приложение мультиаккаунтное, и можно залогинится с разных акк, после логина автоматически должен становится активным пользователем).

Сейчас, AuthViewModel отправляет команду авторизации в AuthInteractor, после получения авторизации(там есть информация об ID пользователя) AuthViewModel отправляет команду установки текущего пользователя в UserInteractor. Такое взаимодействие правильное? Или создать третий интерактор (SuperAuthInteractor) в котором есть AuthInteractor и UserInteractor и все делать внутри SuperAuthInteractor?


Ответы (1 шт):

Автор решения: Alex_Skvortsov

Архитектура - это штука, которая позволяет быстрее и удобнее разрабатывать. Прикиньте на глаз, какую выгоду Вам может принести переделка логики интеракторов, и сколько такая переделка займет времени и сил. Если считаете, что оно того стоит, то делайте, иначе - оставляйте как есть.

Конкретно в случае с авторизацией, я, например, никаких выгод не вижу. Но если в любом случае планируете крупные работы с авторизацией (ее полный рефакторинг, например), то лучше создать SuperAuthInteractor. Однообразие стиля кода - это тоже плюс.

→ Ссылка