Class MessageSelectorChain

java.lang.Object
org.springframework.integration.selector.MessageSelectorChain
All Implemented Interfaces:
GenericSelector<Message<?>>, MessageSelector

public class MessageSelectorChain extends Object implements MessageSelector
A message selector implementation that passes incoming messages through a chain of selectors. Whether the Message is accepted is based upon the tallied results of the individual selectors' responses in accordance with this chain's MessageSelectorChain.VotingStrategy.
Author:
Mark Fisher, Gary Russell, Artem Bilan
  • Constructor Details

    • MessageSelectorChain

      public MessageSelectorChain()
  • Method Details

    • setVotingStrategy

      public void setVotingStrategy(MessageSelectorChain.VotingStrategy votingStrategy)
      Specify the voting strategy for this selector chain.

      The default is MessageSelectorChain.VotingStrategy.ALL.

      Parameters:
      votingStrategy - The voting strategy.
    • add

      public void add(MessageSelector selector)
      Add a selector to the end of the chain.
      Parameters:
      selector - The message selector.
    • add

      public void add(int index, MessageSelector selector)
      Add a selector to the chain at the specified index.
      Parameters:
      index - The index.
      selector - The message selector.
    • setSelectors

      public void setSelectors(List<MessageSelector> selectors)
      Initialize the selector chain. Removes any existing selectors.
      Parameters:
      selectors - The message selectors.
    • accept

      public final boolean accept(Message<?> message)
      Pass the message through the selector chain. Whether the Message is accepted is based upon the tallied results of the individual selectors' responses in accordance with this chain's MessageSelectorChain.VotingStrategy.
      Specified by:
      accept in interface GenericSelector<Message<?>>
      Specified by:
      accept in interface MessageSelector