summaryrefslogtreecommitdiff
path: root/java/broker
diff options
context:
space:
mode:
authorMartin Ritchie <ritchiem@apache.org>2010-07-05 11:17:23 +0000
committerMartin Ritchie <ritchiem@apache.org>2010-07-05 11:17:23 +0000
commit8e4f09d70306350a9fd970ac5880300a791f8882 (patch)
tree04ff8ac85d3cc0a2c37dcda5e14db960c83b0bd3 /java/broker
parent854ee1deb1e2ff60514e7bfd8e3c4b548bedf2a9 (diff)
downloadqpid-python-8e4f09d70306350a9fd970ac5880300a791f8882.tar.gz
QPID-2681 : Add final SCD testing for Topic and Subscriptions
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@960553 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/broker')
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/configuration/TopicConfiguration.java15
1 files changed, 9 insertions, 6 deletions
diff --git a/java/broker/src/main/java/org/apache/qpid/server/configuration/TopicConfiguration.java b/java/broker/src/main/java/org/apache/qpid/server/configuration/TopicConfiguration.java
index c7a195f9e4..8716fed8c1 100644
--- a/java/broker/src/main/java/org/apache/qpid/server/configuration/TopicConfiguration.java
+++ b/java/broker/src/main/java/org/apache/qpid/server/configuration/TopicConfiguration.java
@@ -204,14 +204,19 @@ public class TopicConfiguration extends ConfigurationPlugin implements ExchangeC
config.addConfiguration(boundToTopics.get(0));
}
+ // If we have a subscription then attempt to look it up.
+ String subscriptionName = queue.getName();
+
// Apply subscription configurations
- if (_subscriptions.containsKey(queue.getName()))
+ if (_subscriptions.containsKey(subscriptionName))
{
- Map<String, TopicConfig> topics = _subscriptions.get(queue.getName());
+
+ //Get all the Configuration that this subscription is bound to.
+ Map<String, TopicConfig> topics = _subscriptions.get(subscriptionName);
TopicConfig subscriptionSpecificConfig = null;
- // See if we have a TopicConfig in topics for a topic we are bound to.
+ // See if we have a TopicConfig in topics for a topic we are bound to.
for (Binding binding : queue.getBindings())
{
if (binding.getExchange().getType().equals(TopicExchange.TYPE))
@@ -226,21 +231,19 @@ public class TopicConfiguration extends ConfigurationPlugin implements ExchangeC
}
}
- //todo we don't account for wild cards here. only explict matching and all subscriptions
+ //todo we don't account for wild cards here. only explicit matching and all subscriptions
if (subscriptionSpecificConfig == null)
{
// lookup the binding to see if we have a match in the subscription configs
subscriptionSpecificConfig = topics.get("#");
}
-
// Apply subscription specific config.
if (subscriptionSpecificConfig != null)
{
config.addConfiguration(subscriptionSpecificConfig);
}
}
-
return config;
}