Get ahead
VMware offers training and certification to turbo-charge your progress.
Learn moreOn behalf of the Spring Integration team, I’m pleased to announce the second milestone for Spring Integration 5.3
.
This release ships several bug fixes, a bunch of new features and improvements and will be picked up by Spring Boot 2.3 M2
in the near future.
It can be downloaded from our milestone repository:
compile "org.springframework.integration:spring-integration-core:5.3.0.M2"
With the IntegrationFlowExtension
implementation we now can right our own Java DSL for Spring Integration. It allows to introduce custom or composed EIP-operators. The existing IntegrationComponentSpec
implementations can now be extended for additional (missed?) options. So, now any custom and reusable solutions in Java DSL can be implemented in the target project:
public class CustomIntegrationFlowDefinition
extends IntegrationFlowExtension
public CustomIntegrationFlowDefinition upperCaseAfterSplit() {
return split()
.transform("payload.toUpperCase()");
}
public CustomIntegrationFlowDefinition customAggregate(
Consumer<CustomAggregatorSpec> aggregator) {
return register(new CustomAggregatorSpec(), aggregator);
}
}
public class CustomAggregatorSpec extends AggregatorSpec {
CustomAggregatorSpec() {
outputProcessor(group ->
group.getMessages()
.stream()
.map(Message::getPayload)
.map(String.class::cast)
.collect(Collectors.joining(", ")));
}
}
@Bean public IntegrationFlow customFlowDefinition() { return new CustomIntegrationFlowDefinition() .log() .upperCaseAfterSplit() .channel("innerChannel") .customAggregate(customAggregatorSpec -> customAggregatorSpec.expireGroupsUponCompletion(true)) .logAndReply(); }
HTTP and WebFlux outbound channel adapters now support an UriBuilderFactory.EncodingMode
option instead of previous`encodeUri` boolean flag.
The AMQP outbound channel adapter has a new property multiSend
allowing multiple messages to be sent within the scope of one RabbitTemplate invocation.
The AMQP inbound channel adapter now supports a listener container with the consumerBatchEnabled
property set to true.
See What’s New?
in the Reference Manual for more information.
The next and last M3
milestone is scheduled for March before entering the RC
phase in April. Expect an upgrade to the latest milestone releases: Spring Data Neumann
, Spring Security 5.3
etc.
We’re looking forward to your feedback!
Project Page | GitHub Issues | Contributing | Help | Chat