spring-cloud / spring-cloud-stream-binder-kafka

Spring Cloud Stream binders for Apache Kafka and Kafka Streams
Apache License 2.0
331 stars 301 forks source link

Support Kafka Streams binder function composition #1091

Closed sobychacko closed 3 years ago

sobychacko commented 3 years ago

Composed function defintions can start with a java.util.function.Function or java.util.function.BiFunction and compose with other functions or consumers. In the case of a consumer, this needs to be the last unit in the function definition.

java.util.function.BiConumer is not eligibe for function composition.

The first component in the definition can be a curried function as well.

Adding tests and docs.

Resolves https://github.com/spring-cloud/spring-cloud-stream-binder-kafka/issues/1088