对于每个Event
,我想要发送并验证它。我有这段代码:
fun process(): Completable =
eventsDao.findAll()
.flatMapCompletable(this::sendEventToServer)
.andThen(this::validate) //Error here
fun send(event: Event): Completable =
//code
fun validate(event: Event): Completable =
//code
错误:(14,18)无法使用以下函数调用以下函数 提供的参数:@CheckReturnValue @SchedulerSupport public final 有趣然后(p0:((CompletableObserver) - >单位)!):可以完成! 在io.reactivex.Completable
中定义@CheckReturnValue @SchedulerSupport公共最终乐趣 然后(p0:((MaybeObserver) - > Unit)!): 也许≤(??? .. ???)&GT ;!在io.reactivex.Completable
中定义@CheckReturnValue @SchedulerSupport公共最终乐趣 然后(p0:((观察员) - >单位)!): 观察到≤(??? .. ???)&GT ;!在io.reactivex.Completable
中定义等等
问题在于:
.andThen(this::validate)
我自己没有event
。我如何链接这些Completable
?
答案 0 :(得分:1)
我找到了答案:
fun process(): Completable =
eventsDao.findAll()
.flatMapCompletable(this::processEvent)
fun processEvent(event: Event) =
send(event).concatWith(validate(event))
我真的很感激任何建议或更好的方式来做到这一点