From 886e8467432fc005c3a75cc8c69e8a13b2486f52 Mon Sep 17 00:00:00 2001 From: Robert Gemmell Date: Mon, 5 Apr 2010 15:17:11 +0000 Subject: QPID-2361: Fix to correctly set default virtualhost name in external configuration file Applied patch from Andrew Kennedy git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@930877 13f79535-47bb-0310-9956-ffa450edef68 --- .../org/apache/qpid/server/configuration/ServerConfiguration.java | 4 ++++ .../apache/qpid/server/configuration/ServerConfigurationTest.java | 5 +++++ 2 files changed, 9 insertions(+) (limited to 'java/broker/src') diff --git a/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java b/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java index edf88f9b5a..307a697a95 100644 --- a/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java +++ b/java/broker/src/main/java/org/apache/qpid/server/configuration/ServerConfiguration.java @@ -180,6 +180,10 @@ public class ServerConfiguration implements SignalHandler // Open the vhosts XML file and copy values from it to our config _vhostsFile = new File(fileName); vhostConfiguration = parseConfig(new File(fileName)); + + // save the default virtualhost name + String defaultVirtualHost = vhostConfiguration.getString("default"); + _config.setProperty("virtualhosts.default", defaultVirtualHost); } } diff --git a/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java b/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java index 934367890d..68c6b980b7 100644 --- a/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java +++ b/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java @@ -933,6 +933,7 @@ public class ServerConfigurationTest extends TestCase if (includeVhosts) { out.write("\t\n"); + out.write("\t\ttest\n"); out.write("\t\t\n"); out.write(String.format("\t\t\t%s\n", name)); out.write(String.format("\t\t<%s> \n", name)); @@ -1242,9 +1243,11 @@ public class ServerConfigurationTest extends TestCase // Test config VirtualHostRegistry virtualHostRegistry = reg.getVirtualHostRegistry(); + String defaultVirtualHost = reg.getConfiguration().getDefaultVirtualHost(); VirtualHost virtualHost = virtualHostRegistry.getVirtualHost("test"); Exchange exchange = virtualHost.getExchangeRegistry().getExchange(new AMQShortString("test.topic")); + assertEquals("Incorrect default host", "test", defaultVirtualHost); assertEquals("Incorrect virtualhost count", 1, virtualHostRegistry.getVirtualHosts().size()); assertEquals("Incorrect virtualhost name", "test", virtualHost.getName()); assertEquals("Incorrect exchange type", "topic", exchange.getType().getName().toString()); @@ -1272,9 +1275,11 @@ public class ServerConfigurationTest extends TestCase // Test config VirtualHostRegistry virtualHostRegistry = reg.getVirtualHostRegistry(); + String defaultVirtualHost = reg.getConfiguration().getDefaultVirtualHost(); VirtualHost virtualHost = virtualHostRegistry.getVirtualHost("test"); Exchange exchange = virtualHost.getExchangeRegistry().getExchange(new AMQShortString("test.topic")); + assertEquals("Incorrect default host", "test", defaultVirtualHost); assertEquals("Incorrect virtualhost count", 1, virtualHostRegistry.getVirtualHosts().size()); assertEquals("Incorrect virtualhost name", "test", virtualHost.getName()); assertEquals("Incorrect exchange type", "topic", exchange.getType().getName().toString()); -- cgit v1.2.1