org.apache.camel.component.jms.reply
Class ReplyHolder

java.lang.Object
  extended by org.apache.camel.component.jms.reply.ReplyHolder

public class ReplyHolder
extends Object

Holder which contains the Exchange and AsyncCallback to be used when the reply arrives, so we can set the reply on the Exchange and continue routing using the callback.

Version:

Constructor Summary
ReplyHolder(Exchange exchange, AsyncCallback callback, String originalCorrelationId, long timeout)
          Constructor to use when a timeout occurred
ReplyHolder(Exchange exchange, AsyncCallback callback, String originalCorrelationId, javax.jms.Message message)
          Constructor to use when a reply message was received
 
Method Summary
 AsyncCallback getCallback()
           
 Exchange getExchange()
           
 javax.jms.Message getMessage()
          Gets the received message
 String getOriginalCorrelationId()
          Gets the original correlation id, if one was set when sending the message.
 long getRequestTimeout()
          The timeout value
 boolean isTimeout()
          Whether timeout triggered or not.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ReplyHolder

public ReplyHolder(Exchange exchange,
                   AsyncCallback callback,
                   String originalCorrelationId,
                   javax.jms.Message message)
Constructor to use when a reply message was received


ReplyHolder

public ReplyHolder(Exchange exchange,
                   AsyncCallback callback,
                   String originalCorrelationId,
                   long timeout)
Constructor to use when a timeout occurred

Method Detail

getExchange

public Exchange getExchange()

getCallback

public AsyncCallback getCallback()

getOriginalCorrelationId

public String getOriginalCorrelationId()
Gets the original correlation id, if one was set when sending the message.

Some JMS brokers will mess with the correlation id and send back a different/empty correlation id. So we need to remember it so we can restore the correlation id.


getMessage

public javax.jms.Message getMessage()
Gets the received message

Returns:
the received message, or null if timeout occurred and no message has been received
See Also:
isTimeout()

isTimeout

public boolean isTimeout()
Whether timeout triggered or not.

A timeout is triggered if requestTimeout option has been configured, and a reply message has not been received within that time frame.


getRequestTimeout

public long getRequestTimeout()
The timeout value



Apache CAMEL