我打算为我的项目使用Spring云流。我看到有内置的触发源应用程序启动器。我想要做的就是使用石英作业调度程序作为源应用程序。这是为了允许来自应用程序的动态作业计划。有没有一个很好的样本来实现这个目标?Spring Cloud Stream + Quartz
我发现了这个。 spring integration + cron + quartz in cluster?。该解决方案涉及获取对入站通道适配器的引用。我使用Annotation来定义入站通道适配器。如何获得对该对象的引用,以便我可以在解决方案中提到启动/停止。
这是我如何定义入站通道适配器。
@Bean
@InboundChannelAdapter(autoStartup = "false", value = SourceChannel.CHANNEL_NAME, poller = @Poller(trigger = "fireOnceTrigger"))
public MessageSource<String> timerMessageSource() {
return new MessageSource<String>() {
public Message<String> receive() {
System.out.println("******************");
System.out.println("At the Source");
System.out.println("******************");
String value = "{\"value\":\"hi\"}";
System.out.println("Sending value: " + value);
return MessageBuilder.withPayload(value).setHeader(MessageHeaders.CONTENT_TYPE, "application/json").build();
}
};
}
谢谢。这工作。 –