Skip to content

Commit 8f0d854

Browse files
committed
Use list to handle multi-URIs parameter
Fixes #16
1 parent 9474f96 commit 8f0d854

File tree

2 files changed

+13
-10
lines changed

2 files changed

+13
-10
lines changed

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

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import java.net.URISyntaxException;
2323
import java.security.KeyManagementException;
2424
import java.security.NoSuchAlgorithmException;
25+
import java.util.List;
2526
import java.util.Random;
2627
import java.util.UUID;
2728
import java.util.concurrent.TimeoutException;
@@ -32,12 +33,12 @@ public class MulticastSet {
3233
private final ConnectionFactory factory;
3334
private final MulticastParams params;
3435
private final String testID;
35-
private final String [] uris;
36+
private final List<String> uris;
3637

3738
private final Random random = new Random();
3839

3940
public MulticastSet(Stats stats, ConnectionFactory factory,
40-
MulticastParams params, String [] uris) {
41+
MulticastParams params, List<String> uris) {
4142
if (params.getRoutingKey() == null) {
4243
this.id = UUID.randomUUID().toString();
4344
} else {
@@ -51,7 +52,7 @@ public MulticastSet(Stats stats, ConnectionFactory factory,
5152
}
5253

5354
public MulticastSet(Stats stats, ConnectionFactory factory,
54-
MulticastParams params, String testID, String [] uris) {
55+
MulticastParams params, String testID, List<String> uris) {
5556
if (params.getRoutingKey() == null) {
5657
this.id = UUID.randomUUID().toString();
5758
} else {
@@ -139,7 +140,7 @@ private void setUri() throws URISyntaxException, NoSuchAlgorithmException, KeyMa
139140
}
140141

141142
private String uri() {
142-
String uri = uris[random.nextInt(uris.length)];
143+
String uri = uris.get(random.nextInt(uris.size()));
143144
return uri;
144145
}
145146
}

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

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
import java.text.SimpleDateFormat;
1919
import java.util.Arrays;
2020
import java.util.Calendar;
21+
import java.util.Collections;
2122
import java.util.List;
2223

2324
import org.apache.commons.cli.CommandLine;
@@ -76,14 +77,15 @@ public static void main(String[] args) {
7677

7778
String uri = strArg(cmd, 'h', "amqp://localhost");
7879
String urisParameter = strArg(cmd, 'H', null);
79-
String [] uris = null;
80+
List<String> uris = null;
8081
if(urisParameter != null) {
81-
uris = urisParameter.split(",");
82-
for(int i = 0; i< uris.length; i++) {
83-
uris[i] = uris[i].trim();
82+
String [] urisArray = urisParameter.split(",");
83+
for(int i = 0; i< urisArray.length; i++) {
84+
urisArray[i] = urisArray[i].trim();
8485
}
86+
uris = Arrays.asList(urisArray);
8587
} else {
86-
uris = new String [] {uri};
88+
uris = Collections.singletonList(uri);
8789
}
8890

8991
//setup
@@ -97,7 +99,7 @@ public static void main(String[] args) {
9799

98100
ConnectionFactory factory = new ConnectionFactory();
99101
factory.setShutdownTimeout(0); // So we still shut down even with slow consumers
100-
factory.setUri(uris[0]);
102+
factory.setUri(uris.get(0));
101103
factory.setRequestedFrameMax(frameMax);
102104
factory.setRequestedHeartbeat(heartbeat);
103105

0 commit comments

Comments
 (0)