Class ReplyHolder
- java.lang.Object
-
- org.apache.camel.component.sjms.reply.ReplyHolder
-
public class ReplyHolder extends Object
Holder which contains theExchange
andAsyncCallback
to be used when the reply arrives, so we can set the reply on theExchange
and continue routing using the callback.
-
-
Constructor Summary
Constructors Constructor Description ReplyHolder(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback, String originalCorrelationId, String correlationId, long timeout)
Constructor to use when a timeout occurredReplyHolder(org.apache.camel.Exchange exchange, org.apache.camel.AsyncCallback callback, String originalCorrelationId, String correlationId, javax.jms.Message message, javax.jms.Session session)
Constructor to use when a reply message was received
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.apache.camel.AsyncCallback
getCallback()
String
getCorrelationId()
Gets the correlation idorg.apache.camel.Exchange
getExchange()
javax.jms.Message
getMessage()
Gets the received messageString
getOriginalCorrelationId()
Gets the original correlation id, if one was set when sending the message.long
getRequestTimeout()
The timeout valuejavax.jms.Session
getSession()
Gets the JMS session from the received messageboolean
isTimeout()
Whether timeout triggered or not.
-
-
-
Method Detail
-
getExchange
public org.apache.camel.Exchange getExchange()
-
getCallback
public org.apache.camel.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.
-
getCorrelationId
public String getCorrelationId()
Gets the correlation id- See Also:
getOriginalCorrelationId()
-
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()
-
getSession
public javax.jms.Session getSession()
Gets the JMS session from the received message- Returns:
- the JMS session, 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
-
-