Skip to content

Commit 6a7c065

Browse files
committed
Added flag -sb/--skip-binding-queues
1 parent b78f9ca commit 6a7c065

File tree

2 files changed

+13
-1
lines changed

2 files changed

+13
-1
lines changed

src/main/java/com/rabbitmq/perf/MulticastParams.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ public class MulticastParams {
4949
private List<String> queueNames = new ArrayList<String>();
5050
private String routingKey = null;
5151
private boolean randomRoutingKey = false;
52+
private boolean skipBindingQueues = false;
5253

5354
private List<?> flags = new ArrayList<Object>();
5455

@@ -88,6 +89,10 @@ public void setRoutingKey(String routingKey) {
8889
public void setRandomRoutingKey(boolean randomRoutingKey) {
8990
this.randomRoutingKey = randomRoutingKey;
9091
}
92+
93+
public void setSkipBindingQueues(boolean skipBindingQueues) {
94+
this.skipBindingQueues = skipBindingQueues;
95+
}
9196

9297
public void setProducerRateLimit(float producerRateLimit) {
9398
this.producerRateLimit = producerRateLimit;
@@ -225,6 +230,10 @@ public String getRoutingKey() {
225230
public boolean getRandomRoutingKey() {
226231
return randomRoutingKey;
227232
}
233+
234+
public boolean getSkipBindingQueues() {
235+
return skipBindingQueues;
236+
}
228237

229238
public void setBodyFiles(List<String> bodyFiles) {
230239
if (bodyFiles == null) {
@@ -303,7 +312,7 @@ public List<String> configureQueues(Connection connection, String id) throws IOE
303312
generatedQueueNames.add(qName);
304313
// skipping binding to default exchange,
305314
// as it's not possible to explicitly bind to it.
306-
if (!predeclared && !"".equals(exchangeName) && !"amq.default".equals(exchangeName)) {
315+
if (!"".equals(exchangeName) && !"amq.default".equals(exchangeName) && !skipBindingQueues) {
307316
channel.queueBind(qName, exchangeName, id);
308317
}
309318
}

src/main/java/com/rabbitmq/perf/PerfTest.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@ public static void main(String[] args) {
6363
String queueNames = strArg(cmd, 'u', null);
6464
String routingKey = strArg(cmd, 'k', null);
6565
boolean randomRoutingKey = cmd.hasOption('K');
66+
boolean skipBindingQueues= cmd.hasOption("sb");
6667
int samplingInterval = intArg(cmd, 'i', 1);
6768
float producerRateLimit = floatArg(cmd, 'r', 0.0f);
6869
float consumerRateLimit = floatArg(cmd, 'R', 0.0f);
@@ -170,6 +171,7 @@ public void run() {
170171
p.setProducerTxSize( producerTxSize);
171172
p.setQueueNames( queueNames == null ? null : asList(queueNames.split(",")));
172173
p.setRoutingKey( routingKey);
174+
p.setSkipBindingQueues( skipBindingQueues);
173175
p.setRandomRoutingKey( randomRoutingKey);
174176
p.setProducerRateLimit( producerRateLimit);
175177
p.setTimeLimit( timeLimit);
@@ -235,6 +237,7 @@ private static Options getOptions() {
235237
options.addOption(new Option("u", "queue", true, "queue name"));
236238
options.addOption(new Option("k", "routing-key", true, "routing key"));
237239
options.addOption(new Option("K", "random-routing-key", false,"use random routing key per message"));
240+
options.addOption(new Option("sb", "skip-binding-queues", false,"don't bind queues to the exchange"));
238241
options.addOption(new Option("i", "interval", true, "sampling interval in seconds"));
239242
options.addOption(new Option("r", "rate", true, "producer rate limit"));
240243
options.addOption(new Option("R", "consumer-rate", true, "consumer rate limit"));

0 commit comments

Comments
 (0)