'int-jms:message-driven-channel-adapter',在Java DSL中创建'selector'

时间:2016-04-21 15:58:41

标签: java spring spring-integration dsl

我有这样的XML基础定义

<int-jms:message-driven-channel-adapter
    connection-factory="connectionFactoryName"
    destination="destinationName" channel="channelName" 
    selector="...subscription expression..."
    auto-startup="false"/>

我可以在这样的Java DSL中创建所需的适配器

Jms.messageDrivenChannelAdapter(connectionFactoryName)
    .destination(destinationName)
    .outputChannel(channelName)
    .autoStartup(false)
    .get();

但我无法在此定义selector

我尝试使用Jms.pollableChannel工厂方法,但无法定义outputChannelautoStartup功能。

那么我如何通过Java DSL创建int-jms:message-driven-channel-adapter模拟,但需要参数?

1 个答案:

答案 0 :(得分:2)

AbstractMessageListenerContainerJms.messageDrivenChannelAdapter(connectionFactoryName) .destination(destinationName) .outputChannel(channelName) .autoStartup(false) .configureListenerContainer(c -> c.messageSelector("...subscription expression...")) .get(); 的属性。

为了保持一致,我们提供类似的钩子来区分责任:

Subcategory