mirror of
https://github.com/spring-projects/spring-boot.git
synced 2024-09-03 04:26:12 +08:00
40 lines
942 B
Groovy
40 lines
942 B
Groovy
package org.test
|
|
|
|
@Configuration
|
|
@EnableIntegration
|
|
class SpringIntegrationExample implements CommandLineRunner {
|
|
|
|
@Autowired
|
|
private ApplicationContext context;
|
|
|
|
@Bean
|
|
DirectChannel input() {
|
|
new DirectChannel();
|
|
}
|
|
|
|
@Override
|
|
void run(String... args) {
|
|
println()
|
|
println '>>>> ' + new MessagingTemplate(input()).convertSendAndReceive("World", String) + ' <<<<'
|
|
println()
|
|
/*
|
|
* Since this is a simple application that we want to exit right away,
|
|
* close the context. For an active integration application, with pollers
|
|
* etc, you can either suspend the main thread here (e.g. with System.in.read()),
|
|
* or exit the run() method without closing the context, and stop the
|
|
* application later using some other technique (kill, JMX etc).
|
|
*/
|
|
context.close()
|
|
}
|
|
}
|
|
|
|
@MessageEndpoint
|
|
class HelloTransformer {
|
|
|
|
@Transformer(inputChannel="input")
|
|
String transform(String payload) {
|
|
"Hello, ${payload}"
|
|
}
|
|
|
|
}
|