Class AbstractOutboundChannelAdapterParser

java.lang.Object
org.springframework.beans.factory.xml.AbstractBeanDefinitionParser
org.springframework.integration.config.xml.AbstractChannelAdapterParser
org.springframework.integration.config.xml.AbstractOutboundChannelAdapterParser
All Implemented Interfaces:
org.springframework.beans.factory.xml.BeanDefinitionParser
Direct Known Subclasses:
DefaultOutboundChannelAdapterParser, LoggingChannelAdapterParser

public abstract class AbstractOutboundChannelAdapterParser
extends AbstractChannelAdapterParser
Base class for outbound Channel Adapter parsers. If this component is defined as the top-level element in the Spring application context it will produce an AbstractEndpoint depending on the channel type. If this component is defined as nested element (e.g., inside of the chain) it will produce a MessageHandler.
  • Field Summary

    Fields inherited from class org.springframework.beans.factory.xml.AbstractBeanDefinitionParser

    ID_ATTRIBUTE, NAME_ATTRIBUTE
  • Constructor Summary

    Constructors 
    Constructor Description
    AbstractOutboundChannelAdapterParser()  
  • Method Summary

    Modifier and Type Method Description
    protected org.springframework.beans.factory.support.AbstractBeanDefinition doParse​(org.w3c.dom.Element element, org.springframework.beans.factory.xml.ParserContext parserContext, java.lang.String channelName)
    Subclasses must implement this method to parse the adapter element.
    protected org.springframework.beans.factory.parsing.BeanComponentDefinition doParseAndRegisterConsumer​(org.w3c.dom.Element element, org.springframework.beans.factory.xml.ParserContext parserContext)
    Override this method to control the registration process and return the bean name.
    protected boolean isUsingReplyProducer()
    Override this to signal that this channel adapter is actually using a AbstractReplyProducingMessageHandler while it is not possible for this parser to determine that because, say, a FactoryBean is being used.
    protected abstract org.springframework.beans.factory.support.AbstractBeanDefinition parseConsumer​(org.w3c.dom.Element element, org.springframework.beans.factory.xml.ParserContext parserContext)
    Override this method to return the BeanDefinition for the MessageConsumer.

    Methods inherited from class org.springframework.integration.config.xml.AbstractChannelAdapterParser

    parseInternal, resolveId

    Methods inherited from class org.springframework.beans.factory.xml.AbstractBeanDefinitionParser

    parse, postProcessComponentDefinition, registerBeanDefinition, shouldFireEvents, shouldGenerateId, shouldGenerateIdAsFallback, shouldParseNameAsAliases

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

  • Method Details

    • doParse

      protected org.springframework.beans.factory.support.AbstractBeanDefinition doParse​(org.w3c.dom.Element element, org.springframework.beans.factory.xml.ParserContext parserContext, java.lang.String channelName)
      Description copied from class: AbstractChannelAdapterParser
      Subclasses must implement this method to parse the adapter element. The name of the MessageChannel bean is provided.
      Specified by:
      doParse in class AbstractChannelAdapterParser
      Parameters:
      element - The element.
      parserContext - The parser context.
      channelName - The channel name.
      Returns:
      The bean definition.
    • doParseAndRegisterConsumer

      protected org.springframework.beans.factory.parsing.BeanComponentDefinition doParseAndRegisterConsumer​(org.w3c.dom.Element element, org.springframework.beans.factory.xml.ParserContext parserContext)
      Override this method to control the registration process and return the bean name. If parsing a bean definition whose name can be auto-generated, consider using parseConsumer(Element, ParserContext) instead.
      Parameters:
      element - The element.
      parserContext - The parser context.
      Returns:
      The bean component definition.
    • parseConsumer

      protected abstract org.springframework.beans.factory.support.AbstractBeanDefinition parseConsumer​(org.w3c.dom.Element element, org.springframework.beans.factory.xml.ParserContext parserContext)
      Override this method to return the BeanDefinition for the MessageConsumer. It will be registered with a generated name.
      Parameters:
      element - The element.
      parserContext - The parser context.
      Returns:
      The bean definition.
    • isUsingReplyProducer

      protected boolean isUsingReplyProducer()
      Override this to signal that this channel adapter is actually using a AbstractReplyProducingMessageHandler while it is not possible for this parser to determine that because, say, a FactoryBean is being used.
      Returns:
      false, unless overridden.