场景:
代码:
@SpringBootApplication
@Import({ FtpSourceConfiguration.class, AWSLocalStackConfig.class })
public class FtpSourceKinesisApplication {
public static void main(String[] args) {
SpringApplication.run(FtpSourceKinesisApplication.class, args);
}
}
Todo:
有没有办法自己创建IntegrationFlow的方法?
答案 0 :(得分:1)
@SylvainM具有讽刺意味的是,我们目前正在努力为我们所有的应用程序初学者提供此类支持。我的意思是,您现在可以通过简单地将通道拦截器添加到Sopurce的输出通道来做到这一点,但是基于Spring Cloud Functions,即将进行的工作将变得更加简单。 注意有关该博客的内容。
答案 1 :(得分:0)
根据奥列格(Oleg)的评论,这就是我所做的:
@Component
public class SourceHeaderEnricher implements ChannelInterceptor {
SourceHeaderEnricher (Source source) {
((ChannelInterceptorAware) source.output()).addInterceptor(this);
}
@Override
public Message<?> preSend(Message<?> message, MessageChannel channel) {
MessageBuilder<?> builder = MessageBuilder.fromMessage(message);
builder.setHeader("x-custom", "hello world");
return builder.build();
}
}
如果您正在实现自己的应用程序,则此方法有效。要使用简单的入门应用程序进行此操作,显然我们需要等待下一个版本。