鉴于:
return from(listenerContainer(connectionFactory, queue))
.handle(Foo.class, new HandlerForFoo()).get();
}
如果通道接收到Bar.class类型的有效负载,我如何调用HandlerForBar?我的意思是这样的:
return from(listenerContainer(connectionFactory, queue))
.handle(Bar.class, new HandlerForBar());
.handle(Foo.class, new HandlerForFoo()).get();
}
答案 0 :(得分:6)
它不会那样工作。流定义假设第二个node * search(node *root,int k) {
if(root == NULL)
return NULL;
if(root->data == k)
return root;
else {
search(root->left,k);
search(root->right,k);
}
return NULL;
}
跟在第一个之后。
对于.handle()
目的,确实存在一种特殊的企业集成模式 - Message Router。
Spring Integration提供了关于此事的特定实现 - PayloadTypeRouter
。
使用Spring Integration Java DSL,我们可以通过以下方式满足您的要求:
payload type