Author: rgreig
Date: Fri Feb  9 02:24:35 2007
New Revision: 505242

URL: http://svn.apache.org/viewvc?view=rev&rev=505242
Log:
QPID-357 : Add support for a "default" virtual host

Modified:
    incubator/qpid/trunk/qpid/java/broker/etc/virtualhosts.xml
    
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java
    
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/util/NullApplicationRegistry.java
    
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostRegistry.java

Modified: incubator/qpid/trunk/qpid/java/broker/etc/virtualhosts.xml
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/etc/virtualhosts.xml?view=diff&rev=505242&r1=505241&r2=505242
==============================================================================
--- incubator/qpid/trunk/qpid/java/broker/etc/virtualhosts.xml (original)
+++ incubator/qpid/trunk/qpid/java/broker/etc/virtualhosts.xml Fri Feb  9 
02:24:35 2007
@@ -20,6 +20,7 @@
  -
  -->
 <virtualhosts>
+    <default>test</default>
     <virtualhost>
         <name>localhost</name>
 

Modified: 
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java?view=diff&rev=505242&r1=505241&r2=505242
==============================================================================
--- 
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java
 (original)
+++ 
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/configuration/VirtualHostConfiguration.java
 Fri Feb  9 02:24:35 2007
@@ -174,7 +174,11 @@
     public void performBindings() throws AMQException, ConfigurationException
     {
         List virtualHostNames = _config.getList(VIRTUALHOST_PROPERTY_BASE + 
"name");
-
+        String defaultVirtualHostName = _config.getString("default");
+        if(defaultVirtualHostName != null)
+        {
+            
ApplicationRegistry.getInstance().getVirtualHostRegistry().setDefaultVirtualHostName(defaultVirtualHostName);
            
+        }
         _logger.info("Configuring " + virtualHostNames == null ? 0 : 
virtualHostNames.size() + " virtual hosts: " + virtualHostNames);
 
         for(Object nameObject : virtualHostNames)

Modified: 
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/util/NullApplicationRegistry.java
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/util/NullApplicationRegistry.java?view=diff&rev=505242&r1=505241&r2=505242
==============================================================================
--- 
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/util/NullApplicationRegistry.java
 (original)
+++ 
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/util/NullApplicationRegistry.java
 Fri Feb  9 02:24:35 2007
@@ -65,6 +65,7 @@
         _virtualHostRegistry = new VirtualHostRegistry();
         VirtualHost dummyHost = new VirtualHost("test",getConfiguration());
         _virtualHostRegistry.registerVirtualHost(dummyHost);
+        _virtualHostRegistry.setDefaultVirtualHostName("test");
         _authenticationManager = new NullAuthenticationManager();
 
         _configuration.addProperty("heartbeat.delay", 10 * 60); // 10 minutes

Modified: 
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostRegistry.java
URL: 
http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostRegistry.java?view=diff&rev=505242&r1=505241&r2=505242
==============================================================================
--- 
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostRegistry.java
 (original)
+++ 
incubator/qpid/trunk/qpid/java/broker/src/main/java/org/apache/qpid/server/virtualhost/VirtualHostRegistry.java
 Fri Feb  9 02:24:35 2007
@@ -31,6 +31,9 @@
 {
     private final Map<String, VirtualHost> _registry = new 
ConcurrentHashMap<String,VirtualHost>();
 
+
+    private String _defaultVirtualHostName;
+
     public synchronized void registerVirtualHost(VirtualHost host) throws 
Exception
     {
         if(_registry.containsKey(host.getName()))
@@ -42,8 +45,24 @@
 
     public VirtualHost getVirtualHost(String name)
     {
+        if(name == null || name.trim().length() == 0 )
+        {
+            name = getDefaultVirtualHostName();
+        }
+
         return _registry.get(name);
     }
+
+    private String getDefaultVirtualHostName()
+    {
+        return _defaultVirtualHostName;
+    }
+
+    public void setDefaultVirtualHostName(String defaultVirtualHostName)
+    {
+        _defaultVirtualHostName = defaultVirtualHostName;
+    }
+
 
     public Collection<VirtualHost> getVirtualHosts()
     {


Reply via email to