Dyno
Ну а где отписаться, в onSuccess? Там как-то странно смотрится
Тони
Намути эту штуку с диспосибл в презентере, а тут убери
Тони
Или какая у тебя связка?
Dyno
Вью > Презентер > Репа
Тони
Ну а вообще вот идея. Не знаю правильно нет. Вью вызывает ондестрой , ты вызываешь метод презентера , который дёргает репу и отписывается
Dyno
Да, наверное так и надо сделать
Тони
Работать точно будет
Тони
А вообще очень крутая связки с use case
Тони
Тоесть к репозиторию ещё и юзкейс добавляется
Тони
В итоге получается клин
Dyno
Только вопрос как к CompositeDisposable теперь доступ из репы получить. Не тащить же за собой :/ А публичным делать ну тоже как-то что-то не то
Тони
Не понял.
Тони
У тебя запрос в репозитори.
Dyno
Ну если CompositeDisposable теперь будет во вью
Тони
Нет.
Тони
Ты не понимаешь немного)))
Тони
Для чего он тебе нужен?) Это композит?
Тони
А зачем подписываться
Dyno
А зачем подписываться
Студия так хочет.
Dyno
Сек
Тони
Ну вот я тебе говорю тогда.
Тони
Создай метод в репозитории
Dyno
Тони
Назови его destroy
Тони
В нем напиши dispose
Тони
И вызывай его в презентере , а презентер вызывай когда ондестрой во вью
Тони
Понимаешь?
Тони
Создай метод в презентере и в репозитории
Dyno
тогда обратно тащить композит придется
Тони
В репе диспоз делай, в презентере просто дергай, во Вью дергай презентер
Dyno
из репы в презнтер из презентера во вью
Тони
Нет.
Тони
Ты из фрагмента или активности вызываешь презентер
Тони
А презентер вызывает репу
Тони
У тебя так работает?
Dyno
из активности
Dyno
Вью > Презентер > Репа
Dyno
и назад
Тони
А тащить зачем что-то
Тони
Обратно ничего не надо !
Dyno
ну а как я отпишусь? чтобы отписаться надо же к композиту обратиться. а если он у нас в репе?
Тони
В репе обратись.
Тони
Отписка в репе!!!!
Тони
Отписка должна быть в репозитории. Просто этот метод вызывается в презентере. А метод презентера во Вью. Всё.
Dyno
а, то есть в ондестрое бежать до репы и отписываться :/
Тони
Я тебе 10 минут об этом говорю.
Тони
а, то есть в ондестрое бежать до репы и отписываться :/
Тони
По хорошему есть юзкейс и есть репозиторий
Тони
Но к этому нужно прийти самому
Тони
Поэтому изучай рх, пробуй, пытайся
Mike
ну а как я отпишусь? чтобы отписаться надо же к композиту обратиться. а если он у нас в репе?
Возвращай из репы обзёрвабл. У кого жизненный цикл — тот и отписывается.
Dyno
я же обсервбл в репе обрабатываю
Mike
я же обсервбл в репе обрабатываю
Я и говорю, не надо так
Dyno
Я и говорю, не надо так
так вот такого рода штуки в репе же должны быть. или где? ://
Ivansuper
Используй java.util.concurrent.Future
Ivansuper
Будет mBackToTheFuture.
Ivansuper
Извините
Dyno
😁
Подписки там где и отписки
В презентере
Dyno
чего? презентер это только посредник. он вообще ничего не делает кроме как адресует.. чего я не понимаю?
Dyno
🤔
Ivansuper
Репо не должно знать о презентере
Ivansuper
Ты из репо тянешь шланг, в который в презентере втыкаешь форсунку
Dyno
Репо не должно знать о презентере
ну с помощью даггера можно сделать было, да
Ivansuper
Нет, можно было сделать без даггера руками
Konstantin
чего? презентер это только посредник. он вообще ничего не делает кроме как адресует.. чего я не понимаю?
чего не понимаешь - того что надо возвращать поток от датасорса, а подписывать на поток в клиентском коде
Konstantin
даже юзер инпут в некотором смысле - датасорс событий юи
Dyno
ну чтобы стянуть данные нужен вот такой код, правильно? mApiRandomUser.getRandomUsers(ApiRandomUser.USERS_PER_PAGE) .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .map(new Function<ListUsersResponse, List<User>>() { @Override public List<User> apply(ListUsersResponse listUsersResponse) throws Exception { return getUsers(listUsersResponse.getResults()); } }) .subscribe(new Consumer<List<User>>() { @Override public void accept(List<User> users) throws Exception { mBackToPresenter.inflateUsers(users); } }, new Consumer<Throwable>() { @Override public void accept(Throwable throwable) throws Exception { Log.d("devptag", "accept: "); } });
Dyno
так репа же стягивает. а как иначе я это оберну, я не совсем понимаю
Ivansuper
Не там подписываешься