org.springframework.integration.selector
Class MessageSelectorChain

java.lang.Object
  extended by org.springframework.integration.selector.MessageSelectorChain
All Implemented Interfaces:
MessageSelector

public class MessageSelectorChain
extends java.lang.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.


Nested Class Summary
static class MessageSelectorChain.VotingStrategy
           
 
Constructor Summary
MessageSelectorChain()
           
 
Method Summary
 boolean accept(Message<?> message)
          Pass the message through the selector chain.
 void add(int index, MessageSelector selector)
          Add a selector to the chain at the specified index.
 void add(MessageSelector selector)
          Add a selector to the end of the chain.
 void setSelectors(java.util.List<MessageSelector> selectors)
          Initialize the selector chain.
 void setVotingStrategy(MessageSelectorChain.VotingStrategy votingStrategy)
          Specify the voting strategy for this selector chain.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MessageSelectorChain

public MessageSelectorChain()
Method Detail

setVotingStrategy

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

The default is MessageSelectorChain.VotingStrategy.ALL.


add

public void add(MessageSelector selector)
Add a selector to the end of the chain.


add

public void add(int index,
                MessageSelector selector)
Add a selector to the chain at the specified index.


setSelectors

public void setSelectors(java.util.List<MessageSelector> selectors)
Initialize the selector chain. Removes any existing 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 MessageSelector