To simplify a bit the `direct` integration flow definition, the `IntegrationFlow` Lambda is introduced. * Extract `IntegrationFlow` functional interface with `define(IntegrationFlowDefinition<?> flow)` method. * Rename existing `IntegrationFlow` class to the `StandardIntegrationFlow` and move it to the inner class within `IntegrationFlowBuilder` * Extract `IntegrationFlowDefinition` superclass for the `IntegrationFlowBuilder` to be used within `IntegrationFlow` Lambda to hide `get()` method from end-users. * Change `IntegrationFlowBeanPostProcessor` for a new logic around `IntegrationFlow` Lambda * Rename `MessagingProducerSpec` to the `MessageProducerSpec` Conflicts: spring-integration-java-dsl/src/main/java/org/springframework/integration/dsl/IntegrationFlowBuilder.java
Spring Integration Java DSL
See the Spring Integration Java DSL Reference for more info.