Spring Integration

org.springframework.integration.xml.router
Class XPathMultiChannelRouter

java.lang.Object
  extended by org.springframework.integration.context.IntegrationObjectSupport
      extended by org.springframework.integration.handler.AbstractMessageHandler
          extended by org.springframework.integration.router.AbstractMessageRouter
              extended by org.springframework.integration.router.AbstractChannelNameResolvingMessageRouter
                  extended by org.springframework.integration.xml.router.AbstractXPathRouter
                      extended by org.springframework.integration.xml.router.XPathMultiChannelRouter
All Implemented Interfaces:
BeanFactoryAware, BeanNameAware, InitializingBean, Ordered, NamedComponent, MessageHandler, TrackableComponent

public class XPathMultiChannelRouter
extends AbstractXPathRouter

A router that evaluates the XPath expression using XPathExpression.evaluateAsNodeList(Node) which returns zero or more nodes in conjunction with an instance of NodeMapper to produce zero or more channel names. An instance of XmlPayloadConverter is used to extract the payload as a Node.

Author:
Jonas Partner

Field Summary
 
Fields inherited from class org.springframework.integration.handler.AbstractMessageHandler
logger
 
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
 
Constructor Summary
XPathMultiChannelRouter(String expression)
           
XPathMultiChannelRouter(String expression, Map<String,String> namespaces)
           
XPathMultiChannelRouter(String expression, String prefix, String namespace)
           
XPathMultiChannelRouter(org.springframework.xml.xpath.XPathExpression expression)
           
 
Method Summary
 List<Object> getChannelIndicatorList(Message<?> message)
          Subclasses must implement this method to return the channel indicators.
 void setNodeMapper(org.springframework.xml.xpath.NodeMapper nodeMapper)
           
 
Methods inherited from class org.springframework.integration.xml.router.AbstractXPathRouter
getConverter, getXPathExpression, setConverter
 
Methods inherited from class org.springframework.integration.router.AbstractChannelNameResolvingMessageRouter
determineTargetChannels, onInit, setChannelResolver, setIgnoreChannelNameResolutionFailures, setPrefix, setSuffix
 
Methods inherited from class org.springframework.integration.router.AbstractMessageRouter
getComponentType, getMessagingTemplate, handleMessageInternal, setApplySequence, setDefaultOutputChannel, setIgnoreSendFailures, setResolutionRequired, setTimeout
 
Methods inherited from class org.springframework.integration.handler.AbstractMessageHandler
getOrder, handleMessage, setOrder, setShouldTrack
 
Methods inherited from class org.springframework.integration.context.IntegrationObjectSupport
afterPropertiesSet, getBeanFactory, getComponentName, getConversionService, getRequiredMetadataPersister, getTaskScheduler, setBeanFactory, setBeanName, setComponentName, setConversionService, setTaskScheduler, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.springframework.integration.context.NamedComponent
getComponentName
 

Constructor Detail

XPathMultiChannelRouter

public XPathMultiChannelRouter(String expression,
                               Map<String,String> namespaces)
See Also:
AbstractXPathRouter.AbstractXPathRouter(String, Map)

XPathMultiChannelRouter

public XPathMultiChannelRouter(String expression,
                               String prefix,
                               String namespace)
See Also:
AbstractXPathRouter.AbstractXPathRouter(String, String, String)

XPathMultiChannelRouter

public XPathMultiChannelRouter(String expression)
See Also:
AbstractXPathRouter.AbstractXPathRouter(String)

XPathMultiChannelRouter

public XPathMultiChannelRouter(org.springframework.xml.xpath.XPathExpression expression)
See Also:
AbstractXPathRouter.AbstractXPathRouter(XPathExpression)
Method Detail

setNodeMapper

public void setNodeMapper(org.springframework.xml.xpath.NodeMapper nodeMapper)

getChannelIndicatorList

public List<Object> getChannelIndicatorList(Message<?> message)
Description copied from class: AbstractChannelNameResolvingMessageRouter
Subclasses must implement this method to return the channel indicators.

Specified by:
getChannelIndicatorList in class AbstractChannelNameResolvingMessageRouter

Spring Integration

Copyright © 2010. All Rights Reserved.