如何在 Mutiny 中按顺序 运行 事件

How to run event sequentially in Mutiny

我在 Java 11.

中使用 Quarkus 框架内的 Mutiny 库

我想知道哪个是 运行 将多个事件按顺序存储到 Multi 对象中的最佳方式。我将在下面的类似 java 的伪代码中描述我的问题:

for(P1 p1 : params1){
  for(P2 p2 : params2){
    multiObject.add(functionThatRetunsUni(p1, p2))
  }
}
multiObject.runAll().sequentially();

我需要按顺序开发操作,因为伪代码中描述的函数将实体保存在数据库中,所以可能是两次调用该方法需要保存同一个实体。

我不知道最好的方法,但我倾向于对 运行 几个 Uni 按顺序使用 builder object

// I'm just assuming the return type of functionThatReturnsUni is Uni<String> for this brief example
Builder<String> builder = Uni.join().builder();

for (P1 p1 : params1){
    for (P2 p2 : params2){
        builder.add(functionThatReturnsUni(p1, p2));
    }
}

return builder.joinAll().andFailFast();