Size: a a a

ReactiveX - русскоговорящее сообщество

2017 March 09

М

Михаил in ReactiveX - русскоговорящее сообщество
Victor Babenko
Если есть приложение на RxJava 1, имеет ли смысл сейчас его на RxJava 2 обновлять?
не стоит
источник

М

Михаил in ReactiveX - русскоговорящее сообщество
если приложение большое и плотно использует рх, то переход вермя займет
источник

М

Михаил in ReactiveX - русскоговорящее сообщество
а плюсов от такого перехода не так много
источник

AK

Aleksei Korshun in ReactiveX - русскоговорящее сообщество
Vitaliy Babichev
И теперь она флудит объектами не на каждый чих, а через чих :)
Кстати, недавно на медиуме читал, и там пишут, что создавать новый объект на каждый оператор, это норма, это решает иммутабельность, что есть Гуд в функциональном подходе, на сколько это верно, не разбирал, некогда было :)
источник

A

Artur in ReactiveX - русскоговорящее сообщество
Ситуация: идёт поток из моделек (Observable<PhoneContactModel>). В этом потоке идёт около 600 моделек, нужно их же разбить на потоки до 100 моделек и отправить вниз для дальнейшей обработки. Как это сделать?
источник

N

Nick Senchurin in ReactiveX - русскоговорящее сообщество
может изначальный поток разбить на порции?
источник

KZ

Konstantin Zolotov in ReactiveX - русскоговорящее сообщество
Artur
Ситуация: идёт поток из моделек (Observable<PhoneContactModel>). В этом потоке идёт около 600 моделек, нужно их же разбить на потоки до 100 моделек и отправить вниз для дальнейшей обработки. Как это сделать?
один из вариантов buffer, видимо.
источник

A

Artur in ReactiveX - русскоговорящее сообщество
Konstantin Zolotov
один из вариантов buffer, видимо.
тоже так подумал, сейчас пробую, спасибо
источник

A

Artur in ReactiveX - русскоговорящее сообщество
Кейс: приходит список контактов и книжки. Считаю хеш, сравниваю с тем, что в репозитории. В зависимости от этой проверки, мне нужно или отправить контакты на сервер, или ничего не делать.

Контакты отправляются пачками по 100, поэтому обновление хэша в репозитории происходит только в случае, если  успешно прошли все запросы на сервер.

Сейчас я сохраняю состояние в функции, что мне не очень нравится, но кажется лучшим решением, чем пробрасывать тот же хеш через десяток операторов.

Кто как решает подобную задачу?
источник

A

Artur in ReactiveX - русскоговорящее сообщество
источник

AG

Artem Gilmudinov in ReactiveX - русскоговорящее сообщество
.flatMap(aInteger -> cachedPhoneContacts.toList())
.flatMap(aInteger -> mFriendsRepository.checkFriends(cachedPhoneContacts))
источник

AG

Artem Gilmudinov in ReactiveX - русскоговорящее сообщество
во втором флэтмапе опечатка, да?
источник

AG

Artem Gilmudinov in ReactiveX - русскоговорящее сообщество
вроде не Integer там
источник

AG

Artem Gilmudinov in ReactiveX - русскоговорящее сообщество
а вообще по делу сказать нечего) если кто-нибудь знает как решить проблему, буду рад узнать тоже)
источник

AK

Aleksei Korshun in ReactiveX - русскоговорящее сообщество
я делал через 2 таблицы в бд, 1 с тем что уже отправляли, вторая с тем что надо отправить, сначала берем все и проверяем контакты которые изменились или добавились, и их добавляем в таблицу которые надо отправить, как проверили все, берем пачками контакты из только что сделаной таблицы и отправляем, если success то трем их в этой бд и идем к сл пачке
источник

A

Artur in ReactiveX - русскоговорящее сообщество
Artem Gilmudinov
.flatMap(aInteger -> cachedPhoneContacts.toList())
.flatMap(aInteger -> mFriendsRepository.checkFriends(cachedPhoneContacts))
Да, просто крутил - вертел типы и вызовы, перестал обновлять названия аргументов)
источник
2017 March 10

VR

ViTO Rossonero in ReactiveX - русскоговорящее сообщество
как насчет
.flatMap(hash ->
      mFriendsRepository
           .checkFriends(cachedPhoneContacts)
         //логика внутри flatMap
           .doOnSuccess(_ -> mFriendsRepository
                                                   .savePhonesHashCode(hash))
)
источник

A

Artur in ReactiveX - русскоговорящее сообщество
Неплохая идея, попробую
источник

AK

Amir Konovalov in ReactiveX - русскоговорящее сообщество
как корректно отменить запрос, чтобы потом тут же его запустить (но с новыми параметрами)?
источник

KZ

Konstantin Zolotov in ReactiveX - русскоговорящее сообщество
switchMap
источник