You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by cl...@apache.org on 2018/09/12 14:19:23 UTC
activemq-artemis git commit: ARTEMIS-2074 URI not transposing
ServerLocator on ConnectionFactory
Repository: activemq-artemis
Updated Branches:
refs/heads/2.6.x 74317ef9c -> 1ff80a86a
ARTEMIS-2074 URI not transposing ServerLocator on ConnectionFactory
This closes #2286
As it superceedes it
(cherry picked from commit d2d9a0e63471690a9851af1d9574fc4fc8d8bfa8)
Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo
Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/1ff80a86
Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/1ff80a86
Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/1ff80a86
Branch: refs/heads/2.6.x
Commit: 1ff80a86a4af8382b58c69a73f4f8365ca917c91
Parents: 74317ef
Author: Clebert Suconic <cl...@apache.org>
Authored: Tue Sep 4 15:15:06 2018 -0400
Committer: Clebert Suconic <cl...@apache.org>
Committed: Wed Sep 12 10:19:16 2018 -0400
----------------------------------------------------------------------
.../artemis/jms/client/ActiveMQConnectionFactory.java | 8 ++++++++
.../apache/activemq/artemis/uri/AbstractCFSchema.java | 9 +++++++++
.../java/org/apache/activemq/artemis/uri/InVMSchema.java | 4 +++-
.../org/apache/activemq/artemis/uri/JGroupsSchema.java | 2 +-
.../java/org/apache/activemq/artemis/uri/TCPSchema.java | 2 +-
.../java/org/apache/activemq/artemis/uri/UDPSchema.java | 2 +-
.../tests/integration/jms/SimpleJNDIClientTest.java | 11 +++++++++++
7 files changed, 34 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/1ff80a86/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnectionFactory.java
----------------------------------------------------------------------
diff --git a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnectionFactory.java b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnectionFactory.java
index a0d036c..df4611e 100644
--- a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnectionFactory.java
+++ b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnectionFactory.java
@@ -67,6 +67,14 @@ public class ActiveMQConnectionFactory extends JNDIStorable implements Connectio
private static final long serialVersionUID = 6730844785641767519L;
+ public ServerLocator setUseTopologyForLoadBalancing(boolean useTopologyForLoadBalancing) {
+ return serverLocator.setUseTopologyForLoadBalancing(useTopologyForLoadBalancing);
+ }
+
+ public boolean getUseTopologyForLoadBalancing() {
+ return serverLocator.getUseTopologyForLoadBalancing();
+ }
+
private ServerLocator serverLocator;
private String clientID;
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/1ff80a86/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/AbstractCFSchema.java
----------------------------------------------------------------------
diff --git a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/AbstractCFSchema.java b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/AbstractCFSchema.java
index 9b407db..54bd574 100644
--- a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/AbstractCFSchema.java
+++ b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/AbstractCFSchema.java
@@ -36,4 +36,13 @@ public abstract class AbstractCFSchema extends URISchema<ActiveMQConnectionFacto
return BeanSupport.setData(uri, new JMSConnectionOptions(), query);
}
+
+ protected ActiveMQConnectionFactory setData(URI uri,
+ Map<String, String> query,
+ ActiveMQConnectionFactory factory) throws Exception {
+ BeanSupport.setData(uri, factory.getServerLocator(), query);
+ return BeanSupport.setData(uri, factory, query);
+ }
+
+
}
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/1ff80a86/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/InVMSchema.java
----------------------------------------------------------------------
diff --git a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/InVMSchema.java b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/InVMSchema.java
index 73e826a..15a5ce2 100644
--- a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/InVMSchema.java
+++ b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/InVMSchema.java
@@ -39,7 +39,9 @@ public class InVMSchema extends AbstractCFSchema {
String name) throws Exception {
JMSConnectionOptions options = newConectionOptions(uri, query);
ActiveMQConnectionFactory factory = ActiveMQJMSClient.createConnectionFactoryWithoutHA(options.getFactoryTypeEnum(), InVMTransportConfigurationSchema.createTransportConfiguration(uri, query, name, "org.apache.activemq.artemis.core.remoting.impl.invm.InVMConnectorFactory"));
- return BeanSupport.setData(uri, factory, query);
+ BeanSupport.setData(uri, factory, query);
+ BeanSupport.setData(uri, factory.getServerLocator(), query);
+ return factory;
}
@Override
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/1ff80a86/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/JGroupsSchema.java
----------------------------------------------------------------------
diff --git a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/JGroupsSchema.java b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/JGroupsSchema.java
index 2d82018..653d6e1 100644
--- a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/JGroupsSchema.java
+++ b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/JGroupsSchema.java
@@ -52,7 +52,7 @@ public class JGroupsSchema extends AbstractCFSchema {
} else {
factory = ActiveMQJMSClient.createConnectionFactoryWithoutHA(dcConfig, options.getFactoryTypeEnum());
}
- return BeanSupport.setData(uri, factory, query);
+ return setData(uri, query, factory);
}
@Override
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/1ff80a86/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/TCPSchema.java
----------------------------------------------------------------------
diff --git a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/TCPSchema.java b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/TCPSchema.java
index 8ea3cfc..eddff33 100644
--- a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/TCPSchema.java
+++ b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/TCPSchema.java
@@ -57,7 +57,7 @@ public class TCPSchema extends AbstractCFSchema {
factory = ActiveMQJMSClient.createConnectionFactoryWithoutHA(options.getFactoryTypeEnum(), tcs);
}
- return BeanSupport.setData(uri, factory, query);
+ return setData(uri, query, factory);
}
@Override
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/1ff80a86/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/UDPSchema.java
----------------------------------------------------------------------
diff --git a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/UDPSchema.java b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/UDPSchema.java
index 45f7ebf..cb4e217 100644
--- a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/UDPSchema.java
+++ b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/uri/UDPSchema.java
@@ -49,7 +49,7 @@ public class UDPSchema extends AbstractCFSchema {
} else {
factory = ActiveMQJMSClient.createConnectionFactoryWithoutHA(dgc, options.getFactoryTypeEnum());
}
- return BeanSupport.setData(uri, factory, query);
+ return setData(uri, query, factory);
}
@Override
http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/1ff80a86/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/jms/SimpleJNDIClientTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/jms/SimpleJNDIClientTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/jms/SimpleJNDIClientTest.java
index 2acdb0b..a18248e 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/jms/SimpleJNDIClientTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/artemis/tests/integration/jms/SimpleJNDIClientTest.java
@@ -719,4 +719,15 @@ public class SimpleJNDIClientTest extends ActiveMQTestBase {
connection.close();
}
+
+ @Test
+ public void testUseTopologyForLoadBalancing() throws Exception {
+ Hashtable<String, String> props = new Hashtable<>();
+ props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.artemis.jndi.ActiveMQInitialContextFactory");
+ props.put("connectionFactory.ConnectionFactory", "vm://0?useTopologyForLoadBalancing=false");
+ Context ctx = new InitialContext(props);
+
+ ConnectionFactory connectionFactory = (ConnectionFactory) ctx.lookup("ConnectionFactory");
+ assertFalse(((ActiveMQConnectionFactory)connectionFactory).getServerLocator().getUseTopologyForLoadBalancing());
+ }
}
\ No newline at end of file