Add shutdown listner
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 4ded349..d82738b 100644
--- a/src/main/java/com/googlesource/gerrit/plugins/rabbitmq/AMQPSession.java
+++ b/src/main/java/com/googlesource/gerrit/plugins/rabbitmq/AMQPSession.java
@@ -6,6 +6,8 @@
import com.rabbitmq.client.Channel;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.ConnectionFactory;
+import com.rabbitmq.client.ShutdownListener;
+import com.rabbitmq.client.ShutdownSignalException;
import org.apache.commons.codec.CharEncoding;
import org.apache.commons.lang.StringUtils;
@@ -16,7 +18,7 @@
import java.net.URISyntaxException;
import java.util.UUID;
-public class AMQPSession {
+public class AMQPSession implements ShutdownListener {
private static final Logger LOGGER = LoggerFactory.getLogger(AMQPSession.class);
private static final String EXCHANGE_TYPE_DIRECT ="direct";
@@ -54,6 +56,7 @@
factory.setPassword(properties.getAMQPPassword());
}
connection = factory.newConnection();
+ connection.addShutdownListener(this);
LOGGER.info("Connection established.");
}
bind();
@@ -116,7 +119,6 @@
connection = null;
publishChannel = null;
}
- LOGGER.info("Disconnected.");
}
public void sendMessage(String message) {
@@ -130,4 +132,9 @@
}
}
}
+
+ @Override
+ public void shutdownCompleted(ShutdownSignalException arg0) {
+ LOGGER.info("Disconnected.");
+ }
}