diff options
| author | Martin Ritchie <ritchiem@apache.org> | 2010-07-05 11:16:32 +0000 |
|---|---|---|
| committer | Martin Ritchie <ritchiem@apache.org> | 2010-07-05 11:16:32 +0000 |
| commit | 98d957117da134952545dba32805653ef9292838 (patch) | |
| tree | bf47904859feead31075380dcbfe0dd2bcd7f2b4 /java | |
| parent | c35da6b6fde5767ea8532a512ac288bf1443bdf8 (diff) | |
| download | qpid-python-98d957117da134952545dba32805653ef9292838.tar.gz | |
QPID-2681 : Update VHC to correctly merge queues-(exchange)-queue
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@960550 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java')
| -rw-r--r-- | java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java b/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java index 967e8a03f2..d9d7083543 100644 --- a/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java +++ b/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java @@ -211,30 +211,30 @@ public class VirtualHostConfiguration extends ConfigurationPlugin ExchangeConfigurationPlugin exchangeConfiguration = (ExchangeConfigurationPlugin) queue.getVirtualHost().getConfiguration().getConfiguration(exchangeClass); - // now need to perform the queue-topic-topics-queue magic. + // now need to perform the queue-topic-topics-queues magic. // So make a new ConfigurationObject that will hold all the configuration for this queue. ConfigurationPlugin queueConfig = new QueueConfiguration.QueueConfig(); // Initialise the queue with any Global values we may have - QueueConfiguration config = getConfiguration(QueueConfiguration.class.getName()); - if (config == null) + PropertiesConfiguration newQueueConfig = new PropertiesConfiguration(); + newQueueConfig.setProperty("name", queue.getName()); + + try { - PropertiesConfiguration newQueueConfig = new PropertiesConfiguration(); - newQueueConfig.setProperty("name", queue.getName()); + //Set the queue name + CompositeConfiguration mungedConf = new CompositeConfiguration(); + //Set the queue name + mungedConf.addConfiguration(newQueueConfig); + //Set the global queue configuration + mungedConf.addConfiguration(getConfig().subset("queues")); - try - { - queueConfig.setConfiguration("", newQueueConfig); - } - catch (ConfigurationException e) - { - // This will not occur as queues only require a name. - _logger.error("QueueConfiguration requirements have changed."); - } + // Set configuration + queueConfig.setConfiguration("virtualhosts.virtualhost.queues", mungedConf); } - else + catch (ConfigurationException e) { - queueConfig.addConfiguration(config); + // This will not occur as queues only require a name. + _logger.error("QueueConfiguration requirements have changed."); } // Merge any configuration the Exchange wishes to apply |
