收集贴图 来自Flux

问题描述 投票:-1回答:1

我遇到一个奇怪的问题。我知道我已经接近解决方案,但无法解决。

我有一个Flux<ResponseFromServer>,它已过滤并映射到Flux<RequiredState>。一旦有了Flux<RequiredState>-我需要检索一个Map<RequiredState, Int>

到目前为止,我已经尝试过了>

public Mono<Map<RequiredState, Integer>> getDesiredMap(Flux<ResponseFromServer> response) {
        response.transform(this.filterAndTransform()).(.....) 

}

protected Function<Flux<ResponseFromServer>, Flux<RequiredState>> filterAndTransform() {
        return f -> f.filter(responseFromServer -> this.processor.filter(responseFromServer))
                     .map(responseFromServer -> this.processor.convert(responseFromServer)) 
// converts to RequiredState
}
  1. 我已经尝试过collectMultiMap(因为我还需要重复,这些重复最终必须与映射中的现有键合并,并且值基本上只是累加起来,responseFromServer.getValue()::sum
  • 我也尝试在filterAndTransform()中自己计算Map,以添加一个额外的map(..)以将其转换为Flux>,但是从Flux.collectList()开始,如何从最终Flux中获取结果?给我一个List<Map<RequiredState, Integer>>
  • 我如何完成下一个转换?

    任何帮助将不胜感激。

    谢谢!

    我遇到一个奇怪的问题。我知道我已经接近解决方案,但无法解决。我有一个Flux ,它被过滤并映射到Flux 。 ...

    java spring-boot spring-webflux project-reactor reactor
    1个回答
    0
    投票

    评论中的讨论之后,我对您的问题有答案。

    © www.soinside.com 2019 - 2024. All rights reserved.