diff --git a/docs/src/main/asciidoc/spring-cloud-stream.adoc b/docs/src/main/asciidoc/spring-cloud-stream.adoc index 29ea169ae..11de62aaa 100644 --- a/docs/src/main/asciidoc/spring-cloud-stream.adoc +++ b/docs/src/main/asciidoc/spring-cloud-stream.adoc @@ -570,7 +570,8 @@ For example `--spring.cloud.stream.poller.fixed-delay=2000` sets the poller inte ===== Routing with functions Routing with functions can be achieved by relying on `RoutingFunction` available in Spring Cloud Function 3.0. All you need to do is enable it via -`--spring.cloud.stream.function.routing.enabled=true` application property. Once enabled `RoutingFunction` will be bound to input destination +`--spring.cloud.stream.function.routing.enabled=true` application property or provide `spring.cloud.function.routing-expression` property. +Once enabled `RoutingFunction` will be bound to input destination receiving all the messages and route them to other functions based on the provided instruction. Instruction could be provided with individual messages as well as application properties. @@ -2310,26 +2311,6 @@ Below is the example of the required Maven POM entries which could be easily ret test test-binder -. . . - - - org.apache.maven.plugins - maven-jar-plugin - - - - - **/integration/* - - test-binder - - - test-jar - - - - - ---- ***Remove the dependency for `spring-cloud-stream-test-support`*** diff --git a/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/function/FunctionConfiguration.java b/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/function/FunctionConfiguration.java index d9709a64e..a4ad6f606 100644 --- a/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/function/FunctionConfiguration.java +++ b/spring-cloud-stream/src/main/java/org/springframework/cloud/stream/function/FunctionConfiguration.java @@ -649,7 +649,8 @@ public class FunctionConfiguration { if (StringUtils.hasText(definition)) { streamFunctionProperties.setDefinition(definition); } - else if (Boolean.parseBoolean(environment.getProperty("spring.cloud.stream.function.routing.enabled", "false"))) { + else if (Boolean.parseBoolean(environment.getProperty("spring.cloud.stream.function.routing.enabled", "false")) + || environment.containsProperty("spring.cloud.function.routing-expression")) { streamFunctionProperties.setDefinition(RoutingFunction.FUNCTION_NAME); } else {