返回另一个Observable onError

时间:2019-05-31 14:37:06

标签: kotlin rx-java

我正在尝试为我的应用程序定义数据流。

当我调用数据层时,可能会发生两件事:

1-呼叫数据库->有数据->返回Observable<Data>

2-调用数据库->没有数据->调用API->填充数据库->返回Observable<Data>

这是我的代码:

override fun getContact(): Observable<Contact> {
    return dbService.getContactDb()
      .onErrorResumeNext( populateContact() )
  }

private fun populateContact(): Observable<Contact> {
    return apiService.getContact()
      .flatMap {
        dbService.insertContactDb(it)
          .toSingle { it }
          .toObservable()
      }
  }

在第二种情况下,当调用populateContact()时,服务甚至没有调用API。

这里有什么问题的想法吗?

0 个答案:

没有答案