diff --git a/src/main/java/org/gridsuite/loadflow/server/config/RabbitConsumerConfig.java b/src/main/java/org/gridsuite/loadflow/server/config/RabbitConsumerConfig.java deleted file mode 100644 index 74dfcce7..00000000 --- a/src/main/java/org/gridsuite/loadflow/server/config/RabbitConsumerConfig.java +++ /dev/null @@ -1,36 +0,0 @@ -package org.gridsuite.loadflow.server.config; - -import org.springframework.amqp.rabbit.listener.MessageListenerContainer; -import org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer; -import org.springframework.cloud.stream.config.ListenerContainerCustomizer; -import org.springframework.context.annotation.Bean; -import org.springframework.context.annotation.Configuration; - -import java.util.Map; -import java.util.Objects; -import java.util.concurrent.atomic.AtomicInteger; - -@Configuration -public class RabbitConsumerConfig { - /* - * RabbitMQ consumer priority: - * https://www.rabbitmq.com/docs/consumer-priority - * - * Each container creates exactly one AMQP consumer with prefetch=1 and its own priority. - * When dispatching messages, RabbitMQ always selects the highest-priority consumer - * that is available. - */ - @Bean - public ListenerContainerCustomizer customizer() { - /* - * Using AtomicInteger as in org/springframework/cloud/stream/binder/rabbit/RabbitMessageChannelBinder.java - * We expect cloud stream to call our customizer exactly once in order for each container so it will produce a sequence of increasing priorities - */ - AtomicInteger index = new AtomicInteger(); - return (container, destination, group) -> { - if (container instanceof SimpleMessageListenerContainer smlc && Objects.equals(group, "loadflowGroup")) { - smlc.setConsumerArguments(Map.of("x-priority", index.getAndIncrement())); - } - }; - } -}