DSL: Use DelayerEndpointSpec for .delay()

GH: https://github.com/spring-projects/spring-integration-extensions/issues/84
This commit is contained in:
Artem Bilan
2014-07-01 14:49:53 +03:00
parent c639066daf
commit 906880acf0
2 changed files with 4 additions and 4 deletions

View File

@@ -256,12 +256,12 @@ public final class IntegrationFlowBuilder {
}
public IntegrationFlowBuilder delay(String groupId, String expression,
EndpointConfigurer<GenericEndpointSpec<DelayHandler>> endpointConfigurer) {
EndpointConfigurer<DelayerEndpointSpec> endpointConfigurer) {
DelayHandler delayHandler = new DelayHandler(groupId);
if (StringUtils.hasText(expression)) {
delayHandler.setDelayExpression(PARSER.parseExpression(expression));
}
return this.register(new GenericEndpointSpec<DelayHandler>(delayHandler), endpointConfigurer);
return this.register(new DelayerEndpointSpec(delayHandler), endpointConfigurer);
}
public IntegrationFlowBuilder enrich(ComponentConfigurer<EnricherSpec> enricherConfigurer) {

View File

@@ -1226,13 +1226,13 @@ public class IntegrationFlowTests {
return IntegrationFlows.from("bridgeFlow2Input")
.bridge(c -> c.autoStartup(false).id("bridge"))
.fixedSubscriberChannel()
.delay("delayer", "200", c -> c.advice(this.delayedAdvice))
.delay("delayer", "200", c -> c.advice(this.delayedAdvice).messageStore(this.messageStore()))
.channel(MessageChannels.queue("bridgeFlow2Output"))
.get();
}
@Bean
public MessageStore messageStore() {
public SimpleMessageStore messageStore() {
return new SimpleMessageStore();
}