RX如何根据错误类型返回Throwable或Object

问题描述

我有一个返回Observable的方法在这种情况下,如果发生错误,我需要检查错误类型,对于某些特定的错误,我需要返回MyObject而不是错误

示例:

    override fun getSomething(param: String): Observable<State> {
        return someInterface.getSingleResult(param)
            .flatMapObservable {
                when(something) {
                    true -> {
                        Observable.just(State.ACTIVE)
                    }
                    false -> {
                        Observable.just(State.PAUSED)
                    }
                }
            }
            .onErrorReturn {
                 if(it is Something) {
                      State.INACTIVE
                 } else {
//                    returns Throwable  <- don;t kNow how to handle this
                 } 
            } 
    }

解决方法

我不确定我做对了吗,但是以下内容对您有用吗?

content_search = es.search(index="professor",body={
"query": {
"bool": {
  "must": [
       {
      "terms": 
          {
        "BusinessArea.name.keyword": ["Research","Accounting"]
          }
       },{
       "terms": 
              {
                "Role.name.keyword": ["Developer","Tested"]
              }
      }
  ]
},"filter": [
    {
      "term": {
        "Location.keyword": "NY"
      }
    }
  ]