16
16
17
17
package org .springframework .boot .autoconfigure .jms .activemq ;
18
18
19
- import java .util .List ;
20
19
import java .util .stream .Collectors ;
21
20
22
21
import javax .jms .ConnectionFactory ;
48
47
@ ConditionalOnMissingBean (ConnectionFactory .class )
49
48
class ActiveMQConnectionFactoryConfiguration {
50
49
51
- private static ActiveMQConnectionFactory createConnectionFactory (ActiveMQProperties properties ,
52
- List <ActiveMQConnectionFactoryCustomizer > connectionFactoryCustomizers ) {
53
- return new ActiveMQConnectionFactoryFactory (properties , connectionFactoryCustomizers )
54
- .createConnectionFactory (ActiveMQConnectionFactory .class );
55
- }
56
-
57
50
@ Configuration
58
51
@ ConditionalOnProperty (prefix = "spring.activemq.pool" , name = "enabled" , havingValue = "false" ,
59
52
matchIfMissing = true )
@@ -62,9 +55,10 @@ static class SimpleConnectionFactoryConfiguration {
62
55
@ Bean
63
56
@ ConditionalOnProperty (prefix = "spring.jms.cache" , name = "enabled" , havingValue = "false" )
64
57
public ActiveMQConnectionFactory jmsConnectionFactory (ActiveMQProperties properties ,
65
- ObjectProvider <ActiveMQConnectionFactoryCustomizer > connectionFactoryCustomizers ) {
66
- return createConnectionFactory (properties ,
67
- connectionFactoryCustomizers .orderedStream ().collect (Collectors .toList ()));
58
+ ObjectProvider <ActiveMQConnectionFactoryCustomizer > factoryCustomizers ) {
59
+ return new ActiveMQConnectionFactoryFactory (properties ,
60
+ factoryCustomizers .orderedStream ().collect (Collectors .toList ()))
61
+ .createConnectionFactory (ActiveMQConnectionFactory .class );
68
62
}
69
63
70
64
@ ConditionalOnClass (CachingConnectionFactory .class )
@@ -77,10 +71,12 @@ static class CachingConnectionFactoryConfiguration {
77
71
matchIfMissing = true )
78
72
public CachingConnectionFactory cachingJmsConnectionFactory (JmsProperties jmsProperties ,
79
73
ActiveMQProperties properties ,
80
- ObjectProvider <ActiveMQConnectionFactoryCustomizer > connectionFactoryCustomizers ) {
74
+ ObjectProvider <ActiveMQConnectionFactoryCustomizer > factoryCustomizers ) {
81
75
JmsProperties .Cache cacheProperties = jmsProperties .getCache ();
82
- CachingConnectionFactory connectionFactory = new CachingConnectionFactory (createConnectionFactory (
83
- properties , connectionFactoryCustomizers .orderedStream ().collect (Collectors .toList ())));
76
+ CachingConnectionFactory connectionFactory = new CachingConnectionFactory (
77
+ new ActiveMQConnectionFactoryFactory (properties ,
78
+ factoryCustomizers .orderedStream ().collect (Collectors .toList ()))
79
+ .createConnectionFactory (ActiveMQConnectionFactory .class ));
84
80
connectionFactory .setCacheConsumers (cacheProperties .isConsumers ());
85
81
connectionFactory .setCacheProducers (cacheProperties .isProducers ());
86
82
connectionFactory .setSessionCacheSize (cacheProperties .getSessionCacheSize ());
@@ -99,8 +95,9 @@ static class PooledConnectionFactoryConfiguration {
99
95
@ ConditionalOnProperty (prefix = "spring.activemq.pool" , name = "enabled" , havingValue = "true" )
100
96
public JmsPoolConnectionFactory pooledJmsConnectionFactory (ActiveMQProperties properties ,
101
97
ObjectProvider <ActiveMQConnectionFactoryCustomizer > factoryCustomizers ) {
102
- ActiveMQConnectionFactory connectionFactory = createConnectionFactory (properties ,
103
- factoryCustomizers .orderedStream ().collect (Collectors .toList ()));
98
+ ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactoryFactory (properties ,
99
+ factoryCustomizers .orderedStream ().collect (Collectors .toList ()))
100
+ .createConnectionFactory (ActiveMQConnectionFactory .class );
104
101
return new JmsPoolConnectionFactoryFactory (properties .getPool ())
105
102
.createPooledConnectionFactory (connectionFactory );
106
103
}
0 commit comments