Не могу вернуть значение из subscribe
Не могу вернуть значение из subscribe
маппер
internal class StreamToItemMapper : (List<Stream>) -> (List<StreamItem>) {
private val streamsApi = App.retrofit.create(StreamsApi::class.java)
private val chatToItemMapper = ChatToItemMapper()
override fun invoke(streams: List<Stream>): List<StreamItem> {
return streams.map { stream ->
StreamItem(
category = stream.category,
chats = streamsApi.getStreamTopics(stream.streamId).map { it.topics }.map(chatToItemMapper)
.observeOn(AndroidSchedulers.mainThread()).subscribeBy(return)
)
}
}
}
viewModel
searchSubject
.subscribeOn(Schedulers.io())
.distinctUntilChanged()
.debounce(250, TimeUnit.MILLISECONDS, Schedulers.io())
.switchMap { searchQuery -> streamsImpl.loadStreams(searchQuery, subscribedFragment) }
.map(streamToItemMapper)
.observeOn(AndroidSchedulers.mainThread())
.doOnSubscribe { _streamsScreenState.postValue(StreamsScreenState.Loading) }
.subscribeBy(
onNext = { _streamsScreenState.value = StreamsScreenState.Result(it) },
onError = { _streamsScreenState.value = StreamsScreenState.Error(it) }
)
.addTo(compositeDisposable)