paulwong

          SPRING INTEGRATION子FLOW

          split-route-aggregate flow 
          split之后,可以將message分給不同的子flow處理,配置如下:
          @Bean
          public IntegrationFlow parallelSplitRouteAggregateFlow() {
              return IntegrationFlows
                      .from(Http.inboundGateway("/trigger"))
                      .handle((p, h) -> Arrays.asList(1, 2, 3))
                      .split()
                      .channel(MessageChannels.executor(Executors.newCachedThreadPool()))
                      .<Integer, Boolean>route(o -> o % 2 == 0, m -> m
                              .subFlowMapping(true, sf -> sf.gateway(oddFlow()))
                              .subFlowMapping(false, sf -> sf.gateway(evenFlow())))
                      .aggregate()
                      .get();
          }

          @Bean
          public IntegrationFlow oddFlow() {
              return flow -> flow.<Integer>handle((payload, headers) -> "odd");
          }

          @Bean
          public IntegrationFlow evenFlow() {
              return flow -> flow.<Integer>handle((payload, headers) -> "even");
          }


          https://stackoverflow.com/questions/50121384/spring-integration-parallel-split-route-aggregate-flow-fails-due-to-one-way-mess

          posted on 2020-10-15 11:29 paulwong 閱讀(498) 評論(0)  編輯  收藏 所屬分類: SPRINGSPRING INTERGRATIONSPRING BOOT

          主站蜘蛛池模板: 连州市| 昌都县| 班戈县| 克山县| 射阳县| 南皮县| 格尔木市| 盐边县| 沈阳市| 青河县| 伊春市| 莱西市| 浮山县| 安义县| 腾冲县| 开阳县| 博客| 鄂尔多斯市| 南康市| 汪清县| 五台县| 神池县| 海宁市| 南丰县| 乌拉特中旗| 灵川县| 济阳县| 曲阳县| 枣强县| 鹤山市| 方山县| 汕尾市| 偏关县| 岳阳县| 阿拉善左旗| 云南省| 肇源县| 沙坪坝区| 安图县| 洛宁县| 昂仁县|