org.springframework.integration.endpoint
Class AbstractRequestReplyEndpoint

java.lang.Object
  extended by org.springframework.integration.endpoint.AbstractEndpoint
      extended by org.springframework.integration.endpoint.AbstractRequestReplyEndpoint
All Implemented Interfaces:
org.springframework.beans.factory.BeanNameAware, MessageEndpoint, MessageTarget
Direct Known Subclasses:
DefaultEndpoint, MessagingBridge

public abstract class AbstractRequestReplyEndpoint
extends AbstractEndpoint

Author:
Mark Fisher

Field Summary
private  java.lang.String inputChannelName
           
private  java.lang.String outputChannelName
           
private  boolean requiresReply
           
 
Fields inherited from class org.springframework.integration.endpoint.AbstractEndpoint
logger
 
Constructor Summary
AbstractRequestReplyEndpoint()
           
 
Method Summary
 java.lang.String getInputChannelName()
           
 java.lang.String getOutputChannelName()
           
protected abstract  Message<?> handleRequestMessage(Message<?> requestMessage)
           
protected abstract  boolean isValidReplyMessage(Message<?> replyMessage)
           
protected  boolean sendInternal(Message<?> requestMessage)
           
protected abstract  void sendReplyMessage(Message<?> replyMessage, Message<?> requestMessage)
           
 void setInputChannelName(java.lang.String inputChannelName)
           
 void setOutputChannelName(java.lang.String outputChannelName)
           
 void setRequiresReply(boolean requiresReply)
          Specify whether this endpoint should throw an Exception when it returns an invalid reply Message after handling the request.
 void setSource(MessageSource<?> source)
           
 void setTarget(MessageTarget target)
           
 
Methods inherited from class org.springframework.integration.endpoint.AbstractEndpoint
getMessageExchangeTemplate, getName, getSchedule, getSource, getTarget, send, setBeanName, setErrorHandler, setSchedule, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

inputChannelName

private volatile java.lang.String inputChannelName

outputChannelName

private volatile java.lang.String outputChannelName

requiresReply

private volatile boolean requiresReply
Constructor Detail

AbstractRequestReplyEndpoint

public AbstractRequestReplyEndpoint()
Method Detail

getInputChannelName

public java.lang.String getInputChannelName()

setInputChannelName

public void setInputChannelName(java.lang.String inputChannelName)

getOutputChannelName

public java.lang.String getOutputChannelName()

setOutputChannelName

public void setOutputChannelName(java.lang.String outputChannelName)

setRequiresReply

public void setRequiresReply(boolean requiresReply)
Specify whether this endpoint should throw an Exception when it returns an invalid reply Message after handling the request.


sendInternal

protected boolean sendInternal(Message<?> requestMessage)
Specified by:
sendInternal in class AbstractEndpoint

handleRequestMessage

protected abstract Message<?> handleRequestMessage(Message<?> requestMessage)

isValidReplyMessage

protected abstract boolean isValidReplyMessage(Message<?> replyMessage)

sendReplyMessage

protected abstract void sendReplyMessage(Message<?> replyMessage,
                                         Message<?> requestMessage)

setSource

public void setSource(MessageSource<?> source)
Specified by:
setSource in interface MessageEndpoint
Overrides:
setSource in class AbstractEndpoint

setTarget

public void setTarget(MessageTarget target)
Specified by:
setTarget in interface MessageEndpoint
Overrides:
setTarget in class AbstractEndpoint