RMQ: Follow new sepia standard for routing-key At the time of writing the routing key was merely a suggestion, it has now been integrated into the sepia standard: https://github.com/eiffel-community/eiffel-sepia/issues/8 https://eiffel-community.github.io/eiffel-sepia/rabbitmq-message-broker.html Ensure that we follow the new format for the routing-key. Solves: Jira GER-1697 Change-Id: Ied68582dc8c2a11c2ec174bc177db342184dc2d3
diff --git a/src/main/java/com/googlesource/gerrit/plugins/eventseiffel/config/RabbitMqConfig.java b/src/main/java/com/googlesource/gerrit/plugins/eventseiffel/config/RabbitMqConfig.java index 3811153..0de1b58 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/eventseiffel/config/RabbitMqConfig.java +++ b/src/main/java/com/googlesource/gerrit/plugins/eventseiffel/config/RabbitMqConfig.java
@@ -84,7 +84,7 @@ private static final String CHAR_ENCODING = StandardCharsets.UTF_8.name(); private static final String CONTENT_TYPE = "application/json"; private static final String DEFAULT_APP_ID = "Gerrit"; - private static final String DEFAULT_ROUTING_KEY_TAG = "notag"; + private static final String DEFAULT_ROUTING_KEY_TAG = "_"; private static final int NON_PERSISTENT_DELIVERY_VAL = 1; private static final int PERSISTENT_DELIVERY_VAL = 2;
diff --git a/src/main/java/com/googlesource/gerrit/plugins/eventseiffel/mq/RabbitMqPublisher.java b/src/main/java/com/googlesource/gerrit/plugins/eventseiffel/mq/RabbitMqPublisher.java index 7d45b66..baa1aae 100644 --- a/src/main/java/com/googlesource/gerrit/plugins/eventseiffel/mq/RabbitMqPublisher.java +++ b/src/main/java/com/googlesource/gerrit/plugins/eventseiffel/mq/RabbitMqPublisher.java
@@ -31,12 +31,16 @@ import java.util.concurrent.TimeoutException; public class RabbitMqPublisher implements EiffelEventPublisher, LifecycleListener { - /* https://github.com/eiffel-community/eiffel-sepia/pull/9 */ - private static final String ROUTING_KEY = "eiffel.%s.%s.%s"; + /* https://eiffel-community.github.io/eiffel-sepia/rabbitmq-message-broker.html */ + private static final String ROUTING_KEY = "eiffel.%s.%s.%s.%s"; + /* In Sepia "family" is part of the routing-key but the concept of event-family doesn't exist. + * https://eiffel-community.github.io/eiffel-sepia/rabbitmq-message-broker.html*/ + private static final String DEFAULT_FAMILY = "_"; public static FluentLogger logger = FluentLogger.forEnclosingClass(); private static String toRoutingKey(EiffelEvent event, String tag) { - return String.format(ROUTING_KEY, event.meta.type.getType(), tag, event.meta.source.domainId); + return String.format( + ROUTING_KEY, DEFAULT_FAMILY, event.meta.type.getType(), tag, event.meta.source.domainId); } private volatile Connection connection;