Starting with Spring Boot `2.6`, the auto-configuration
for Spring Integration introduces `poller` properties.
The `DefaultPollerProperties` and its respective `ChannelBindingAutoConfiguration` are not needed any more.
* Add `PollerConfigEnvironmentPostProcessor` to remap deprecated
`spring.cloud.stream.poller` into respective `spring.integration.poller`
properties
* Mention in the docs a deprecation move and its replacement
Related to: https://github.com/spring-projects/spring-boot/pull/27992Resolves#2233
Currently, when `StreamBridge` creates an output binding, the framework
applies all the available channel interceptors on it by default. This
creates unwanted side effects and the application does not have a way
to control this. Change this behavior by only applying channel interceptors
annoatated with `@GlobalChannelInterceptor`. This way, the user can
provide patterns to decide which interceptors need to be applied on
specific `StreamBridge` bindings.
Adding tests to verify.
Adding docs.
Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2180
Given that RoutingFunction may actualy route to Consumer, there is no need for output binding.
This fix addresses it where no output binding is created initially and instead the output binding will be created if and when the firt output is produced.
Resolves#2168
Updated documentation to clarify the differences between the retry mechanisms of different programming models (e.g., imperative vs. reactive).
Resolves#2073
* Muti binder customization
Enable applications with multi binders to provide customizations for
the binders. This is accomplished by providing a new API called
BinderCustomizer. When an implementation is found for this interface,
the customizations are applied against the binders before providing access to them.
Tests and docs.
Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/1541
* Addressing PR review comments
* Addressing PR review
This feature effectively provides identical path to create PollableSource as it was in annotation-based programming model.
However, unlike creating and providing binding intreface all that is required from user is 'spring.cloud.stream.pollable-source' property
Resolves#1956