RxJava 2,我如何在我的条件中放置?

时间:2017-06-09 12:29:36

标签: android realm retrofit rx-java rx-java2

是否有可能取代这个条件:

#imgseasonal{
    width:120px;
    height:120px;
}
.colseasonalfirst{
    width:215px;
    float:left;
    margin-left:0px;
    text-align:center;
}
.colseasonal{
    text-align:center;
    width:215px;
    float:left;
    margin-left:15px;
}

以下帖子的通用版本:

if (_file.exists) {
  //rxjava post
}
else {
  //another type of post
}

我真的不想继续重复自己,也不想使用if循环以避免空指针异常。有没有涉及rx java的奇特选项?

修改

所以我在改装API接口上有两个observable。

service.setSolicitation("Berlin", getString(R.string.api_key))
.subscribeOn(Schedulers.io())
// Read results in Android Main Thread (UI)
.observeOn(AndroidSchedulers.mainThread())
.subscribe(this::processError);

@POST("solicitation/create ")
Observable<Solicitation> createSolicitation(@Query("X-Authorization") String apiKey, @Body Solicitation solicitation);

为什么我有两个同样的观察者?因为如果文件存在则使用一个,而如果文件不存在则使用另一个文件。

因此,我需要检查条件@Multipart @POST("solicitation/create") Observable<Solicitation> uploadFileMap( @Query("X-Authorization") String apiKey, @PartMap() Map<String, RequestBody> partMap, @Part MultipartBody.Part file);

我想简化一切,而不是必须处理多个if语句..(已经有一个检查我们是否在线,如果没有在线添加到队列)。所以我正在筑巢,这太可怕了。

1 个答案:

答案 0 :(得分:0)

使用实际的if-else,但只使用不同的部分:

vuex