You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ni...@apache.org on 2014/08/27 07:56:55 UTC
git commit: CAMEL-7552 RabbitMQ Component: property to allow declare
or not queue and exchange with thanks to Ramon
Repository: camel
Updated Branches:
refs/heads/master 02973683e -> 5d3b9457e
CAMEL-7552 RabbitMQ Component: property to allow declare or not queue and exchange with thanks to Ramon
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/5d3b9457
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/5d3b9457
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/5d3b9457
Branch: refs/heads/master
Commit: 5d3b9457ee917328034281ab2b43957011d90072
Parents: 0297368
Author: Willem Jiang <wi...@gmail.com>
Authored: Wed Aug 27 13:56:39 2014 +0800
Committer: Willem Jiang <wi...@gmail.com>
Committed: Wed Aug 27 13:56:39 2014 +0800
----------------------------------------------------------------------
.../camel/component/rabbitmq/RabbitMQConsumer.java | 4 +++-
.../camel/component/rabbitmq/RabbitMQEndpoint.java | 12 +++++++++++-
.../camel/component/rabbitmq/RabbitMQProducer.java | 5 +++--
3 files changed, 17 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/5d3b9457/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 7d8b4d1..09e6ea3 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
@@ -86,7 +86,9 @@ public class RabbitMQConsumer extends DefaultConsumer {
private void startConsumers() throws IOException {
// First channel used to declare Exchange and Queue
Channel channel = openChannel();
- endpoint.declareExchangeAndQueue(channel);
+ if (getEndpoint().isDeclare()) {
+ endpoint.declareExchangeAndQueue(channel);
+ }
startConsumer(channel);
// Other channels
for (int i = 1; i < endpoint.getConcurrentConsumers(); i++) {
http://git-wip-us.apache.org/repos/asf/camel/blob/5d3b9457/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 d0484b1..78a01ef 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
@@ -73,7 +73,6 @@ public class RabbitMQEndpoint extends DefaultEndpoint {
private Boolean automaticRecoveryEnabled;
private Integer networkRecoveryInterval;
private Boolean topologyRecoveryEnabled;
-
//If it is true, prefetchSize, prefetchCount, prefetchGlobal will be used for basicOqs before starting RabbitMQConsumer
private boolean prefetchEnabled;
//Default in RabbitMq is 0.
@@ -85,6 +84,9 @@ public class RabbitMQEndpoint extends DefaultEndpoint {
* Number of concurrent consumer threads
*/
private int concurrentConsumers = 1;
+
+ //Declares a queue and exchange in RabbitMQ, then binds both.
+ private boolean declare = true;
public RabbitMQEndpoint() {
}
@@ -472,4 +474,12 @@ public class RabbitMQEndpoint extends DefaultEndpoint {
public void setConcurrentConsumers(int concurrentConsumers) {
this.concurrentConsumers = concurrentConsumers;
}
+
+ public boolean isDeclare() {
+ return declare;
+ }
+
+ public void setDeclare(boolean declare) {
+ this.declare = declare;
+ }
}
http://git-wip-us.apache.org/repos/asf/camel/blob/5d3b9457/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQProducer.java
----------------------------------------------------------------------
diff --git a/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQProducer.java b/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQProducer.java
index ea02ce2..f5c7eb4 100644
--- a/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQProducer.java
+++ b/components/camel-rabbitmq/src/main/java/org/apache/camel/component/rabbitmq/RabbitMQProducer.java
@@ -56,8 +56,9 @@ public class RabbitMQProducer extends DefaultProducer {
log.trace("Creating channel...");
this.channel = conn.createChannel();
log.debug("Created channel: {}", channel);
-
- getEndpoint().declareExchangeAndQueue(this.channel);
+ if (getEndpoint().isDeclare()) {
+ getEndpoint().declareExchangeAndQueue(this.channel);
+ }
}
@Override