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 2022/07/13 19:44:32 UTC
[activemq-artemis] branch main updated (8a6ee31055 -> d3ed11da2a)
This is an automated email from the ASF dual-hosted git repository.
clebertsuconic pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git
from 8a6ee31055 NO-JIRA Adding a non failing test on TX send and mirror
new 7ee820864b ARTEMIS-3894 - add conversion from string for list - allow core bridge static connector config via properties
new d3ed11da2a ARTEMIS-3894 - resolve errorprone warn on vargs call
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
.../core/config/impl/ConfigurationImpl.java | 13 ++++++++-
.../core/config/impl/ConfigurationImplTest.java | 33 ++++++++++++++++++++++
2 files changed, 45 insertions(+), 1 deletion(-)
[activemq-artemis] 02/02: ARTEMIS-3894 - resolve errorprone warn on vargs call
Posted by cl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
clebertsuconic pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git
commit d3ed11da2a45308038a3f1be8e0552bba4a23ecf
Author: Gary Tully <ga...@gmail.com>
AuthorDate: Wed Jul 13 16:08:05 2022 +0100
ARTEMIS-3894 - resolve errorprone warn on vargs call
---
.../org/apache/activemq/artemis/core/config/impl/ConfigurationImpl.java | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImpl.java b/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImpl.java
index d43796cc05..3ff379ba7d 100644
--- a/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImpl.java
+++ b/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImpl.java
@@ -2957,7 +2957,7 @@ public class ConfigurationImpl implements Configuration, Serializable {
// create one and initialise with name
try {
- Object instance = candidate.getParameterTypes()[candidate.getParameterCount() - 1].getDeclaredConstructor().newInstance(null);
+ Object instance = candidate.getParameterTypes()[candidate.getParameterCount() - 1].getDeclaredConstructor().newInstance((java.lang.Object[])null);
beanUtilsBean.setProperty(instance, "name", name);
// this is always going to be a little hacky b/c our config is not natively property friendly
[activemq-artemis] 01/02: ARTEMIS-3894 - add conversion from string for list - allow core bridge static connector config via properties
Posted by cl...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
clebertsuconic pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/activemq-artemis.git
commit 7ee820864b90b4b7cc6d7f59eb0443f5ac14c559
Author: Gary Tully <ga...@gmail.com>
AuthorDate: Wed Jul 13 14:24:37 2022 +0100
ARTEMIS-3894 - add conversion from string for list - allow core bridge static connector config via properties
---
.../core/config/impl/ConfigurationImpl.java | 11 ++++++++
.../core/config/impl/ConfigurationImplTest.java | 33 ++++++++++++++++++++++
2 files changed, 44 insertions(+)
diff --git a/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImpl.java b/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImpl.java
index 4d85626b98..d43796cc05 100644
--- a/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImpl.java
+++ b/artemis-server/src/main/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImpl.java
@@ -550,6 +550,17 @@ public class ConfigurationImpl implements Configuration, Serializable {
}
}, TransformerConfiguration.class);
+ beanUtils.getConvertUtils().register(new Converter() {
+ @Override
+ public <T> T convert(Class<T> type, Object value) {
+ List convertedValue = new ArrayList<String>();
+ for (String entry : value.toString().split(",")) {
+ convertedValue.add(entry);
+ }
+ return (T) convertedValue;
+ }
+ }, java.util.List.class);
+
// support 25K or 25m etc like xml config
beanUtils.getConvertUtils().register(new Converter() {
@Override
diff --git a/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImplTest.java b/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImplTest.java
index c8763c8082..3fbc6b48ca 100644
--- a/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImplTest.java
+++ b/artemis-server/src/test/java/org/apache/activemq/artemis/core/config/impl/ConfigurationImplTest.java
@@ -44,6 +44,7 @@ import org.apache.activemq.artemis.core.config.amqpBrokerConnectivity.AMQPMirror
import org.apache.activemq.artemis.core.config.ha.LiveOnlyPolicyConfiguration;
import org.apache.activemq.artemis.core.deployers.impl.FileConfigurationParser;
import org.apache.activemq.artemis.core.security.Role;
+import org.apache.activemq.artemis.core.server.ComponentConfigurationRoutingType;
import org.apache.activemq.artemis.core.server.JournalType;
import org.apache.activemq.artemis.core.server.cluster.impl.MessageLoadBalancingType;
import org.apache.activemq.artemis.core.server.plugin.impl.LoggingActiveMQServerPlugin;
@@ -630,6 +631,38 @@ public class ConfigurationImplTest extends ActiveMQTestBase {
Assert.assertEquals("2", configuration.getConnectionRouters().get(0).getPolicyConfiguration().getProperties().get(ConsistentHashModuloPolicy.MODULO));
}
+ @Test
+ public void testCoreBridgeConfiguration() throws Throwable {
+ ConfigurationImpl configuration = new ConfigurationImpl();
+
+ final String queueName = "q";
+ final String forwardingAddress = "fa";
+
+ Properties properties = new InsertionOrderedProperties();
+
+ properties.put("bridgeConfigurations.b1.queueName", queueName);
+ properties.put("bridgeConfigurations.b1.forwardingAddress", forwardingAddress);
+ properties.put("bridgeConfigurations.b1.confirmationWindowSize", "10");
+ properties.put("bridgeConfigurations.b1.routingType", "STRIP"); // enum
+ // this is a List<String> from comma sep value
+ properties.put("bridgeConfigurations.b1.staticConnectors", "a,b");
+ // flip b in place
+ properties.put("bridgeConfigurations.b1.staticConnectors[1]", "c");
+
+ configuration.parsePrefixedProperties(properties, null);
+
+ Assert.assertEquals(1, configuration.getBridgeConfigurations().size());
+ Assert.assertEquals(queueName, configuration.getBridgeConfigurations().get(0).getQueueName());
+
+ Assert.assertEquals(forwardingAddress, configuration.getBridgeConfigurations().get(0).getForwardingAddress());
+ Assert.assertEquals(10, configuration.getBridgeConfigurations().get(0).getConfirmationWindowSize());
+ Assert.assertEquals(2, configuration.getBridgeConfigurations().get(0).getStaticConnectors().size());
+ Assert.assertEquals("a", configuration.getBridgeConfigurations().get(0).getStaticConnectors().get(0));
+ Assert.assertEquals("c", configuration.getBridgeConfigurations().get(0).getStaticConnectors().get(1));
+
+ Assert.assertEquals(ComponentConfigurationRoutingType.STRIP, configuration.getBridgeConfigurations().get(0).getRoutingType());
+ }
+
@Test
public void testSetNestedPropertyOnCollections() throws Throwable {
ConfigurationImpl configuration = new ConfigurationImpl();