You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by or...@apache.org on 2022/08/18 10:03:14 UTC
[camel] 01/06: (chores) camel-jms: remove remaining duplicated code and consolidate pooled tests
This is an automated email from the ASF dual-hosted git repository.
orpiske pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
commit d47bf1b70e9921ba656783e0e32be015cc198382
Author: Otavio Rodolfo Piske <an...@gmail.com>
AuthorDate: Wed Aug 17 16:55:21 2022 +0200
(chores) camel-jms: remove remaining duplicated code and consolidate pooled tests
---
.../camel/component/jms/CamelJmsTestHelper.java | 122 ++-------------------
.../component/jms/JmsMessageBodySetNullTest.java | 16 +--
.../component/jms/JmsRouteRequestReplyTest.java | 6 +-
.../jms/SpringJmsRoutingSlipInOutTest.java | 2 +-
.../issues/JmsConcurrentConsumerInOnlyTest.java | 13 ++-
...etterChannelHandlerRollbackOnExceptionTest.java | 12 +-
...ansactedOnExceptionRollbackOnExceptionTest.java | 10 +-
.../jms/SpringJmsRoutingSlipInOutTest.xml | 6 +-
.../activemq/common/ConnectionFactoryHelper.java | 14 +++
9 files changed, 65 insertions(+), 136 deletions(-)
diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/CamelJmsTestHelper.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/CamelJmsTestHelper.java
index 6303b0b734a..d933b317530 100644
--- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/CamelJmsTestHelper.java
+++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/CamelJmsTestHelper.java
@@ -16,142 +16,36 @@
*/
package org.apache.camel.component.jms;
-import java.io.File;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.concurrent.atomic.AtomicInteger;
-
import javax.jms.ConnectionFactory;
-import org.apache.activemq.ActiveMQConnectionFactory;
import org.apache.activemq.pool.PooledConnectionFactory;
-import org.apache.camel.util.FileUtil;
-import org.apache.camel.util.URISupport;
+import org.apache.camel.test.infra.activemq.common.ConnectionFactoryHelper;
+import org.apache.camel.test.infra.activemq.services.LegacyEmbeddedBroker;
/**
* A helper for unit testing with Apache ActiveMQ as embedded JMS broker.
*/
public final class CamelJmsTestHelper {
- private static AtomicInteger counter = new AtomicInteger();
-
private CamelJmsTestHelper() {
}
+ @Deprecated
public static PooledConnectionFactory createPooledConnectionFactory() {
- ConnectionFactory cf = createConnectionFactory(null, null);
+ final String brokerUrl = LegacyEmbeddedBroker.createBrokerUrl();
+ ConnectionFactory cf = ConnectionFactoryHelper.createConnectionFactory(brokerUrl, null);
+
PooledConnectionFactory pooled = new PooledConnectionFactory();
pooled.setConnectionFactory(cf);
pooled.setMaxConnections(8);
return pooled;
}
- public static PooledConnectionFactory createPooledPersistentConnectionFactory() {
- ConnectionFactory cf = createPersistentConnectionFactory();
+ public static PooledConnectionFactory createPooledPersistentConnectionFactory(String brokerUrl) {
+ ConnectionFactory cf = ConnectionFactoryHelper.createPersistentConnectionFactory(brokerUrl);
PooledConnectionFactory pooled = new PooledConnectionFactory();
pooled.setConnectionFactory(cf);
pooled.setMaxConnections(8);
return pooled;
}
-
- @Deprecated
- public static ConnectionFactory createConnectionFactory() {
- return createConnectionFactory(null, null);
- }
-
- @Deprecated
- public static ConnectionFactory createConnectionFactory(String options, Integer maximumRedeliveries) {
- String url = createBrokerUrl(options);
- ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(url);
- // optimize AMQ to be as fast as possible so unit testing is quicker
- connectionFactory.setCopyMessageOnSend(false);
- connectionFactory.setOptimizeAcknowledge(true);
- connectionFactory.setOptimizedMessageDispatch(true);
- // When using asyncSend, producers will not be guaranteed to send in the order we
- // have in the tests (which may be confusing for queues) so we need this set to false.
- // Another way of guaranteeing order is to use persistent messages or transactions.
- connectionFactory.setUseAsyncSend(false);
- connectionFactory.setAlwaysSessionAsync(false);
- if (maximumRedeliveries != null) {
- connectionFactory.getRedeliveryPolicy().setMaximumRedeliveries(maximumRedeliveries);
- }
- connectionFactory.setTrustAllPackages(true);
- return connectionFactory;
- }
-
- @Deprecated
- public static ConnectionFactory createConnectionFactoryForURL(String url, Integer maximumRedeliveries) {
- ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(url);
- // optimize AMQ to be as fast as possible so unit testing is quicker
- connectionFactory.setCopyMessageOnSend(false);
- connectionFactory.setOptimizeAcknowledge(true);
- connectionFactory.setOptimizedMessageDispatch(true);
- // When using asyncSend, producers will not be guaranteed to send in the order we
- // have in the tests (which may be confusing for queues) so we need this set to false.
- // Another way of guaranteeing order is to use persistent messages or transactions.
- connectionFactory.setUseAsyncSend(false);
- connectionFactory.setAlwaysSessionAsync(false);
- if (maximumRedeliveries != null) {
- connectionFactory.getRedeliveryPolicy().setMaximumRedeliveries(maximumRedeliveries);
- }
- connectionFactory.setTrustAllPackages(true);
- return connectionFactory;
- }
-
- public static ConnectionFactory createPersistentConnectionFactory() {
- return createPersistentConnectionFactory(null);
- }
-
- public static ConnectionFactory createPersistentConnectionFactory(String options) {
- String url = createPersistentBrokerUrl(options);
- ActiveMQConnectionFactory connectionFactory = new ActiveMQConnectionFactory(url);
- // optimize AMQ to be as fast as possible so unit testing is quicker
- connectionFactory.setCopyMessageOnSend(false);
- connectionFactory.setOptimizeAcknowledge(true);
- connectionFactory.setOptimizedMessageDispatch(true);
- connectionFactory.setAlwaysSessionAsync(false);
- connectionFactory.setTrustAllPackages(true);
- return connectionFactory;
- }
-
- @Deprecated
- private static String createBrokerUrl(String options) {
- // using a unique broker name improves testing when running the entire test suite in the same JVM
- int id = counter.incrementAndGet();
- Map<String, Object> map = new HashMap<>();
- map.put("broker.useJmx", false);
- map.put("broker.persistent", false);
- return createUri("vm://test-broker-" + id, map, options);
- }
-
- public static String createPersistentBrokerUrl() {
- return createPersistentBrokerUrl(null);
- }
-
- public static String createPersistentBrokerUrl(String options) {
- // using a unique broker name improves testing when running the entire test suite in the same JVM
- int id = counter.incrementAndGet();
-
- // use an unique data directory in target
- String dir = "target/activemq-data-" + id;
- // remove dir so its empty on startup
- FileUtil.removeDir(new File(dir));
-
- Map<String, Object> map = new HashMap<>();
- map.put("broker.useJmx", false);
- map.put("broker.persistent", true);
- map.put("broker.dataDirectory", dir);
- return createUri("vm://test-broker-" + id, map, options);
- }
-
- @Deprecated
- private static String createUri(String uri, Map<String, Object> map, String options) {
- try {
- map.putAll(URISupport.parseQuery(options));
- return URISupport.appendParametersToURI(uri, map);
- } catch (Exception e) {
- throw new IllegalArgumentException(e);
- }
- }
-
}
diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsMessageBodySetNullTest.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsMessageBodySetNullTest.java
index e7b5bf523b8..82b072d040f 100644
--- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsMessageBodySetNullTest.java
+++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsMessageBodySetNullTest.java
@@ -35,7 +35,7 @@ public class JmsMessageBodySetNullTest extends AbstractJMSTest {
context.addRoutes(new RouteBuilder() {
@Override
public void configure() {
- from("jms:queue:foo")
+ from("jms:queue:JmsMessageBodySetNullTest")
.to("mock:foo")
.process(exchange -> exchange.getIn().setBody(null))
.to("mock:bar");
@@ -47,7 +47,7 @@ public class JmsMessageBodySetNullTest extends AbstractJMSTest {
getMockEndpoint("mock:bar").expectedMessageCount(1);
getMockEndpoint("mock:bar").message(0).body().isNull();
- template.sendBody("jms:queue:foo", "Hello World");
+ template.sendBody("jms:queue:JmsMessageBodySetNullTest", "Hello World");
assertMockEndpointsSatisfied();
}
@@ -57,7 +57,7 @@ public class JmsMessageBodySetNullTest extends AbstractJMSTest {
context.addRoutes(new RouteBuilder() {
@Override
public void configure() {
- from("jms:queue:foo")
+ from("jms:queue:JmsMessageBodySetNullTest")
.to("mock:foo")
.process(exchange -> exchange.getIn().setBody(null))
.to("mock:bar");
@@ -71,7 +71,7 @@ public class JmsMessageBodySetNullTest extends AbstractJMSTest {
getMockEndpoint("mock:bar").message(0).body().isNull();
getMockEndpoint("mock:bar").expectedHeaderReceived("code", 123);
- template.sendBodyAndHeader("jms:queue:foo", "Hello World", "code", 123);
+ template.sendBodyAndHeader("jms:queue:JmsMessageBodySetNullTest", "Hello World", "code", 123);
assertMockEndpointsSatisfied();
}
@@ -81,7 +81,7 @@ public class JmsMessageBodySetNullTest extends AbstractJMSTest {
context.addRoutes(new RouteBuilder() {
@Override
public void configure() {
- from("jms:queue:foo")
+ from("jms:queue:JmsMessageBodySetNullTest")
.to("mock:foo")
.setBody(simple("${null}"))
.to("mock:bar");
@@ -93,7 +93,7 @@ public class JmsMessageBodySetNullTest extends AbstractJMSTest {
getMockEndpoint("mock:bar").expectedMessageCount(1);
getMockEndpoint("mock:bar").message(0).body().isNull();
- template.sendBody("jms:queue:foo", "Hello World");
+ template.sendBody("jms:queue:JmsMessageBodySetNullTest", "Hello World");
assertMockEndpointsSatisfied();
}
@@ -103,7 +103,7 @@ public class JmsMessageBodySetNullTest extends AbstractJMSTest {
context.addRoutes(new RouteBuilder() {
@Override
public void configure() {
- from("jms:queue:foo")
+ from("jms:queue:JmsMessageBodySetNullTest")
.to("mock:foo")
.setBody(simple("${null}"))
.to("mock:bar");
@@ -117,7 +117,7 @@ public class JmsMessageBodySetNullTest extends AbstractJMSTest {
getMockEndpoint("mock:bar").message(0).body().isNull();
getMockEndpoint("mock:bar").expectedHeaderReceived("code", 123);
- template.sendBodyAndHeader("jms:queue:foo", "Hello World", "code", 123);
+ template.sendBodyAndHeader("jms:queue:JmsMessageBodySetNullTest", "Hello World", "code", 123);
assertMockEndpointsSatisfied();
}
diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteRequestReplyTest.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteRequestReplyTest.java
index 29b168066e5..1dd8ecdc779 100644
--- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteRequestReplyTest.java
+++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/JmsRouteRequestReplyTest.java
@@ -36,6 +36,7 @@ import org.apache.camel.ExchangeTimedOutException;
import org.apache.camel.Message;
import org.apache.camel.RuntimeCamelException;
import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.test.infra.activemq.common.ConnectionFactoryHelper;
import org.apache.camel.test.infra.activemq.services.LegacyEmbeddedBroker;
import org.apache.camel.test.junit5.CamelTestSupport;
import org.junit.jupiter.api.BeforeEach;
@@ -142,9 +143,8 @@ public class JmsRouteRequestReplyTest extends CamelTestSupport {
public static class ContextBuilderMessageID implements ContextBuilder {
@Override
public CamelContext buildContext(CamelContext context) {
- // final String brokerUrl = LegacyEmbeddedBroker.createBrokerUrl();
- // ConnectionFactory connectionFactory = ConnectionFactoryHelper.createConnectionFactory(brokerUrl, null);
- ConnectionFactory connectionFactory = CamelJmsTestHelper.createConnectionFactory();
+ final String brokerUrl = LegacyEmbeddedBroker.createBrokerUrl();
+ ConnectionFactory connectionFactory = ConnectionFactoryHelper.createConnectionFactory(brokerUrl, null);
JmsComponent jmsComponent = jmsComponentAutoAcknowledge(connectionFactory);
jmsComponent.getConfiguration().setUseMessageIDAsCorrelationID(true);
diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/SpringJmsRoutingSlipInOutTest.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/SpringJmsRoutingSlipInOutTest.java
index 8143045c4c5..1a977fb07a1 100644
--- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/SpringJmsRoutingSlipInOutTest.java
+++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/SpringJmsRoutingSlipInOutTest.java
@@ -35,7 +35,7 @@ public class SpringJmsRoutingSlipInOutTest extends CamelSpringTestSupport {
public void testInOutRoutingSlip() throws Exception {
getMockEndpoint("mock:result").expectedBodiesReceived("Result-Done-B-A-Hello");
- template.sendBody("activemq:queue:start", "Hello");
+ template.sendBody("activemq:queue:SpringJmsRoutingSlipInOutTest.start", "Hello");
assertMockEndpointsSatisfied();
}
diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsConcurrentConsumerInOnlyTest.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsConcurrentConsumerInOnlyTest.java
index b73781ccd7e..23a6a0374bd 100644
--- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsConcurrentConsumerInOnlyTest.java
+++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsConcurrentConsumerInOnlyTest.java
@@ -21,8 +21,11 @@ import javax.jms.ConnectionFactory;
import org.apache.camel.CamelContext;
import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.jms.CamelJmsTestHelper;
+import org.apache.camel.test.infra.activemq.services.ActiveMQService;
+import org.apache.camel.test.infra.activemq.services.ActiveMQServiceFactory;
import org.apache.camel.test.junit5.CamelTestSupport;
import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.RegisterExtension;
import static org.apache.camel.component.jms.JmsComponent.jmsComponentAutoAcknowledge;
@@ -30,13 +33,15 @@ import static org.apache.camel.component.jms.JmsComponent.jmsComponentAutoAcknow
* Concurrent consumer with InOnly test.
*/
public class JmsConcurrentConsumerInOnlyTest extends CamelTestSupport {
+ @RegisterExtension
+ public static ActiveMQService service = ActiveMQServiceFactory.createVMService();
@Test
public void testConcurrentConsumers() throws Exception {
// send messages to queue before processing
int size = 2000;
for (int i = 0; i < size; i++) {
- template.sendBody("activemq:foo", "Hello " + i);
+ template.sendBody("activemq:JmsConcurrentConsumerInOnlyTest", "Hello " + i);
}
// start route and process the messages
@@ -51,7 +56,8 @@ public class JmsConcurrentConsumerInOnlyTest extends CamelTestSupport {
protected CamelContext createCamelContext() throws Exception {
CamelContext camelContext = super.createCamelContext();
- ConnectionFactory connectionFactory = CamelJmsTestHelper.createPooledPersistentConnectionFactory();
+ ConnectionFactory connectionFactory
+ = CamelJmsTestHelper.createPooledPersistentConnectionFactory(service.serviceAddress());
camelContext.addComponent("activemq", jmsComponentAutoAcknowledge(connectionFactory));
return camelContext;
@@ -61,7 +67,8 @@ public class JmsConcurrentConsumerInOnlyTest extends CamelTestSupport {
protected RouteBuilder createRouteBuilder() {
return new RouteBuilder() {
public void configure() {
- from("activemq:foo?concurrentConsumers=2&maxConcurrentConsumers=5").routeId("foo").noAutoStartup()
+ from("activemq:JmsConcurrentConsumerInOnlyTest?concurrentConsumers=2&maxConcurrentConsumers=5").routeId("foo")
+ .noAutoStartup()
.log("${threadName} got ${body}")
.delay(simple("${random(0,10)}"))
.to("mock:foo");
diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsTransactedDeadLetterChannelHandlerRollbackOnExceptionTest.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsTransactedDeadLetterChannelHandlerRollbackOnExceptionTest.java
index 0d0803bd37e..4cf145fb88b 100644
--- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsTransactedDeadLetterChannelHandlerRollbackOnExceptionTest.java
+++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsTransactedDeadLetterChannelHandlerRollbackOnExceptionTest.java
@@ -23,15 +23,22 @@ import org.apache.camel.Exchange;
import org.apache.camel.Handler;
import org.apache.camel.RuntimeCamelException;
import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.jms.CamelJmsTestHelper;
import org.apache.camel.component.jms.JmsComponent;
+import org.apache.camel.test.infra.activemq.common.ConnectionFactoryHelper;
+import org.apache.camel.test.infra.activemq.services.ActiveMQService;
+import org.apache.camel.test.infra.activemq.services.ActiveMQServiceFactory;
import org.apache.camel.test.junit5.CamelTestSupport;
import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.RegisterExtension;
+import org.junit.jupiter.api.parallel.Isolated;
import static org.apache.camel.component.jms.JmsComponent.jmsComponentTransacted;
import static org.junit.jupiter.api.Assertions.assertNull;
+@Isolated
public class JmsTransactedDeadLetterChannelHandlerRollbackOnExceptionTest extends CamelTestSupport {
+ @RegisterExtension
+ public static ActiveMQService service = ActiveMQServiceFactory.createVMService();
public static class BadErrorHandler {
@Handler
@@ -79,7 +86,8 @@ public class JmsTransactedDeadLetterChannelHandlerRollbackOnExceptionTest extend
CamelContext camelContext = super.createCamelContext();
// no redeliveries
- ConnectionFactory connectionFactory = CamelJmsTestHelper.createConnectionFactory(null, 0);
+ ConnectionFactory connectionFactory = ConnectionFactoryHelper.createConnectionFactory(service, 0);
+
JmsComponent component = jmsComponentTransacted(connectionFactory);
camelContext.addComponent("activemq", component);
return camelContext;
diff --git a/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsTransactedOnExceptionRollbackOnExceptionTest.java b/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsTransactedOnExceptionRollbackOnExceptionTest.java
index ab1ff01bb05..6ab42b766f2 100644
--- a/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsTransactedOnExceptionRollbackOnExceptionTest.java
+++ b/components/camel-jms/src/test/java/org/apache/camel/component/jms/issues/JmsTransactedOnExceptionRollbackOnExceptionTest.java
@@ -23,15 +23,20 @@ import org.apache.camel.Exchange;
import org.apache.camel.Handler;
import org.apache.camel.RuntimeCamelException;
import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.component.jms.CamelJmsTestHelper;
import org.apache.camel.component.jms.JmsComponent;
+import org.apache.camel.test.infra.activemq.common.ConnectionFactoryHelper;
+import org.apache.camel.test.infra.activemq.services.ActiveMQService;
+import org.apache.camel.test.infra.activemq.services.ActiveMQServiceFactory;
import org.apache.camel.test.junit5.CamelTestSupport;
import org.junit.jupiter.api.Test;
+import org.junit.jupiter.api.extension.RegisterExtension;
import static org.apache.camel.component.jms.JmsComponent.jmsComponentTransacted;
import static org.junit.jupiter.api.Assertions.assertEquals;
public class JmsTransactedOnExceptionRollbackOnExceptionTest extends CamelTestSupport {
+ @RegisterExtension
+ public static ActiveMQService service = ActiveMQServiceFactory.createVMService();
public static class BadErrorHandler {
@@ -73,7 +78,8 @@ public class JmsTransactedOnExceptionRollbackOnExceptionTest extends CamelTestSu
CamelContext camelContext = super.createCamelContext();
// no redeliveries
- ConnectionFactory connectionFactory = CamelJmsTestHelper.createConnectionFactory(null, 0);
+ ConnectionFactory connectionFactory = ConnectionFactoryHelper.createConnectionFactory(service, 0);
+
JmsComponent component = jmsComponentTransacted(connectionFactory);
camelContext.addComponent("activemq", component);
return camelContext;
diff --git a/components/camel-jms/src/test/resources/org/apache/camel/component/jms/SpringJmsRoutingSlipInOutTest.xml b/components/camel-jms/src/test/resources/org/apache/camel/component/jms/SpringJmsRoutingSlipInOutTest.xml
index 38f41215b16..85bf5d63749 100644
--- a/components/camel-jms/src/test/resources/org/apache/camel/component/jms/SpringJmsRoutingSlipInOutTest.xml
+++ b/components/camel-jms/src/test/resources/org/apache/camel/component/jms/SpringJmsRoutingSlipInOutTest.xml
@@ -39,7 +39,7 @@
<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
<route>
- <from uri="activemq:queue:start"/>
+ <from uri="activemq:queue:SpringJmsRoutingSlipInOutTest.start"/>
<to uri="direct:start"/>
<to uri="bean:myBean?method=doResult"/>
<to uri="mock:result"/>
@@ -56,12 +56,12 @@
</route>
<route>
- <from uri="activemq:queue:a"/>
+ <from uri="activemq:queue:SpringJmsRoutingSlipInOutTest.a"/>
<to uri="bean:myBean?method=doA"/>
</route>
<route>
- <from uri="activemq:queue:b"/>
+ <from uri="activemq:queue:SpringJmsRoutingSlipInOutTest.b"/>
<to uri="bean:myBean?method=doB"/>
</route>
diff --git a/test-infra/camel-test-infra-activemq/src/test/java/org/apache/camel/test/infra/activemq/common/ConnectionFactoryHelper.java b/test-infra/camel-test-infra-activemq/src/test/java/org/apache/camel/test/infra/activemq/common/ConnectionFactoryHelper.java
index ff3395287bf..ccd382ebdb5 100644
--- a/test-infra/camel-test-infra-activemq/src/test/java/org/apache/camel/test/infra/activemq/common/ConnectionFactoryHelper.java
+++ b/test-infra/camel-test-infra-activemq/src/test/java/org/apache/camel/test/infra/activemq/common/ConnectionFactoryHelper.java
@@ -68,4 +68,18 @@ public final class ConnectionFactoryHelper {
connectionFactory.setTrustAllPackages(true);
return connectionFactory;
}
+
+ public static ConnectionFactory createPersistentConnectionFactory(String url) {
+ return createPersistentConnectionFactory(new ActiveMQConnectionFactory(url));
+
+ }
+
+ public static ConnectionFactory createPersistentConnectionFactory(ActiveMQConnectionFactory connectionFactory) {
+ connectionFactory.setCopyMessageOnSend(false);
+ connectionFactory.setOptimizeAcknowledge(true);
+ connectionFactory.setOptimizedMessageDispatch(true);
+ connectionFactory.setAlwaysSessionAsync(false);
+ connectionFactory.setTrustAllPackages(true);
+ return connectionFactory;
+ }
}