Redesigning suppliers that use reactive output channel name as
the literal "output" explicitly, as this cuases some conflicts
with the output channel name usage in Spring Cloud Stream.
The fix is done either by simply renaming the channel name
or by avoid using it directly, but delegate its use through the SI Java DSL.
Resolves https://github.com/spring-cloud/stream-applications/issues/160
New properties for controlling the batch size and the timeout for a message group have been added, consistently with the jdbc-consumer implementation.
Added support for per message index override via INDEX_NAME header.
Overriding behavior of message headers mentioned in properties javadoc.
Improved debug log messages.
Copyright and authors update.
README
Fixes https://github.com/spring-cloud/stream-applications/issues/156
The `MessageSource.receive()` may produce `null`:
The `MessageSourceMutator` impl must honor such an input
* Add `MonoProcessor<Boolean> subscriptionBarrier` to delay
subscription to the source `Flux` until subscription happens
to the supplier's flux.
This way we don't have unexpected interaction with the source when
there are regular endpoints in the flow in between
Use spring test data geode in the geode integration tests
test to fork a separate geode process, instead of running
a geode server in a docker container.
STDG is faster than launching Geode through gfsh inside of a container.
- It doesn't run in docker
- It doesn't start management components necessary for gfsh
- It doesn't start extra gfsh shell processes
Removing the GeodeContainer test utility
Update fiilter processor to add an extra processing at the end of the chain
to convert the receeived text data into byte[].
See the previous commit message for more details.
Router sink receives the input as String through byteArrayTextToString|routerSinkConsumer.
Spring Cloud Stream used to convert the string back to byte[], but the commit below removed that logic.
5d9de8ad57
Therefore we are adding it back in the router sink app by programmatically converting the String back to
byte[] before sending it out to the bound router channel.
When given spring-cloud-stream-dependencies and spring-cloud-dependencies,
the former gets the precedence. This way, apps can upddate to a stanadlone
stream release indepndent of any upstream spring cloud release.
Exclude `IpHeaders.LOCAL_ADDRESS` from TCP source output as it
causes issues with message conversion downstream.
Update SCSt/Spring-Cloud to the latest snapshots.
* Refactor `TcpSupplierConfiguration` for better readability and
current state of requirements for Spring libraries configuration
Fixes https://github.com/spring-cloud/stream-applications/issues/151
The `RabbitSupplierConfiguration` comes with the `output` bean definition which
clashes with the `output` binding for Spring Cloud Stream.
The last one doesn't register the binding bean and leave the rest of the logic
to deal with existing bean when we resolve it by the `output` name.
* Rework the logic of the `RabbitSupplierConfiguration` to avoid an extra bean
in between and the binding in Spring Cloud Stream do it job
Fixes https://github.com/spring-cloud/stream-applications/issues/154
The Binder conversion mechanism is not aware about a `MediaType.APPLICATION_FORM_URLENCODED`
and does not know how to convert the `MultiValueMap` with such a content-type
* Change the Http-Supplier to replace a `MediaType.APPLICATION_FORM_URLENCODED`
content-type header to the `MediaType.APPLICATION_JSON` for the proper
JSON serialization for the `MultiValueMap` on the binder level before sending to
the output destination
* Fix MongoDb driver problem.
Probably we need to think about upgrading Debezium support to the latest
version, so its MongoDb connector is based on the latest Mongo Driver
which already is pulled by Spring Boot