@Target(value={METHOD,ANNOTATION_TYPE})
@Retention(value=RUNTIME)
@Inherited
@Documented
public @interface Router
A method annotated with @Router may accept a parameter of type
Message
or of the expected
Message payload's type. Any type conversion supported by
SimpleTypeConverter
will be applied to
the Message payload if necessary. Header values can also be passed as
Message parameters by using the
@Header
parameter annotation.
Return values from the annotated method may be either a Collection or Array
whose elements are either
channels
or
Strings. In the latter case, the endpoint hosting this router will attempt
to resolve each channel name with the Channel Registry or with
channelMappings()
, if provided.
Modifier and Type | Optional Element and Description |
---|---|
java.lang.String |
applySequence |
java.lang.String |
autoStartup |
java.lang.String[] |
channelMappings
The 'key=value' pairs to represent channelMapping entries
|
java.lang.String |
defaultOutputChannel |
java.lang.String |
ignoreSendFailures |
java.lang.String |
inputChannel |
java.lang.String |
phase |
Poller[] |
poller |
java.lang.String |
prefix |
java.lang.String |
resolutionRequired |
java.lang.String |
suffix |
public abstract java.lang.String inputChannel
public abstract java.lang.String defaultOutputChannel
public abstract java.lang.String[] channelMappings
AbstractMappingMessageRouter.setChannelMapping(String, String)
public abstract java.lang.String prefix
public abstract java.lang.String suffix
public abstract java.lang.String resolutionRequired
public abstract java.lang.String applySequence
public abstract java.lang.String ignoreSendFailures
public abstract java.lang.String autoStartup
public abstract java.lang.String phase
public abstract Poller[] poller
Poller
options for a polled endpoint
(PollerMetadata
).
This attribute is an array
just to allow an empty default (no poller).
Only one Poller
element is allowed.