* GH-265: Add Kafka Consumer and Sink
Fixes https://github.com/spring-cloud/stream-applications/issues/265
* Make `kafkaPublisher` based on the Spring for Apache Kafka auto-configuration
and Spring Integration channel adapter, essentially `KafkaProducerMessageHandler`
* Make this `KafkaPublisherConfiguration` as an auto-configuration by itself.
* Expose those simple properties required by the `KafkaProducerMessageHandlerSpec`
* Add `kafka-sink` module based on the `kafkaPublisher`
* Add `kafka-sink` into apps metadata properties
- Add AVRO format support. Defaults to JSON
- Remove the Metadata repo configuration.
- Remove the Spring property sort-cuts. Only the native Debezium properties are used.
- change the native properties prefix from `cdc.config to cdc.debezium`.
- Removes the need to fork and modify the Debezium engine code.
- Add binding name strategy.
Remove old CDC projects and replace with the new implementation
Remove duplicate pom properties
remove non existing pom module
Rename `cdc-debezium-supplier/source` to `debezium-supplier/source`
streamline naming and tests
streamline supplier tests
test streamline. Github workflow
Fix Debezium engine generics mess
Break `DebeziumConfiguration` into engine auto-config and consumer configuration
add initial reactive consumer impl.
Splits Debezium into a pure supplier and a streaming source
- Remove any SCS related dependencies from the supplier.
- Supplier uses Sinks.Many.
complete the supplier vs source separation
Improve Debezium Egine auto-conf
- Provide configuration hooks for OffsetCommitPolicy, ConnectorCallback,
CompletionCallback and Clock with default implementations.
- Remove obsolete code.
minor improvements
Rename cdc property prefix to `debezium` and `cdc.debezium` to `debezium.inner`
remove obsolete `StreamBridge` tests
address reviews. improve testing
Supplier tests. Rename `inner` to `properties`.
Streamline the README. Minor improvements
streamline supplier tests
final fixes
* WIP: initial xmpp supplier support
* implement xmpp supplier and test
* remove test logging config
* update for consistency
* add documentation references for xmpp consumer and supplier, fix formatting for functions where geode was commented out
This is so they can be updated in a minimal amount of places and leverage the maven hierarchy to propagate them where appropriate.
While working with SNAPSHOT releases of Spring Boot, Spring Integration, and Spring Cloud, it required touching every pom.xml file
in order to reflect the use of the SNAPSHOT. After this change, it will only be required to change the property in the top
functions pom.xml and the versions will reflect to all submodules.
Maven introduced the ability use a key property, revision to propagate this information to the <parent> declarations in each pom.
This was enabled in Maven 3.5+
https://maven.apache.org/maven-ci-friendly.html
* This RSocket consumer is using the fire-and-forget strategy of execution.
* Generating the corresponding sink.
* Addressing the original PR review comments from
https://github.com/spring-cloud/stream-applications/pull/116
* Addressing PR review comments
* Fix README
* Addressing PR review
* Have all the required dependencies in class path which give us a `MessageGroupStore` implementation
* Disable all their auto-configurations in the `ExcludeStoresAutoConfigurationEnvironmentPostProcessor`
* Enable only those which are configured by the `aggregator.messageStoreType` property
* Implement a fully reactive function around an aggregator making an interaction via a pair of `FluxMessageChannel`
* Fix checkstyle issues
* Change the app generator maven plugin to new coordinates
- Add supplier, source and boot auto-config.
- Add work around for KafkaNull handling.
- Update CDC to 1.2.1.Final. Replace the deprecated properties.
remove comments
Add missing metadata configuration. Improve README docs.
CDC: add all metadata for doc auto-generation
Remove custom KafkaNullConverter.
- The fixed KafkaNullConverter implementation comes with kafka binder 3.0.8-BUILD-SNAPSHOT or newer.
Add repositories to maven config in app generation project.
Remove the unnecessary function version in maven plugin configuration for app generation.