Vert.x RxJava2为Handler返回null <asyncresult <void>&gt;

时间:2017-11-07 20:49:40

标签: rx-java2 vert.x

我正在努力转换以下代码段,即将resultHandler转换为观察者并订阅Single,转换为RxJava2,它不支持null。

@Override
  public WikiDatabaseService createPage(String title, String markdown, Handler<AsyncResult<Void>> resultHandler) {
    dbClient.rxUpdateWithParams(sqlQueries.get(SqlQuery.CREATE_PAGE), new JsonArray().add(title).add(markdown))
      .map(res -> (Void) null)
      .subscribe(SingleHelper.toObserver(resultHandler));
    return this;
  }

有人能提供任何建议吗?

1 个答案:

答案 0 :(得分:0)

toCompletableCompletableHelper.toObserver

一起使用
@Override
public WikiDatabaseService createPage(String title, String markdown, Handler<AsyncResult<Void>> resultHandler) {
  dbClient.rxUpdateWithParams(sqlQueries.get(SqlQuery.CREATE_PAGE), new JsonArray().add(title).add(markdown))
    .toCompletable()
    .subscribe(CompletableHelper.toObserver(resultHandler));
  return this;
}

确保您的项目依赖项包含Vert.x RxJava2模块:

<dependency>
  <groupId>io.vertx</groupId>
  <artifactId>vertx-rx-java2</artifactId>
</dependency>