You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by kw...@apache.org on 2015/04/06 12:55:32 UTC

svn commit: r1671509 - in /qpid/trunk/qpid/java/broker-core/src: main/java/org/apache/qpid/server/virtualhostalias/ test/java/org/apache/qpid/server/util/ test/java/org/apache/qpid/server/virtualhostalias/

Author: kwall
Date: Mon Apr  6 10:55:32 2015
New Revision: 1671509

URL: http://svn.apache.org/r1671509
Log:
QPID-6442: [Java Broker]  Compare the Broker#defaultVirtualHost against the virtualhost name, not the virtualhost node name.

Modified:
    qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/DefaultVirtualHostAliasImpl.java
    qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/HostNameAliasImpl.java
    qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/util/BrokerTestHelper.java
    qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostalias/VirtualHostAliasTest.java

Modified: qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/DefaultVirtualHostAliasImpl.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/DefaultVirtualHostAliasImpl.java?rev=1671509&r1=1671508&r2=1671509&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/DefaultVirtualHostAliasImpl.java (original)
+++ qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/DefaultVirtualHostAliasImpl.java Mon Apr  6 10:55:32 2015
@@ -26,6 +26,7 @@ import org.apache.qpid.server.model.Brok
 import org.apache.qpid.server.model.DefaultVirtualHostAlias;
 import org.apache.qpid.server.model.ManagedObjectFactoryConstructor;
 import org.apache.qpid.server.model.Port;
+import org.apache.qpid.server.model.VirtualHost;
 import org.apache.qpid.server.model.VirtualHostNode;
 
 public final class DefaultVirtualHostAliasImpl
@@ -48,7 +49,9 @@ public final class DefaultVirtualHostAli
             String defaultHostName = broker.getDefaultVirtualHost();
             for(VirtualHostNode<?> vhn : broker.getVirtualHostNodes())
             {
-                if(vhn.getName().equals(defaultHostName))
+                VirtualHost vh = vhn.getVirtualHost();
+
+                if(vh != null && vh.getName().equals(defaultHostName))
                 {
                     return vhn;
                 }

Modified: qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/HostNameAliasImpl.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/HostNameAliasImpl.java?rev=1671509&r1=1671508&r2=1671509&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/HostNameAliasImpl.java (original)
+++ qpid/trunk/qpid/java/broker-core/src/main/java/org/apache/qpid/server/virtualhostalias/HostNameAliasImpl.java Mon Apr  6 10:55:32 2015
@@ -42,6 +42,7 @@ import org.apache.qpid.server.model.Brok
 import org.apache.qpid.server.model.HostNameAlias;
 import org.apache.qpid.server.model.ManagedObjectFactoryConstructor;
 import org.apache.qpid.server.model.Port;
+import org.apache.qpid.server.model.VirtualHost;
 import org.apache.qpid.server.model.VirtualHostNode;
 import org.apache.qpid.server.model.port.AmqpPort;
 
@@ -90,7 +91,8 @@ public class HostNameAliasImpl
                 String defaultHostName = broker.getDefaultVirtualHost();
                 for (VirtualHostNode<?> vhn : broker.getVirtualHostNodes())
                 {
-                    if (vhn.getName().equals(defaultHostName))
+                    VirtualHost vh = vhn.getVirtualHost();
+                    if (vh != null && vh.getName().equals(defaultHostName))
                     {
                         return vhn;
                     }

Modified: qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/util/BrokerTestHelper.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/util/BrokerTestHelper.java?rev=1671509&r1=1671508&r2=1671509&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/util/BrokerTestHelper.java (original)
+++ qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/util/BrokerTestHelper.java Mon Apr  6 10:55:32 2015
@@ -122,13 +122,14 @@ public class BrokerTestHelper
         return createVirtualHost(attributes, broker);
     }
 
-    public static VirtualHostImpl<?, ?, ?> createVirtualHost(final Map<String, Object> attributes,
+    private static VirtualHostImpl<?, ?, ?> createVirtualHost(final Map<String, Object> attributes,
                                                                 final Broker<?> broker)
     {
         ConfiguredObjectFactory objectFactory = broker.getObjectFactory();
 
         VirtualHostNode virtualHostNode = mock(VirtualHostNode.class);
-        when(virtualHostNode.getName()).thenReturn((String) attributes.get(VirtualHostNode.NAME));
+        String virtualHostNodeName = String.format("%s_%s", attributes.get(VirtualHostNode.NAME), "_node");
+        when(virtualHostNode.getName()).thenReturn( virtualHostNodeName);
         when(virtualHostNode.getTaskExecutor()).thenReturn(TASK_EXECUTOR);
         when(virtualHostNode.getChildExecutor()).thenReturn(TASK_EXECUTOR);
 

Modified: qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostalias/VirtualHostAliasTest.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostalias/VirtualHostAliasTest.java?rev=1671509&r1=1671508&r2=1671509&view=diff
==============================================================================
--- qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostalias/VirtualHostAliasTest.java (original)
+++ qpid/trunk/qpid/java/broker-core/src/test/java/org/apache/qpid/server/virtualhostalias/VirtualHostAliasTest.java Mon Apr  6 10:55:32 2015
@@ -61,7 +61,10 @@ public class VirtualHostAliasTest extend
         _vhosts = new HashMap<>();
         for(String name : new String[] { "red", "blue", "purple", "black" })
         {
-            _vhosts.put(name, BrokerTestHelper.createVirtualHost(name, _broker));
+            VirtualHostImpl<?, ?, ?> virtualHost = BrokerTestHelper.createVirtualHost(name, _broker);
+            VirtualHostNode vhn = virtualHost.getParent(VirtualHostNode.class);
+            assertNotSame(vhn.getName(), virtualHost.getName());
+            _vhosts.put(name, virtualHost);
         }
         ConfiguredObjectFactory objectFactory = _broker.getObjectFactory();
         when(_broker.getDefaultVirtualHost()).thenReturn("black");
@@ -75,7 +78,7 @@ public class VirtualHostAliasTest extend
 
     }
 
-    public void testDefaultAliases()
+    public void testDefaultAliases_VirtualHostNameAlias()
     {
         VirtualHostImpl vhost = _port.getVirtualHost("red");
 
@@ -90,20 +93,25 @@ public class VirtualHostAliasTest extend
         vhost = _port.getVirtualHost("orange!");
 
         assertNull(vhost);
+    }
+
+    public void testDefaultAliases_DefaultVirtualHostAlias()
+    {
 
         // test the default vhost resolution
-        vhost = _port.getVirtualHost("");
+        VirtualHostImpl vhost = _port.getVirtualHost("");
 
         assertNotNull(vhost);
         assertEquals(_vhosts.get("black"), vhost);
+    }
 
-
+    public void testDefaultAliases_HostNameAlias()
+    {
         // 127.0.0.1 should always resolve and thus return the default vhost
-        vhost = _port.getVirtualHost("127.0.0.1");
+        VirtualHostImpl vhost = _port.getVirtualHost("127.0.0.1");
 
         assertNotNull(vhost);
         assertEquals(_vhosts.get("black"), vhost);
-
     }
 
     public void testPatternMatching()



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org