Class IntegrationFlowExtension<B extends IntegrationFlowExtension<B>>
java.lang.Object
org.springframework.integration.dsl.BaseIntegrationFlowDefinition<B>
org.springframework.integration.dsl.IntegrationFlowDefinition<B>
org.springframework.integration.dsl.IntegrationFlowExtension<B>
- Type Parameters:
- B- the- IntegrationFlowDefinitionimplementation type.
public abstract class IntegrationFlowExtension<B extends IntegrationFlowExtension<B>>
extends IntegrationFlowDefinition<B>
An 
IntegrationFlowDefinition extension for custom Java DSL operators
 and reusable solutions.
 For supporting method flow chain an implementation of this class has to return
 an extension class from new methods, e.g.:
 
 
 	public class MyIntegrationFlowDefinition
 			extends IntegrationFlowExtension<MyIntegrationFlowDefinition> {
 		public MyIntegrationFlowDefinition upperCaseAfterSplit() {
 			return split()
 					.transform("payload.toUpperCase()");
      }
 }
 
 
 This way it will be used in the target configuration as natural DSL definition:
 
 
  @Bean
  public IntegrationFlow myFlowDefinition() {
 		return
 				new MyIntegrationFlowDefinition()
 			            .log()
 						.upperCaseAfterSplit()
 						.aggregate()
 						.get();
  }
 
 
 This IntegrationFlowExtension can also be used for overriding
 existing operators with extensions to any IntegrationComponentSpec extensions,
 e.g. adding new options for target component configuration.- Since:
- 5.3
- Author:
- Artem Bilan
- 
Nested Class SummaryNested classes/interfaces inherited from class org.springframework.integration.dsl.BaseIntegrationFlowDefinitionBaseIntegrationFlowDefinition.ReplyProducerCleaner
- 
Field SummaryFields inherited from class org.springframework.integration.dsl.BaseIntegrationFlowDefinitionintegrationComponents, PARSER
- 
Constructor SummaryConstructors
- 
Method SummaryMethods inherited from class org.springframework.integration.dsl.IntegrationFlowDefinitionfilter, filter, handle, handle, route, route, transformMethods inherited from class org.springframework.integration.dsl.BaseIntegrationFlowDefinition_this, addComponent, addComponent, addComponents, aggregate, aggregate, aggregate, barrier, barrier, bridge, bridge, channel, channel, channel, channel, checkReuse, claimCheckIn, claimCheckIn, claimCheckOut, claimCheckOut, claimCheckOut, controlBus, controlBus, controlBusOnRegistry, controlBusOnRegistry, convert, convert, currentComponent, currentInterceptableChannel, currentMessageChannel, delay, delay, enrich, enrichHeaders, enrichHeaders, enrichHeaders, enrichHeaders, enrichHeaders, extractProxyTarget, filter, filter, filter, filter, filter, filter, filter, filter, filter, fixedSubscriberChannel, fixedSubscriberChannel, fluxTransform, gateway, gateway, gateway, gateway, gateway, gateway, getCurrentComponent, getCurrentMessageChannel, getIntegrationComponents, handle, handle, handle, handle, handle, handle, handle, handle, handle, handle, handle, handle, handle, handleReactive, handleReactive, handleReactive, handleReactive, headerFilter, headerFilter, headerFilter, intercept, isImplicitChannel, isOutputChannelRequired, log, log, log, log, log, log, log, log, log, log, log, log, log, nullChannel, obtainInputChannelFromFlow, publishSubscribeChannel, publishSubscribeChannel, publishSubscribeChannel, register, registerOutputChannelIfCan, resequence, resequence, route, route, route, route, route, route, route, route, route, route, route, route, route, route, routeByException, routeToRecipients, scatterGather, scatterGather, scatterGather, scatterGather, scatterGather, scatterGather, setImplicitChannel, split, split, split, split, split, split, split, split, split, splitWith, to, toReactivePublisher, toReactivePublisher, transform, transform, transform, transform, transform, transform, transformWith, trigger, trigger, trigger, trigger, wireTap, wireTap, wireTap, wireTap, wireTap, wireTap, wireTap
- 
Constructor Details- 
IntegrationFlowExtensionprotected IntegrationFlowExtension()
 
- 
- 
Method Details- 
get- Overrides:
- getin class- BaseIntegrationFlowDefinition<B extends IntegrationFlowExtension<B>>
 
 
-