INT-1257, INT-1263 Refactoring Message History (work in progress): MessageHistoryWriter's writeHistory method is now static. Added HistoryProvider interface and MessageHistoryBeanPostProcessor.
This commit is contained in:
@@ -27,6 +27,7 @@ import javax.jms.Session;
|
||||
|
||||
import org.springframework.beans.factory.InitializingBean;
|
||||
import org.springframework.integration.Message;
|
||||
import org.springframework.integration.context.MessageHistoryWriter;
|
||||
import org.springframework.integration.core.MessageBuilder;
|
||||
import org.springframework.integration.gateway.AbstractMessagingGateway;
|
||||
import org.springframework.jms.listener.SessionAwareMessageListener;
|
||||
@@ -222,7 +223,7 @@ public class ChannelPublishingJmsMessageListener extends AbstractMessagingGatewa
|
||||
Message<?> requestMessage = (object instanceof Message<?>) ?
|
||||
MessageBuilder.fromMessage((Message<?>) object).copyHeaders(headers).build() :
|
||||
MessageBuilder.withPayload(object).copyHeaders(headers).build();
|
||||
requestMessage = this.writeMessageHistory(requestMessage);
|
||||
requestMessage = MessageHistoryWriter.writeHistory(this, requestMessage);
|
||||
if (!this.expectReply) {
|
||||
this.send(requestMessage);
|
||||
}
|
||||
|
||||
@@ -23,6 +23,7 @@ import javax.jms.Destination;
|
||||
|
||||
import org.springframework.integration.Message;
|
||||
import org.springframework.integration.MessagingException;
|
||||
import org.springframework.integration.context.MessageHistoryWriter;
|
||||
import org.springframework.integration.core.MessageBuilder;
|
||||
import org.springframework.integration.core.MessageSource;
|
||||
import org.springframework.jms.core.JmsTemplate;
|
||||
@@ -87,7 +88,7 @@ public class JmsDestinationPollingSource extends AbstractJmsTemplateBasedAdapter
|
||||
MessageBuilder<Object> builder = (convertedObject instanceof Message)
|
||||
? MessageBuilder.fromMessage((Message<Object>) convertedObject) : MessageBuilder.withPayload(convertedObject);
|
||||
convertedMessage = builder.copyHeadersIfAbsent(mappedHeaders).build();
|
||||
convertedMessage = this.writeMessageHistory(convertedMessage);
|
||||
convertedMessage = MessageHistoryWriter.writeHistory(this, convertedMessage);
|
||||
}
|
||||
catch (Exception e) {
|
||||
throw new MessagingException(e.getMessage(), e);
|
||||
|
||||
@@ -20,6 +20,7 @@ import javax.jms.JMSException;
|
||||
|
||||
import org.springframework.core.Ordered;
|
||||
import org.springframework.integration.Message;
|
||||
import org.springframework.integration.context.MessageHistoryWriter;
|
||||
import org.springframework.integration.core.MessageHandler;
|
||||
import org.springframework.jms.core.JmsTemplate;
|
||||
import org.springframework.jms.core.MessagePostProcessor;
|
||||
@@ -62,7 +63,7 @@ public class JmsSendingMessageHandler extends AbstractJmsTemplateBasedAdapter im
|
||||
if (message == null) {
|
||||
throw new IllegalArgumentException("message must not be null");
|
||||
}
|
||||
final Message<?> messageToSend = this.writeMessageHistory(message);
|
||||
final Message<?> messageToSend = MessageHistoryWriter.writeHistory(this, message);
|
||||
this.getJmsTemplate().convertAndSend(messageToSend, new MessagePostProcessor() {
|
||||
public javax.jms.Message postProcessMessage(javax.jms.Message jmsMessage)
|
||||
throws JMSException {
|
||||
|
||||
@@ -10,7 +10,7 @@
|
||||
xmlns:int-jms="http://www.springframework.org/schema/integration/jms"
|
||||
xmlns:jms="http://www.springframework.org/schema/jms"
|
||||
xmlns:task="http://www.springframework.org/schema/task">
|
||||
|
||||
|
||||
<int:gateway id="sampleGateway"
|
||||
service-interface="org.springframework.integration.jms.config.JmsMessageHistoryTests$SampleGateway"
|
||||
default-request-channel="outbound-channel">
|
||||
@@ -19,8 +19,7 @@
|
||||
<int:channel id="outbound-channel"/>
|
||||
|
||||
<int-jms:outbound-channel-adapter id="jmsOutbound" channel="outbound-channel" destination-name="request.queue_c"/>
|
||||
|
||||
|
||||
|
||||
<int-jms:inbound-channel-adapter id="sampleJmsInboundAdapter" channel="jmsInputChannel" destination-name="request.queue_c"/>
|
||||
|
||||
<int:channel id="jmsInputChannel">
|
||||
@@ -41,6 +40,6 @@
|
||||
<property name="cacheProducers" value="false"/>
|
||||
</bean>
|
||||
|
||||
<bean id="historyWriter" class="org.springframework.integration.context.MessageHistoryWriter"/>
|
||||
<bean class="org.springframework.integration.context.MessageHistoryBeanPostProcessor"/>
|
||||
|
||||
</beans>
|
||||
|
||||
Reference in New Issue
Block a user