Fix AutoCreateQueueClusterTest

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

Branch: refs/heads/ARTEMIS-780
Commit: 98309cceff79f1e0e88e5da4c40f89c55e9e742d
Parents: 7a15abe
Author: jbertram <[email protected]>
Authored: Mon Nov 14 17:36:26 2016 -0600
Committer: jbertram <[email protected]>
Committed: Tue Nov 15 10:38:13 2016 -0600

----------------------------------------------------------------------
 .../artemis/jms/client/ActiveMQSession.java     |  2 ++
 .../jms/cluster/AutoCreateQueueClusterTest.java |  6 +++--
 .../tests/util/JMSClusteredTestBase.java        | 23 +++++++++++++++-----
 3 files changed, 24 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/98309cce/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQSession.java
----------------------------------------------------------------------
diff --git 
a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQSession.java
 
b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQSession.java
index e0cef1d..f514dba 100644
--- 
a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQSession.java
+++ 
b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQSession.java
@@ -301,6 +301,8 @@ public class ActiveMQSession implements QueueSession, 
TopicSession {
 
             if (!response.isExists()) {
                if (jbd.isQueue() && response.isAutoCreateJmsQueues()) {
+                  // TODO create queue here in such a way that it is deleted 
when consumerCount == 0
+                  // perhaps just relying on the broker to do it is simplest 
(i.e. deleteOnNoConsumers)
                   session.createAddress(jbd.getSimpleAddress(), false, true);
                   session.createQueue(jbd.getSimpleAddress(), 
jbd.getSimpleAddress(), null, true);
                } else if (!jbd.isQueue() && response.isAutoCreateJmsTopics()) {

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/98309cce/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/jms/cluster/AutoCreateQueueClusterTest.java
----------------------------------------------------------------------
diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/jms/cluster/AutoCreateQueueClusterTest.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/jms/cluster/AutoCreateQueueClusterTest.java
index cda5494..eb3d184 100644
--- 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/jms/cluster/AutoCreateQueueClusterTest.java
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/jms/cluster/AutoCreateQueueClusterTest.java
@@ -58,13 +58,15 @@ public class AutoCreateQueueClusterTest extends 
JMSClusteredTestBase {
 
          Session session2 = conn2.createSession(false, 
Session.AUTO_ACKNOWLEDGE);
 
-         MessageProducer prod1 = 
session1.createProducer(ActiveMQJMSClient.createQueue("myQueue"));
+         // TODO the "jms." prefix is required here because the cluster 
connection only works for queues which start with "jms"
+         MessageProducer prod1 = 
session1.createProducer(ActiveMQJMSClient.createQueue("jms.myQueue"));
 
          prod1.setDeliveryMode(DeliveryMode.PERSISTENT);
 
          prod1.send(session1.createTextMessage("m1"));
 
-         MessageConsumer cons2 = 
session2.createConsumer(ActiveMQJMSClient.createQueue("myQueue"));
+         // TODO the "jms." prefix is required here because the cluster 
connection only works for queues which start with "jms"
+         MessageConsumer cons2 = 
session2.createConsumer(ActiveMQJMSClient.createQueue("jms.myQueue"));
 
          TextMessage received = (TextMessage) cons2.receive(5000);
 

http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/98309cce/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/util/JMSClusteredTestBase.java
----------------------------------------------------------------------
diff --git 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/util/JMSClusteredTestBase.java
 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/util/JMSClusteredTestBase.java
index edf0397..30fdfd4 100644
--- 
a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/util/JMSClusteredTestBase.java
+++ 
b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/util/JMSClusteredTestBase.java
@@ -169,11 +169,24 @@ public class JMSClusteredTestBase extends 
ActiveMQTestBase {
       final String destinationLabel = "toServer" + destination;
       final String sourceLabel = "server" + source;
 
-      Configuration configuration = 
createDefaultInVMConfig(source).setSecurityEnabled(false).setJMXManagementEnabled(true).setPersistenceEnabled(false).addConnectorConfiguration(destinationLabel,
 new TransportConfiguration(InVMConnectorFactory.class.getName(), 
generateInVMParams(destination))).addConnectorConfiguration(sourceLabel, new 
TransportConfiguration(InVMConnectorFactory.class.getName(), 
generateInVMParams(source))).addClusterConfiguration(new 
ClusterConnectionConfiguration().setName(destinationLabel).setAddress("jms").setConnectorName(sourceLabel).setRetryInterval(250).setMaxHops(MAX_HOPS).setConfirmationWindowSize(1024).setMessageLoadBalancingType(MessageLoadBalancingType.ON_DEMAND).setStaticConnectors(new
 ArrayList<String>() {
-         {
-            add(destinationLabel);
-         }
-      }));
+      Configuration configuration = 
createDefaultInVMConfig(source).setSecurityEnabled(false)
+                                                                   
.setJMXManagementEnabled(true)
+                                                                   
.setPersistenceEnabled(false)
+                                                                   
.addConnectorConfiguration(destinationLabel, new 
TransportConfiguration(InVMConnectorFactory.class.getName(), 
generateInVMParams(destination)))
+                                                                   
.addConnectorConfiguration(sourceLabel, new 
TransportConfiguration(InVMConnectorFactory.class.getName(), 
generateInVMParams(source)))
+                                                                   
.addClusterConfiguration(new 
ClusterConnectionConfiguration().setName(destinationLabel)
+                                                                               
                                                 // TODO should this be changed?
+                                                                               
                                                 .setAddress("jms")
+                                                                               
                                                 .setConnectorName(sourceLabel)
+                                                                               
                                                 .setRetryInterval(250)
+                                                                               
                                                 .setMaxHops(MAX_HOPS)
+                                                                               
                                                 
.setConfirmationWindowSize(1024)
+                                                                               
                                                 
.setMessageLoadBalancingType(MessageLoadBalancingType.ON_DEMAND)
+                                                                               
                                                 .setStaticConnectors(new 
ArrayList<String>() {
+                                                                               
                                                    {
+                                                                               
                                                       add(destinationLabel);
+                                                                               
                                                    }
+                                                                               
                                                 }));
 
       configuration.getAddressesSettings().put("#", new 
AddressSettings().setRedistributionDelay(0));
 

Reply via email to