diff --git a/spring-amqp/src/main/java/org/springframework/amqp/core/Exchange.java b/spring-amqp/src/main/java/org/springframework/amqp/core/Exchange.java index b6ce1576..20d977b1 100644 --- a/spring-amqp/src/main/java/org/springframework/amqp/core/Exchange.java +++ b/spring-amqp/src/main/java/org/springframework/amqp/core/Exchange.java @@ -18,8 +18,6 @@ package org.springframework.amqp.core; import java.util.Map; -import org.jspecify.annotations.Nullable; - /** * Interface for all exchanges. * @@ -63,7 +61,6 @@ public interface Exchange extends Declarable { * * @return the arguments. */ - @Nullable Map getArguments(); /** diff --git a/spring-rabbitmq-client/src/main/java/org/springframework/amqp/rabbitmq/client/RabbitAmqpAdmin.java b/spring-rabbitmq-client/src/main/java/org/springframework/amqp/rabbitmq/client/RabbitAmqpAdmin.java index 21c934b7..ada9e14a 100644 --- a/spring-rabbitmq-client/src/main/java/org/springframework/amqp/rabbitmq/client/RabbitAmqpAdmin.java +++ b/spring-rabbitmq-client/src/main/java/org/springframework/amqp/rabbitmq/client/RabbitAmqpAdmin.java @@ -19,7 +19,6 @@ package org.springframework.amqp.rabbitmq.client; import java.io.IOException; import java.util.Collection; import java.util.LinkedList; -import java.util.Map; import java.util.Objects; import java.util.Properties; import java.util.concurrent.atomic.AtomicReference; @@ -281,13 +280,10 @@ public class RabbitAmqpAdmin Management.ExchangeSpecification exchangeSpecification = management.exchange(exchange.getName()) .type(exchange.isDelayed() ? RabbitAdmin.DELAYED_MESSAGE_EXCHANGE : exchange.getType()) -// .durable(exchange.isDurable()) // .internal(exchange.isInternal()) + .arguments(exchange.getArguments()) .autoDelete(exchange.isAutoDelete()); - Map arguments = exchange.getArguments(); - if (arguments != null) { - arguments.forEach(exchangeSpecification::argument); - } + if (exchange.isDelayed()) { exchangeSpecification.argument("x-delayed-type", exchange.getType()); } @@ -326,9 +322,9 @@ public class RabbitAmqpAdmin .autoDelete(true) .exclusive(true) .classic() - // .durable(false) .queue() .declare(); + return new Queue(queueInfo.name(), false, true, true); } catch (AmqpException ex) { @@ -349,12 +345,10 @@ public class RabbitAmqpAdmin management.queue(queue.getName()) .autoDelete(queue.isAutoDelete()) .exclusive(queue.isExclusive()) + .arguments(queue.getArguments()) .classic() -// .durable(queue.isDurable()) .queue(); - queue.getArguments().forEach(queueSpecification::argument); - try { String actualName = queueSpecification.declare().name(); queue.setActualName(actualName);