You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
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}"
|
|
}
|
|
|
|
}
|