Инжинигер
В ViewModel нужно собрать данные из бд и передать их в адаптер, то что ты делаеш бред кошачий
да, так и есть, делал всё по google samples, но если в Cat() хранить ids щенят, каким боком адаптер преобразует ids в щенят? P.S. в таком случае у адаптера должен быть viewModel? это каша.
Anonymous
Мне надо свой Subscription созадвать ? вместо RxJava2CallAdapterFactory или как?
Chriz
Мне надо свой Subscription созадвать ? вместо RxJava2CallAdapterFactory или как?
Если Success то это 2хх , onError -> Exception из него и можно брать код
Инжинигер
Зачем это делать ? если есть ид есть и кошак
ids щенков = List<Int> он находится в Cat, далее, получаю Cat и передаю его в адаптер(-> onCreateHolder -> bind(cat)). вопрос, как в holder'е преобразовать ids щенков в экземпляры объекта 'щенок'?
Chriz
И ещё что дано, и каков должен быть результат
K1tana
Народ, а что за атрибут app в xml? Что он делает?
Di7aK
позволяет задать параметр для кастомных вью
K1tana
какой параметр?
Di7aK
аттрибут
Alexander
Привет всем. Есть такой вопрос. Как привязать общий ViewModel двух фрагментов к жизненному циклу одного из них. В доках это сделано через активити. Но в этом случае после дестроя ParentFragment SharedViewModel продолжит жить class ParentFragment:Fragment{ override fun onCreate(savedInstanceState: Bundle?) { var viewModel = ViewModelProviders.of(requireActivity()).get(SharedViewModel::class) } } class ChildFragment:Fragmnet{ override fun onCreate(savedInstanceState: Bundle?) { var viewModel = ViewModelProviders.of(requireActivity()).get(SharedViewModel::class) } }
Anonymous
Народ, кто - нибудь делал кастомизацию RxJava2CallAdapterFactory? чтобы ошибки отлавливать?
Anonymous
Я делал
Можешь скинуть исходник?
Unat
Да это было лет 200 назад
Anonymous
А щяс как делаешь?
Unat
Не использую RxJava
Anonymous
Unat
Конечно
Anonymous
Unat
Но там не сложно адаптер сделать
Unat
Просто есть некоторый говнокод, который надо закопипастить из исходников
Unat
нет, у тебя в RxJavaCallAdapterFactory
Anonymous
Такой мусор что аж тошно, добавить добавил, но в процессе еще пару ошибок вылезло и разбираться во всем этом.....
Unat
В котле-то просто, завернул все вызовы репозитория в Either<Model, Exception> и спи спокойно
Anonymous
Зачем CallAdapter, если есть Interceptor?
Он почему то не отлавливает....дебагером пытался ловить не ловиться
Unat
Зачем CallAdapter, если есть Interceptor?
А Interceptor ошибки десериализации ловит?
Aleksey
А Interceptor ошибки десериализации ловит?
Такое лучше в TypeAdapter'ах делать
Anonymous
https://pastebin.com/nFra4aqx
Anonymous
@aa_foo Вот смотри, не ловится и все тут.....
Aleksey
А Interceptor ошибки десериализации ловит?
Ошибки десериализации можно в GsonConverterFactory пулякать еще
Anonymous
Переделывать щяс в корутины уже времени нет
Unat
Ну, не готов отстаивать RxJavaCallAdapterFactory, не помню как оно там в кишках было и какие последствия у парсинга егоров в перехватчике
Aleksey
Я ж не знаю, какой ответ приходит и как ты хочешь его обработать
Unat
можыт там null
Aleksey
Может тебе 502-ая или 305-ая падает
Anonymous
TimeoutSocket
Anonymous
падает
Unat
Так у него Body нет
Unat
чего ты ждал?
Aleksey
TimeoutSocket
Значит, твой запрос не успевает вернуться
Anonymous
И как тогда его поймать?
Unat
Оно, емнип, даже не HttpException и в перехватчик не попадёт
Anonymous
Значит, твой запрос не успевает вернуться
Сервак глючит, хочу уведомление сделать
Unat
кстати....
Aleksey
И как тогда его поймать?
try { chain.proceed(...) } catch(TimeOutException) { // do something }
Anonymous
Будь 5 окон, вручную бы вбил уже давно...А их не мало
Unat
Погоди, дядь, ты шо сделать удумал? Из перехватчика бродкастить ошибку?
Anonymous
try { chain.proceed(...) } catch(TimeOutException) { // do something }
Метод intercept ожидает Response. Чо тогда делать?
Unat
поймал, обработал и бросил дальше
Unat
Ну ля, художник же, видит он так
История помнит как такие художники кончают
Anonymous
catch(e: ...){ ... throw e }
Все равно ожидает Response
Anonymous
поймал, обработал и бросил дальше
Какая разница? я ошибку поймаю, обработаю и дальше пушу. Что тут такого плохого то?
Unat
val response = try { val r = chain.proceed() ... do some stuff ... r }catch()...
Anonymous
val response = try { val r = chain.proceed() ... do some stuff ... r }catch()...
Чота ты мне плохой пример скинул
Anonymous
Anonymous
Вот так надо было
Aleksey
Вот так надо было
Так не надо было 🙁
Anonymous
А в котлине try нужно возращять значение чтоли?
Unat
Бог всё видит, но на такое глаза закрывает
Anonymous
Ни как не могу привыкнуть к лямдам и котлиновскому returnu....
Anonymous
Хочу чтобы компилятор, ругался когда не пишешь return....
Chriz
Это тебе тут посоветовали ErrorHandling в Intereceptor делать или сам додумался ?
Anonymous
Короче все равно не ловит. Interceptor