com.github.fridujo.rabbitmq.mock.exchange.MockTopicExchange Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of rabbitmq-mock Show documentation
Show all versions of rabbitmq-mock Show documentation
Mock for RabbitMQ Java amqp-client
package com.github.fridujo.rabbitmq.mock.exchange;
import java.util.Map;
import com.github.fridujo.rabbitmq.mock.AmqArguments;
import com.github.fridujo.rabbitmq.mock.ReceiverRegistry;
public class MockTopicExchange extends MultipleReceiverExchange {
public static final String TYPE = "topic";
public MockTopicExchange(String name, AmqArguments arguments, ReceiverRegistry receiverRegistry) {
super(name, TYPE, arguments, receiverRegistry);
}
protected boolean match(BindConfiguration bindConfiguration, String routingKey, Map headers) {
String bindingRegex = bindConfiguration.bindingKey
.replace("*", "([^\\.]+)")
.replace("#", "(.+)");
return routingKey.matches(bindingRegex);
}
}