【问题标题】:Spring Integration DSL - CharacterStreamWritingMessageHandlerSpring 集成 DSL - CharacterStreamWritingMessageHandler
【发布时间】:2020-11-06 14:12:18
【问题描述】:

我正在为 DSL 中的 basic-amqp 示例 (https://github.com/spring-projects/spring-integration-samples/blob/master/basic/amqp/src/main/resources/META-INF/spring/integration/spring-integration-context.xml) 编写示例代码

@Bean
public IntegrationFlow receiveGreetingFromGreetingQueueToConsole(ConnectionFactory connectionFactory) {

    return IntegrationFlows.from(Amqp.inboundAdapter(connectionFactory, "greeting.queue"))
            .log()
            .<String,String>transform(m -> "Received " + m)
            .handle(CharacterStreamWritingMessageHandler.stdout())
            .get();

}

如何在

上应用 setShouldAppendNewLine 布尔值
.handle(CharacterStreamWritingMessageHandler.stdout())

我不想仅仅为了设置这个属性而将处理程序声明为 bean。希望标准输出为此接受一个参数。

【问题讨论】:

    标签: lambda spring-integration spring-integration-dsl


    【解决方案1】:

    不一定是豆子……

    @Bean
    public IntegrationFlow receiveGreetingFromGreetingQueueToConsole(ConnectionFactory connectionFactory) {
    
        CharacterStreamWritingMessageHandler stdout = CharacterStreamWritingMessageHandler.stdout();
        stdout.setShouldAppendNewLine(true);
        return IntegrationFlows.from(Amqp.inboundAdapter(connectionFactory, "greeting.queue"))
                .log()
                .<String,String>transform(m -> "Received " + m)
                .handle(stdout)
                .get();
    
    }
    

    但是,我同意 DSL 使用流畅的 API 会很好;请在 GitHub 上打开一个问题。

    【讨论】:

    猜你喜欢
    • 2020-04-21
    • 1970-01-01
    • 2015-02-03
    • 2020-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-04
    • 1970-01-01
    相关资源
    最近更新 更多