K - the key type.R - the AbstractMappingMessageRouter implementation type.public final class RouterSpec<K,R extends AbstractMappingMessageRouter> extends AbstractRouterSpec<RouterSpec<K,R>,R> implements ComponentsRegistration
AbstractRouterSpec for an AbstractMappingMessageRouter.adviceChaincomponentsToRegister, endpointFactoryBean, handlerlogger, PARSER, target| Modifier and Type | Method and Description |
|---|---|
RouterSpec<K,R> |
channelMapping(K key,
java.lang.String channelName) |
RouterSpec<K,R> |
dynamicChannelLimit(int dynamicChannelLimit)
Set a limit for how many dynamic channels are retained (for reporting purposes).
|
java.util.Map<java.lang.Object,java.lang.String> |
getComponentsToRegister() |
RouterSpec<K,R> |
prefix(java.lang.String prefix)
Cannot be invoked if
subFlowMapping(Object, IntegrationFlow) is used. |
RouterSpec<K,R> |
resolutionRequired(boolean resolutionRequired) |
RouterSpec<K,R> |
subFlowMapping(K key,
IntegrationFlow subFlow)
Add a subflow as an alternative to a
channelMapping(Object, String). |
RouterSpec<K,R> |
suffix(java.lang.String suffix)
Cannot be invoked if
subFlowMapping(Object, IntegrationFlow) is used. |
applySequence, defaultOutputChannel, defaultOutputChannel, defaultOutputToParentFlow, defaultSubFlowMapping, ignoreSendFailuresadvice, async, autoStartup, doGet, notPropagatedHeaders, order, phase, poller, requiresReply, role, sendTimeout, taskScheduler, transactional, transactional, transactional, transactional, transactionalassertHandler, id, obtainInputChannelFromFlow, obtainInputChannelFromFlow, poller, poller_this, afterPropertiesSet, destroy, get, getId, getObject, getObjectType, isSingletonpublic RouterSpec<K,R> resolutionRequired(boolean resolutionRequired)
resolutionRequired - the resolutionRequired.AbstractMappingMessageRouter.setResolutionRequired(boolean)public RouterSpec<K,R> dynamicChannelLimit(int dynamicChannelLimit)
NOTE: this does not affect routing, just the reporting which dynamically
resolved channels have been routed to. Default 100.
dynamicChannelLimit - the limit.AbstractMappingMessageRouter.setDynamicChannelLimit(int)public RouterSpec<K,R> prefix(java.lang.String prefix)
subFlowMapping(Object, IntegrationFlow) is used.prefix - the prefix.AbstractMappingMessageRouter.setPrefix(String)public RouterSpec<K,R> suffix(java.lang.String suffix)
subFlowMapping(Object, IntegrationFlow) is used.suffix - the suffix to set.AbstractMappingMessageRouter.setSuffix(String)public RouterSpec<K,R> channelMapping(K key, java.lang.String channelName)
key - the key.channelName - the channelName.AbstractMappingMessageRouter.setChannelMapping(String, String)public RouterSpec<K,R> subFlowMapping(K key, IntegrationFlow subFlow)
channelMapping(Object, String).
prefix(String) and suffix(String) cannot be used when subflow
mappings are used.
If subflow should refer to the external IntegrationFlow bean and
there is a requirement to expect reply from there, such a reference should be
wrapped with a .gateway():
.subFlowMapping(false, sf -> sf.gateway(evenFlow())))
key - the key.subFlow - the subFlow.public java.util.Map<java.lang.Object,java.lang.String> getComponentsToRegister()
getComponentsToRegister in interface ComponentsRegistrationgetComponentsToRegister in class EndpointSpec<RouterSpec<K,R extends AbstractMappingMessageRouter>,ConsumerEndpointFactoryBean,R extends AbstractMappingMessageRouter>