You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2013/11/08 15:51:53 UTC
[3/5] git commit: CAMEL-6909: Added exchangeType option to
camel-rabbit. Thanks to Dmitry Buzdin for the patch.
CAMEL-6909: Added exchangeType option to camel-rabbit. Thanks to Dmitry Buzdin for the patch.
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/a16b9072
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/a16b9072
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/a16b9072
Branch: refs/heads/master
Commit: a16b90726f42331194b87da55ced3fc6c6aa41f6
Parents: d389a6e
Author: Claus Ibsen <da...@apache.org>
Authored: Fri Nov 8 15:29:05 2013 +0100
Committer: Claus Ibsen <da...@apache.org>
Committed: Fri Nov 8 15:52:32 2013 +0100
----------------------------------------------------------------------
.../component/rabbitmq/RabbitMQConsumer.java | 6 +++--
.../component/rabbitmq/RabbitMQEndpoint.java | 9 +++++++
.../rabbitmq/RabbitMQComponentTest.java | 27 +++++++++++++++++---
3 files changed, 37 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/a16b9072/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQConsumer.java
----------------------------------------------------------------------
diff --git a/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQConsumer.java b/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQConsumer.java
index f2fa128..df3f698 100644
--- a/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQConsumer.java
+++ b/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQConsumer.java
@@ -55,8 +55,10 @@ public class RabbitMQConsumer extends DefaultConsumer {
channel = conn.createChannel();
log.debug("Using channel {}", channel);
- channel.exchangeDeclare(endpoint.getExchangeName(), "direct",
- endpoint.isDurable(), endpoint.isAutoDelete(),
+ channel.exchangeDeclare(endpoint.getExchangeName(),
+ endpoint.getExchangeType(),
+ endpoint.isDurable(),
+ endpoint.isAutoDelete(),
new HashMap<String, Object>());
// need to make sure the queueDeclare is same with the exchange declare
http://git-wip-us.apache.org/repos/asf/camel/blob/a16b9072/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQEndpoint.java
----------------------------------------------------------------------
diff --git a/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQEndpoint.java b/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQEndpoint.java
index 4423721..b008646 100644
--- a/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQEndpoint.java
+++ b/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQEndpoint.java
@@ -51,6 +51,7 @@ public class RabbitMQEndpoint extends DefaultEndpoint {
private boolean durable = true;
private String queue = String.valueOf(UUID.randomUUID().toString().hashCode());
private String exchangeName;
+ private String exchangeType = "direct";
private String routingKey;
public RabbitMQEndpoint() {
@@ -214,6 +215,14 @@ public class RabbitMQEndpoint extends DefaultEndpoint {
this.exchangeName = exchangeName;
}
+ public String getExchangeType() {
+ return exchangeType;
+ }
+
+ public void setExchangeType(String exchangeType) {
+ this.exchangeType = exchangeType;
+ }
+
public String getRoutingKey() {
return routingKey;
}
http://git-wip-us.apache.org/repos/asf/camel/blob/a16b9072/components/camel-rabbitmq/src/test/java/org/apache/camel/component/rabbitmq/RabbitMQComponentTest.java
----------------------------------------------------------------------
diff --git a/components/camel-rabbitmq/src/test/java/org/apache/camel/component/rabbitmq/RabbitMQComponentTest.java b/components/camel-rabbitmq/src/test/java/org/apache/camel/component/rabbitmq/RabbitMQComponentTest.java
index 244bc29..454a26d 100644
--- a/components/camel-rabbitmq/src/test/java/org/apache/camel/component/rabbitmq/RabbitMQComponentTest.java
+++ b/components/camel-rabbitmq/src/test/java/org/apache/camel/component/rabbitmq/RabbitMQComponentTest.java
@@ -30,6 +30,18 @@ public class RabbitMQComponentTest {
private CamelContext context = Mockito.mock(CamelContext.class);
@Test
+ public void testDefaultProperties() throws Exception {
+ RabbitMQEndpoint endpoint = createEndpoint(new HashMap<String, Object>());
+
+ assertEquals(14, endpoint.getPortNumber());
+ assertEquals(10, endpoint.getThreadPoolSize());
+ assertEquals(true, endpoint.isAutoAck());
+ assertEquals(true, endpoint.isAutoDelete());
+ assertEquals(true, endpoint.isDurable());
+ assertEquals("direct", endpoint.getExchangeType());
+ }
+
+ @Test
public void testPropertiesSet() throws Exception {
Map<String, Object> params = new HashMap<String, Object>();
params.put("username", "coldplay");
@@ -40,11 +52,10 @@ public class RabbitMQComponentTest {
params.put("portNumber", 14123);
params.put("hostname", "special.host");
params.put("queue", "queuey");
+ params.put("exchangeType", "topic");
- String uri = "rabbitmq:special.host:14/queuey";
- String remaining = "special.host:14/queuey";
+ RabbitMQEndpoint endpoint = createEndpoint(params);
- RabbitMQEndpoint endpoint = new RabbitMQComponent(context).createEndpoint(uri, remaining, params);
assertEquals("chrism", endpoint.getPassword());
assertEquals("coldplay", endpoint.getUsername());
assertEquals("queuey", endpoint.getQueue());
@@ -53,5 +64,15 @@ public class RabbitMQComponentTest {
assertEquals(14123, endpoint.getPortNumber());
assertEquals(515, endpoint.getThreadPoolSize());
assertEquals(true, endpoint.isAutoAck());
+ assertEquals(true, endpoint.isAutoDelete());
+ assertEquals(true, endpoint.isDurable());
+ assertEquals("topic", endpoint.getExchangeType());
+ }
+
+ private RabbitMQEndpoint createEndpoint(Map<String, Object> params) throws Exception {
+ String uri = "rabbitmq:special.host:14/queuey";
+ String remaining = "special.host:14/queuey";
+
+ return new RabbitMQComponent(context).createEndpoint(uri, remaining, params);
}
}