From c92ff11e0ff110541016f44e9bf882dd40911f76 Mon Sep 17 00:00:00 2001 From: Alex Rudyy Date: Wed, 17 Jul 2013 16:11:09 +0000 Subject: QPID-4996: Restrict queue rebinding on 0.8/0-9.x path to the topic exchanges only git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1504187 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/qpid/server/protocol/v0_8/handler/QueueBindHandler.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'qpid/java/broker-plugins') diff --git a/qpid/java/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/QueueBindHandler.java b/qpid/java/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/QueueBindHandler.java index 0eed82b9de..a8e4e38422 100644 --- a/qpid/java/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/QueueBindHandler.java +++ b/qpid/java/broker-plugins/amqp-0-8-protocol/src/main/java/org/apache/qpid/server/protocol/v0_8/handler/QueueBindHandler.java @@ -23,6 +23,7 @@ package org.apache.qpid.server.protocol.v0_8.handler; import org.apache.log4j.Logger; import org.apache.qpid.AMQException; +import org.apache.qpid.exchange.ExchangeDefaults; import org.apache.qpid.framing.AMQMethodBody; import org.apache.qpid.framing.AMQShortString; import org.apache.qpid.framing.FieldTable; @@ -126,7 +127,7 @@ public class QueueBindHandler implements StateAwareMethodListener String bindingKey = String.valueOf(routingKey); Map arguments = FieldTable.convertToMap(body.getArguments()); - if(!exch.addBinding(bindingKey, queue, arguments)) + if(!exch.addBinding(bindingKey, queue, arguments) && ExchangeDefaults.TOPIC_EXCHANGE_CLASS.equals(exch.getTypeShortString())) { Binding oldBinding = exch.getBinding(bindingKey, queue, arguments); -- cgit v1.2.1