Commit 128b41d4 authored by Stephane Nicoll's avatar Stephane Nicoll

Configure JmsMessagingTemplate default destination

Closes gh-16227
parent b7700ed0
...@@ -110,8 +110,19 @@ public class JmsAutoConfiguration { ...@@ -110,8 +110,19 @@ public class JmsAutoConfiguration {
@Bean @Bean
@ConditionalOnMissingBean @ConditionalOnMissingBean
@ConditionalOnSingleCandidate(JmsTemplate.class) @ConditionalOnSingleCandidate(JmsTemplate.class)
public JmsMessagingTemplate jmsMessagingTemplate(JmsTemplate jmsTemplate) { public JmsMessagingTemplate jmsMessagingTemplate(JmsProperties properties,
return new JmsMessagingTemplate(jmsTemplate); JmsTemplate jmsTemplate) {
JmsMessagingTemplate messagingTemplate = new JmsMessagingTemplate(
jmsTemplate);
mapTemplateProperties(properties.getTemplate(), messagingTemplate);
return messagingTemplate;
}
private void mapTemplateProperties(Template properties,
JmsMessagingTemplate messagingTemplate) {
PropertyMapper map = PropertyMapper.get().alwaysApplyingWhenNonNull();
map.from(properties::getDefaultDestination)
.to(messagingTemplate::setDefaultDestinationName);
} }
} }
......
...@@ -291,6 +291,18 @@ public class JmsAutoConfigurationTests { ...@@ -291,6 +291,18 @@ public class JmsAutoConfigurationTests {
}); });
} }
@Test
public void testJmsMessagingTemplateUseConfiguredDefaultDestination() {
this.contextRunner
.withPropertyValues("spring.jms.template.default-destination=testQueue")
.run((context) -> {
JmsMessagingTemplate messagingTemplate = context
.getBean(JmsMessagingTemplate.class);
assertThat(messagingTemplate.getDefaultDestinationName())
.isEqualTo("testQueue");
});
}
@Test @Test
public void testPubSubDisabledByDefault() { public void testPubSubDisabledByDefault() {
this.contextRunner.withUserConfiguration(TestConfiguration.class) this.contextRunner.withUserConfiguration(TestConfiguration.class)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment