使用spring-integration java dsl .publishSubscribeChannel()或channel()?

时间:2015-08-06 12:58:26

标签: spring-integration

我希望定义一个过程,例如“执行操作A,然后在A的输出有效负载上执行B和C”:

       +- [B]
[A] -> |
       +- [C]

在[B]和[C]执行后我真的不需要聚合。

哪个是对的?

  1. 使用.publish(“mychannel”)终止[A]并使用IntegrationFlows.from(“mychannel”)定义[B]和[C] integrationFlows @Bean ... get()

    < / LI>
  2. 使用.publishSubscribeChannel(...)终止[A]

1 个答案:

答案 0 :(得分:2)

我说最好的设计必须看起来像XML配置:

@Bean
IntegrationFlow flowA() {
   return IntegrationFlow.from(...)
                      .channel("publishSubscribeChannel")
                      .get();
}

@Bean 
MessageChannel publishSubscribeChannel() {
   return new PublishSubscribeChannel();
}

@Bean
IntegrationFlow flowB() {
   return IntegrationFlow.from("publishSubscribeChannel")
           ...
}

@Bean
IntegrationFlow flowC() {
   return IntegrationFlow.from("publishSubscribeChannel")
           ...
}

仅仅因为你是这里的新手,并且在这里对许多功能感觉不太好。

P.S。请尊重我们的时间,允许我们做自己的工作,也许可以帮助其他人。我们不打算为您工作 - 这是我们的责任。问题&#34;它是如何运作的?&#34;或者&#34;似乎对我来说这是一个错误&#34;是讨论的好人选。但是关于&#34;你对我的设计有什么看法?&#34; (或者像你的复杂样本的JIRA那样)对社区来说并不是那么有用。遗憾。