org.springframework.integration.router
Class AbstractChannelNameResolvingMessageRouter

java.lang.Object
  extended by org.springframework.integration.handler.AbstractMessageHandler
      extended by org.springframework.integration.router.AbstractMessageRouter
          extended by org.springframework.integration.router.AbstractChannelNameResolvingMessageRouter
All Implemented Interfaces:
org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.InitializingBean, MessageHandler
Direct Known Subclasses:
AbstractSingleChannelNameRouter, AbstractXPathRouter

public abstract class AbstractChannelNameResolvingMessageRouter
extends AbstractMessageRouter
implements org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.InitializingBean

A base class for router implementations that return only the channel name(s) rather than MessageChannel instances.

Author:
Mark Fisher

Field Summary
 
Fields inherited from class org.springframework.integration.handler.AbstractMessageHandler
logger
 
Constructor Summary
AbstractChannelNameResolvingMessageRouter()
           
 
Method Summary
 void afterPropertiesSet()
           
protected abstract  java.lang.String[] determineTargetChannelNames(Message<?> message)
          Subclasses must implement this method to return the channel name(s).
protected  java.util.Collection<MessageChannel> determineTargetChannels(Message<?> message)
          Subclasses must implement this method to return the target channels for a given Message.
 void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory)
           
 void setChannelResolver(ChannelResolver channelResolver)
           
 void setPrefix(java.lang.String prefix)
           
 void setSuffix(java.lang.String suffix)
           
 
Methods inherited from class org.springframework.integration.router.AbstractMessageRouter
handleMessageInternal, setDefaultOutputChannel, setResolutionRequired, setTimeout
 
Methods inherited from class org.springframework.integration.handler.AbstractMessageHandler
handleMessage
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractChannelNameResolvingMessageRouter

public AbstractChannelNameResolvingMessageRouter()
Method Detail

setChannelResolver

public void setChannelResolver(ChannelResolver channelResolver)

setPrefix

public void setPrefix(java.lang.String prefix)

setSuffix

public void setSuffix(java.lang.String suffix)

setBeanFactory

public void setBeanFactory(org.springframework.beans.factory.BeanFactory beanFactory)
Specified by:
setBeanFactory in interface org.springframework.beans.factory.BeanFactoryAware

afterPropertiesSet

public void afterPropertiesSet()
Specified by:
afterPropertiesSet in interface org.springframework.beans.factory.InitializingBean

determineTargetChannels

protected final java.util.Collection<MessageChannel> determineTargetChannels(Message<?> message)
Description copied from class: AbstractMessageRouter
Subclasses must implement this method to return the target channels for a given Message.

Specified by:
determineTargetChannels in class AbstractMessageRouter

determineTargetChannelNames

protected abstract java.lang.String[] determineTargetChannelNames(Message<?> message)
Subclasses must implement this method to return the channel name(s).