Skip to content

Commit 25c8247

Browse files
authored
Merge pull request #204 from freenowtech/UP-4637-remove-spring-config-bus-and-multirabbit
feat(UP-4637): migrate from spring-multirabbit to standard spring-boot-starter-amqp and removes spring-cloud-starter-bus-amqp
2 parents 5cb6ff2 + 086bdc6 commit 25c8247

4 files changed

Lines changed: 27 additions & 54 deletions

File tree

sauron-service/docker/config/sauron-service.yml

Lines changed: 6 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -36,27 +36,12 @@ management:
3636
# Spring configuration
3737
#################################################################
3838
spring:
39-
#################################################################
40-
# SpringConfigBus configuration
41-
# Rabbitmq used to enable hot reloading of your configuration[1]
42-
# Comment the block below and uncomment rabbitmq configuration
43-
# to enable SpringConfigBus
44-
#
45-
# [1] https://www.baeldung.com/spring-cloud-bus
46-
#################################################################
47-
autoconfigure:
48-
exclude: org.springframework.boot.autoconfigure.amqp.RabbitAutoConfiguration
49-
cloud:
50-
stream:
51-
default:
52-
consumer:
53-
autoStartup: false
54-
# rabbitmq:
55-
# requested-heartbeat: 5
56-
# host: configbus.hostname
57-
# port: 5672
58-
# username: sauron-service
59-
# password: iamasecret
39+
rabbitmq:
40+
enabled: true
41+
host: eventsbus.hostname
42+
port: 5672
43+
username: sauron-service
44+
password: iamasecret
6045

6146
#################################################################
6247
# Sauron Rabbitmq Request Handler
@@ -68,20 +53,6 @@ spring:
6853
# [1] src/main/java/com/freenow/sauron/handler/impl/RabbitmqRequestHandler.java
6954
#################################################################
7055
# enabled: true
71-
#################################################################
72-
# When using Sauron Request Handler another Rabbitmq host can be used,
73-
# different from the SpringConfigBus. In order to allow that, Sauron
74-
# make usage of freenowtech/spring-multirabbit [1]
75-
#
76-
# [1] https://github.com/freenowtech/spring-multirabbit
77-
#################################################################
78-
# multirabbitmq:
79-
# connections:
80-
# eventBus:
81-
# host: eventsbus.hostname
82-
# port: 5672
83-
# username: sauron-service
84-
# password: iamasecret
8556

8657
#################################################################
8758
# Sauron configuration

sauron-service/pom.xml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -103,27 +103,27 @@
103103

104104
<dependency>
105105
<groupId>org.springframework.boot</groupId>
106-
<artifactId>spring-boot-starter-test</artifactId>
107-
<scope>test</scope>
106+
<artifactId>spring-boot-starter-amqp</artifactId>
108107
</dependency>
109108

110-
<!-- SPRING CLOUD CONFIG -->
111109
<dependency>
112-
<groupId>org.springframework.cloud</groupId>
113-
<artifactId>spring-cloud-starter-config</artifactId>
110+
<groupId>org.springframework.boot</groupId>
111+
<artifactId>spring-boot-starter-validation</artifactId>
114112
</dependency>
115113

116114
<dependency>
117-
<groupId>org.springframework.cloud</groupId>
118-
<artifactId>spring-cloud-starter-bus-amqp</artifactId>
115+
<groupId>org.springframework.boot</groupId>
116+
<artifactId>spring-boot-starter-test</artifactId>
117+
<scope>test</scope>
119118
</dependency>
120119

120+
<!-- SPRING CLOUD CONFIG -->
121121
<dependency>
122-
<groupId>com.free-now.multirabbit</groupId>
123-
<artifactId>spring-multirabbit</artifactId>
124-
<version>${multirabbit.version}</version>
122+
<groupId>org.springframework.cloud</groupId>
123+
<artifactId>spring-cloud-starter-config</artifactId>
125124
</dependency>
126125

126+
127127
<!-- SAURON CORE -->
128128
<dependency>
129129
<groupId>com.free-now.sauron</groupId>

sauron-service/src/main/java/com/freenow/sauron/config/RabbitmqConfig.java

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import org.springframework.amqp.rabbit.connection.ConnectionFactory;
66
import org.springframework.amqp.rabbit.core.RabbitTemplate;
77
import org.springframework.amqp.support.converter.Jackson2JsonMessageConverter;
8-
import org.springframework.beans.factory.annotation.Qualifier;
8+
import org.springframework.boot.CommandLineRunner;
99
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
1010
import org.springframework.context.annotation.Bean;
1111
import org.springframework.context.annotation.Configuration;
@@ -24,22 +24,24 @@ public Queue sauronQueue()
2424

2525

2626
@Bean
27-
public SimpleRabbitListenerContainerFactory eventBusPrefetchCount(
28-
@Qualifier("eventBus") SimpleRabbitListenerContainerFactory eventBus,
27+
public SimpleRabbitListenerContainerFactory rabbitListenerContainerFactory(
28+
final ConnectionFactory connectionFactory,
2929
final Jackson2JsonMessageConverter converter)
3030
{
31-
eventBus.setPrefetchCount(1);
32-
eventBus.setMessageConverter(converter);
33-
return eventBus;
31+
final var factory = new SimpleRabbitListenerContainerFactory();
32+
factory.setConnectionFactory(connectionFactory);
33+
factory.setPrefetchCount(1);
34+
factory.setMessageConverter(converter);
35+
return factory;
3436
}
3537

3638

3739
@Bean
3840
public RabbitTemplate rabbitTemplate(
39-
final ConnectionFactory multiRabbitConnectionFactory,
41+
final ConnectionFactory connectionFactory,
4042
final Jackson2JsonMessageConverter converter)
4143
{
42-
final var rabbitTemplate = new RabbitTemplate(multiRabbitConnectionFactory);
44+
final var rabbitTemplate = new RabbitTemplate(connectionFactory);
4345
rabbitTemplate.setMessageConverter(converter);
4446
return rabbitTemplate;
4547
}

sauron-service/src/main/java/com/freenow/sauron/handler/impl/RabbitmqRequestHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
@Setter
1919
public class RabbitmqRequestHandler implements RequestHandler
2020
{
21-
private static final String ASYNC_CONTAINER_FACTORY = "eventBus";
21+
private static final String ASYNC_CONTAINER_FACTORY = "rabbitListenerContainerFactory";
2222

2323
private static final String LISTENER_ID = "sauron-consumer";
2424

0 commit comments

Comments
 (0)