我怎么能返回一个响应,如果它依赖于一个单一的对象?



我是新的响应式编程,我需要帮助来理解这个场景。

@autowired
private e;
private Mono<b> method1(list<a> object1){

b object2 = new b();
c object3 = new c();
f object5 = new f();
for (a obj : object1) {
Mono<d> object4 = e.getD(obj.getSomething(), obj.getSomething2());
//I need stop this mapping when a condition is Meet and continue the logic downstream 
object4.map(mapper->{
int status= mapper.getStatus();
if(status == 200){
object2.setSomethingElse(mapper.getValue1());
object3.setSomethingElse(mapper.getValue2());
//do something and stop execution
object5.setSomethingElse2(mapper.getValue3());
}
//if that condition is not meet then continue
//more logic doing other set to other values of object2 and 3
});
}
object3.setF(object5);
object2.setB(object3);
return Mono.just(object2);
}

问题是,当我映射到循环中,我需要返回一个响应,但我不想在那一刻做,我想循环结束映射依赖对象的所有值,然后继续执行方法。我希望有人能理解我。我再说一遍,我是新的响应式编程,所以我不知道我做错了什么。

Mono.block()将在计算完成后返回响应。

下面的代码应该可以工作。

return Mono.just(object2).block();

最新更新