ARTEMIS-109 restore optional divert routing name

Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/cb4d2e04
Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/cb4d2e04
Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/cb4d2e04

Branch: refs/heads/master
Commit: cb4d2e046e66070bd5ba6b9e3c342144be6da5b4
Parents: fd85bf7
Author: jbertram <jbert...@apache.org>
Authored: Thu Jun 11 16:05:34 2015 -0500
Committer: jbertram <jbert...@apache.org>
Committed: Thu Jun 11 16:28:06 2015 -0500

----------------------------------------------------------------------
 .../artemis/core/config/DivertConfiguration.java   |  9 ++++++++-
 .../management/ActiveMQServerControlTest.java      | 17 +++++++++++++++++
 2 files changed, 25 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/cb4d2e04/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/DivertConfiguration.java
----------------------------------------------------------------------
diff --git 
a/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/DivertConfiguration.java
 
b/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/DivertConfiguration.java
index b22239a..4f35477 100644
--- 
a/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/DivertConfiguration.java
+++ 
b/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/DivertConfiguration.java
@@ -92,7 +92,14 @@ public class DivertConfiguration implements Serializable
     */
    public DivertConfiguration setRoutingName(final String routingName)
    {
-      this.routingName = routingName;
+      if (routingName == null)
+      {
+         this.routingName = UUIDGenerator.getInstance().generateStringUUID();
+      }
+      else
+      {
+         this.routingName = routingName;
+      }
       return this;
    }
 

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/cb4d2e04/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/management/ActiveMQServerControlTest.java
----------------------------------------------------------------------
diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/management/ActiveMQServerControlTest.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/management/ActiveMQServerControlTest.java
index 6310458..51c5c3e 100644
--- 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/management/ActiveMQServerControlTest.java
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/management/ActiveMQServerControlTest.java
@@ -658,6 +658,23 @@ public class ActiveMQServerControlTest extends 
ManagementTestBase
    }
 
    @Test
+   public void testNullRouteNameOnDivert() throws Exception
+   {
+      String address = RandomUtil.randomString();
+      String name = RandomUtil.randomString();
+      String forwardingAddress = RandomUtil.randomString();
+
+      ActiveMQServerControl serverControl = createManagementControl();
+
+      checkNoResource(ObjectNameBuilder.DEFAULT.getDivertObjectName(name));
+      assertEquals(0, serverControl.getDivertNames().length);
+
+      serverControl.createDivert(name.toString(), null, address, 
forwardingAddress, true, null, null);
+
+      checkResource(ObjectNameBuilder.DEFAULT.getDivertObjectName(name));
+   }
+
+   @Test
    public void testCreateAndDestroyDivert() throws Exception
    {
       String address = RandomUtil.randomString();

Reply via email to