Fix bind mode selection
diff --git a/src/main/java/com/googlesource/gerrit/plugins/rabbitmq/AMQPSession.java b/src/main/java/com/googlesource/gerrit/plugins/rabbitmq/AMQPSession.java
index e4bb8f0..6915b2f 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/rabbitmq/AMQPSession.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/rabbitmq/AMQPSession.java
@@ -47,7 +47,6 @@
public void connect() {
LOGGER.info("Connect to " + properties.getAMQPUri() + "...");
ConnectionFactory factory = new ConnectionFactory();
- exchangeName = UUID.randomUUID().toString();
try {
if (StringUtils.isNotEmpty(properties.getAMQPUri())) {
factory.setUri(properties.getAMQPUri());
@@ -83,6 +82,7 @@
exchangeType = EXCHANGE_TYPE_FANOUT;
routingKey = pluginName;
}
+ exchangeName = UUID.randomUUID().toString();
LOGGER.debug("Exchange type: " + exchangeType);
LOGGER.debug("Declare exchange: " + exchangeName);
ch.exchangeDeclare(exchangeName, exchangeType, true);
@@ -92,7 +92,7 @@
ch.queueBind(properties.getAMQPQueue(), exchangeName, routingKey);
publishChannel = ch;
LOGGER.info("Channel for queue \"" + properties.getAMQPQueue() + "\" opened.");
- } else if (StringUtils.isNotEmpty(exchangeName)) {
+ } else if (StringUtils.isNotEmpty(properties.getAMQPExchange())) {
LOGGER.info("Exchange mode");
exchangeName = properties.getAMQPExchange();
LOGGER.debug("Declare exchange: " + exchangeName);