package org.springframework.issues;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jms.core.JmsTemplate;
import org.springframework.jms.core.MessagePostProcessor;
import org.springframework.stereotype.Service;
import javax.jms.JMSException;
import javax.jms.Message;
@Service
public class TodoClient {
@Autowired
JmsTemplate jmsTemplate;
public Todo send(String destinationName, Todo todo, final String xTrack) {
jmsTemplate.convertAndSend(destinationName, todo, new MessagePostProcessor() {
@Override
public Message postProcessMessage(Message message) throws JMSException {
message.setStringProperty("X-Track", xTrack);
return message;
}
});
return Todo.class.cast(jmsTemplate.receiveAndConvert("Reply" + destinationName));
}
}