* Reactive Kafka Binder errors when concurrency > 1
When using Reactive Kafka binder, it is allowed to have concurrency > 1.
There is a check in FunctionConfiguration that throws an error if concurrency
is > 1, when using reactive types. Since it is allowed to do so with
Reative Kafka binder, switch this conversion into a warning log message.
Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2726
* Update core/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/function/FunctionConfiguration.java
Co-authored-by: Gary Russell <grussell@vmware.com>
* Update core/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/function/FunctionConfiguration.java
Co-authored-by: Gary Russell <grussell@vmware.com>
* Update core/spring-cloud-stream-integration-tests/src/test/java/org/springframework/cloud/stream/function/ImplicitFunctionBindingTests.java
Co-authored-by: Gary Russell <grussell@vmware.com>
---------
Co-authored-by: Gary Russell <grussell@vmware.com>
There are some use-cases when we need to know upfront
if specific binding is really bound.
The goal is to prevent some security vulnerabilities
when too many unexpected dynamic bindings, e.g.
via router based on the `StreamBridge`.
The `BindingService` provides for us `getProducerBindingNames()`
and `getConsumerBindingNames()` which are not optimal
for the task to check for binding presence
* Introduce `BindingService.getProducerBinding(String bindingName)`
and `getConsumerBindings(String bindingName)` to cover a use-case
when we need to check for predefined bindings.
This API might be useful in other use-case when we need to get
access to managed bindings
Related to: https://github.com/spring-cloud/stream-applications/issues/330
* Remove all SI test-binder based components from core spring-cloud-stream-module
* Create a new module - spring-cloud-stream-test-binder that contains the test-binder
and all it's related components
* Migrate tests from core module that use the test-binder into a separate module
called spring-cloud-stream-integration-tests
* Remove the test-jar dependency using the classifier approach
* Update Spring Cloud Stream BOM with the new test-binder dependency
* Update Schema-Registry tests that use the old approach (using the test-jar with the classifier)
with the new test-binder dependency
Resolves https://github.com/spring-cloud/spring-cloud-stream/issues/2565