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 2015/02/12 21:01:43 UTC
[3/8] activemq-6 git commit: ACTIVEMQ6-7 - Improve Serialization on
Connection Factory
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/3b76ccc9/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/discovery/DiscoveryTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/discovery/DiscoveryTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/discovery/DiscoveryTest.java
index 24ee708..6078eca 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/discovery/DiscoveryTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/discovery/DiscoveryTest.java
@@ -16,11 +16,7 @@
*/
package org.apache.activemq.tests.integration.discovery;
-import java.io.ByteArrayInputStream;
-import java.io.ByteArrayOutputStream;
import java.io.File;
-import java.io.ObjectInputStream;
-import java.io.ObjectOutputStream;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.util.Arrays;
@@ -30,10 +26,10 @@ import java.util.concurrent.TimeUnit;
import org.apache.activemq.api.core.BroadcastEndpoint;
import org.apache.activemq.api.core.BroadcastEndpointFactory;
-import org.apache.activemq.api.core.JGroupsBroadcastGroupConfiguration;
+import org.apache.activemq.api.core.JGroupsFileBroadcastEndpointFactory;
import org.apache.activemq.api.core.SimpleString;
import org.apache.activemq.api.core.TransportConfiguration;
-import org.apache.activemq.api.core.UDPBroadcastGroupConfiguration;
+import org.apache.activemq.api.core.UDPBroadcastEndpointFactory;
import org.apache.activemq.api.core.management.CoreNotificationType;
import org.apache.activemq.core.cluster.DiscoveryEntry;
import org.apache.activemq.core.cluster.DiscoveryGroup;
@@ -102,7 +98,7 @@ public class DiscoveryTest extends DiscoveryBaseTest
bg = new BroadcastGroupImpl(new FakeNodeManager(nodeID),
RandomUtil.randomString(),
- 0, null, new UDPBroadcastGroupConfiguration().setGroupAddress(address1).setGroupPort(groupPort).createBroadcastEndpointFactory());
+ 0, null, new UDPBroadcastEndpointFactory().setGroupAddress(address1).setGroupPort(groupPort));
bg.start();
@@ -132,7 +128,9 @@ public class DiscoveryTest extends DiscoveryBaseTest
final String nodeID = RandomUtil.randomString();
bg = new BroadcastGroupImpl(new FakeNodeManager(nodeID), "broadcast", 100, null,
- new JGroupsBroadcastGroupConfiguration(TEST_JGROUPS_CONF_FILE, "tst").createBroadcastEndpointFactory());
+ new JGroupsFileBroadcastEndpointFactory()
+ .setChannelName("tst")
+ .setFile(TEST_JGROUPS_CONF_FILE));
bg.start();
@@ -141,7 +139,9 @@ public class DiscoveryTest extends DiscoveryBaseTest
bg.addConnector(live1);
dg = new DiscoveryGroup(nodeID + "1", "broadcast", 5000L,
- new JGroupsBroadcastGroupConfiguration(TEST_JGROUPS_CONF_FILE, "tst").createBroadcastEndpointFactory(),
+ new JGroupsFileBroadcastEndpointFactory()
+ .setChannelName("tst")
+ .setFile(TEST_JGROUPS_CONF_FILE),
null);
dg.start();
@@ -160,9 +160,9 @@ public class DiscoveryTest extends DiscoveryBaseTest
@Test
public void testJGropusChannelReferenceCounting() throws Exception
{
- JGroupsBroadcastGroupConfiguration jgroupsConfig =
- new JGroupsBroadcastGroupConfiguration(TEST_JGROUPS_CONF_FILE, "tst");
- BroadcastEndpointFactory factory = jgroupsConfig.createBroadcastEndpointFactory();
+ BroadcastEndpointFactory factory = new JGroupsFileBroadcastEndpointFactory()
+ .setChannelName("tst")
+ .setFile(TEST_JGROUPS_CONF_FILE);
BroadcastEndpoint broadcaster = factory.createBroadcastEndpoint();
broadcaster.openBroadcaster();
@@ -222,9 +222,9 @@ public class DiscoveryTest extends DiscoveryBaseTest
@Test
public void testJGropusChannelReferenceCounting1() throws Exception
{
- JGroupsBroadcastGroupConfiguration jgroupsConfig =
- new JGroupsBroadcastGroupConfiguration(TEST_JGROUPS_CONF_FILE, "tst");
- BroadcastEndpointFactory factory = jgroupsConfig.createBroadcastEndpointFactory();
+ BroadcastEndpointFactory factory = new JGroupsFileBroadcastEndpointFactory()
+ .setChannelName("tst")
+ .setFile(TEST_JGROUPS_CONF_FILE);
BroadcastEndpoint broadcaster = factory.createBroadcastEndpoint();
broadcaster.openBroadcaster();
@@ -293,9 +293,9 @@ public class DiscoveryTest extends DiscoveryBaseTest
@Test
public void testJGropusChannelReferenceCounting2() throws Exception
{
- JGroupsBroadcastGroupConfiguration jgroupsConfig =
- new JGroupsBroadcastGroupConfiguration(TEST_JGROUPS_CONF_FILE, "tst");
- BroadcastEndpointFactory factory = jgroupsConfig.createBroadcastEndpointFactory();
+ BroadcastEndpointFactory factory = new JGroupsFileBroadcastEndpointFactory()
+ .setChannelName("tst")
+ .setFile(TEST_JGROUPS_CONF_FILE);
BroadcastEndpoint broadcaster = factory.createBroadcastEndpoint();
broadcaster.openBroadcaster();
@@ -374,13 +374,14 @@ public class DiscoveryTest extends DiscoveryBaseTest
BroadcastEndpoint client = null;
try
{
- JGroupsBroadcastGroupConfiguration jgroupsConfig =
- new JGroupsBroadcastGroupConfiguration(TEST_JGROUPS_CONF_FILE, "tst");
- broadcaster = jgroupsConfig.createBroadcastEndpointFactory().createBroadcastEndpoint();
+ JGroupsFileBroadcastEndpointFactory endpointFactory = new JGroupsFileBroadcastEndpointFactory()
+ .setChannelName("tst")
+ .setFile(TEST_JGROUPS_CONF_FILE);
+ broadcaster = endpointFactory.createBroadcastEndpoint();
broadcaster.openBroadcaster();
- client = jgroupsConfig.createBroadcastEndpointFactory().createBroadcastEndpoint();
+ client = endpointFactory.createBroadcastEndpoint();
client.openClient();
@@ -1180,26 +1181,4 @@ public class DiscoveryTest extends DiscoveryBaseTest
.getSimpleStringProperty(new SimpleString("name"))
.toString());
}
-
- /**
- * https://issues.jboss.org/browse/HORNETQ-1389
- * @throws Exception
- */
- @Test
- public void testJGroupsBroadcastGroupConfigurationSerializable() throws Exception
- {
- JGroupsBroadcastGroupConfiguration jgroupsConfig =
- new JGroupsBroadcastGroupConfiguration(TEST_JGROUPS_CONF_FILE, "somChannel");
- ByteArrayOutputStream byteOut = new ByteArrayOutputStream();
- ObjectOutputStream objectOut = new ObjectOutputStream(byteOut);
- objectOut.writeObject(jgroupsConfig);
-
- byte[] serializedData = byteOut.toByteArray();
- ByteArrayInputStream byteIn = new ByteArrayInputStream(serializedData);
- ObjectInputStream objectIn = new ObjectInputStream(byteIn);
-
- Object object = objectIn.readObject();
- assertNotNull(object);
- assertTrue(object instanceof JGroupsBroadcastGroupConfiguration);
- }
}
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/3b76ccc9/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/ActiveMQConnectionFactoryTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/ActiveMQConnectionFactoryTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/ActiveMQConnectionFactoryTest.java
index 6aace2b..ba40718 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/ActiveMQConnectionFactoryTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/ActiveMQConnectionFactoryTest.java
@@ -34,7 +34,7 @@ import org.junit.Assert;
import org.apache.activemq.api.core.BroadcastGroupConfiguration;
import org.apache.activemq.api.core.DiscoveryGroupConfiguration;
import org.apache.activemq.api.core.TransportConfiguration;
-import org.apache.activemq.api.core.UDPBroadcastGroupConfiguration;
+import org.apache.activemq.api.core.UDPBroadcastEndpointFactory;
import org.apache.activemq.api.core.client.ActiveMQClient;
import org.apache.activemq.api.jms.ActiveMQJMSClient;
import org.apache.activemq.api.jms.JMSFactoryType;
@@ -169,9 +169,9 @@ public class ActiveMQConnectionFactoryTest extends UnitTestCase
public void testDiscoveryConstructor() throws Exception
{
DiscoveryGroupConfiguration groupConfiguration = new DiscoveryGroupConfiguration()
- .setBroadcastEndpointFactoryConfiguration(new UDPBroadcastGroupConfiguration()
- .setGroupAddress(groupAddress)
- .setGroupPort(groupPort));
+ .setBroadcastEndpointFactory(new UDPBroadcastEndpointFactory()
+ .setGroupAddress(groupAddress)
+ .setGroupPort(groupPort));
ActiveMQConnectionFactory cf = ActiveMQJMSClient.createConnectionFactoryWithoutHA(groupConfiguration, JMSFactoryType.CF);
assertFactoryParams(cf,
null,
@@ -734,10 +734,10 @@ public class ActiveMQConnectionFactoryTest extends UnitTestCase
.setName(bcGroupName)
.setBroadcastPeriod(broadcastPeriod)
.setConnectorInfos(connectorNames)
- .setEndpointFactoryConfiguration(new UDPBroadcastGroupConfiguration()
- .setGroupAddress(groupAddress)
- .setGroupPort(groupPort)
- .setLocalBindPort(localBindPort));
+ .setEndpointFactory(new UDPBroadcastEndpointFactory()
+ .setGroupAddress(groupAddress)
+ .setGroupPort(groupPort)
+ .setLocalBindPort(localBindPort));
List<BroadcastGroupConfiguration> bcConfigs1 = new ArrayList<BroadcastGroupConfiguration>();
bcConfigs1.add(bcConfig1);
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/3b76ccc9/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/SimpleJNDIClientTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/SimpleJNDIClientTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/SimpleJNDIClientTest.java
index 9c48cc7..22edf72 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/SimpleJNDIClientTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/SimpleJNDIClientTest.java
@@ -31,10 +31,14 @@ import java.util.List;
import java.util.Map;
import org.apache.activemq.api.config.ActiveMQDefaultConfiguration;
+import org.apache.activemq.api.core.BroadcastEndpoint;
+import org.apache.activemq.api.core.BroadcastEndpointFactory;
import org.apache.activemq.api.core.BroadcastGroupConfiguration;
import org.apache.activemq.api.core.DiscoveryGroupConfiguration;
+import org.apache.activemq.api.core.JGroupsFileBroadcastEndpoint;
+import org.apache.activemq.api.core.JGroupsPropertiesBroadcastEndpointFactory;
import org.apache.activemq.api.core.TransportConfiguration;
-import org.apache.activemq.api.core.UDPBroadcastGroupConfiguration;
+import org.apache.activemq.api.core.UDPBroadcastEndpointFactory;
import org.apache.activemq.api.jms.JMSFactoryType;
import org.apache.activemq.core.config.Configuration;
import org.apache.activemq.core.config.ha.SharedStoreMasterPolicyConfiguration;
@@ -43,7 +47,6 @@ import org.apache.activemq.core.server.ActiveMQServer;
import org.apache.activemq.core.server.ActiveMQServers;
import org.apache.activemq.jms.client.ActiveMQConnectionFactory;
import org.apache.activemq.jndi.ActiveMQInitialContextFactory;
-import org.apache.activemq.tests.util.RandomUtil;
import org.apache.activemq.tests.util.UnitTestCase;
import org.junit.Assert;
import org.junit.Before;
@@ -68,43 +71,19 @@ public class SimpleJNDIClientTest extends UnitTestCase
private TransportConfiguration liveTC;
@Test
- public void testDefaultConnectionFactories() throws NamingException, JMSException
+ public void testMultipleConnectionFactories() throws NamingException, JMSException
{
Hashtable<String, Object> props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
+ props.put("connectionFactory.VmConnectionFactory", "vm://0");
+ props.put("connectionFactory.TCPConnectionFactory", "tcp://localhost:5445");
+ props.put("connectionFactory.UDPConnectionFactory", "udp://" + getUDPDiscoveryAddress() + ":" + getUDPDiscoveryPort());
+ props.put("connectionFactory.JGroupsConnectionFactory", "jgroups://mychannelid?file=test-jgroups-file_ping.xml");
Context ctx = new InitialContext(props);
-
- ConnectionFactory connectionFactory = (ConnectionFactory) ctx.lookup("ConnectionFactory");
- Assert.assertEquals(JMSFactoryType.CF.intValue(), ((ActiveMQConnectionFactory)connectionFactory).getFactoryType());
- connectionFactory.createConnection().close();
-
- connectionFactory = (ConnectionFactory) ctx.lookup("XAConnectionFactory");
- Assert.assertEquals(JMSFactoryType.XA_CF.intValue(), ((ActiveMQConnectionFactory)connectionFactory).getFactoryType());
- connectionFactory.createConnection().close();
-
- connectionFactory = (ConnectionFactory) ctx.lookup("TopicConnectionFactory");
- Assert.assertEquals(JMSFactoryType.TOPIC_CF.intValue(), ((ActiveMQConnectionFactory)connectionFactory).getFactoryType());
- connectionFactory.createConnection().close();
-
- connectionFactory = (ConnectionFactory) ctx.lookup("QueueConnectionFactory");
- Assert.assertEquals(JMSFactoryType.QUEUE_CF.intValue(), ((ActiveMQConnectionFactory)connectionFactory).getFactoryType());
- connectionFactory.createConnection().close();
- }
-
- @Test
- public void testCustomCF() throws NamingException, JMSException
- {
- Hashtable props = new Hashtable<>();
- props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(ActiveMQInitialContextFactory.CONNECTION_FACTORY_NAMES, "myConnectionFactory");
- props.put("connection.myConnectionFactory.type", "CF");
- Context ctx = new InitialContext(props);
-
- ConnectionFactory connectionFactory = (ConnectionFactory) ctx.lookup("myConnectionFactory");
-
- Assert.assertEquals(JMSFactoryType.CF.intValue(), ((ActiveMQConnectionFactory)connectionFactory).getFactoryType());
-
- connectionFactory.createConnection().close();
+ ctx.lookup("VmConnectionFactory");
+ ctx.lookup("TCPConnectionFactory");
+ ctx.lookup("UDPConnectionFactory");
+ ctx.lookup("JGroupsConnectionFactory");
}
@Test
@@ -112,7 +91,7 @@ public class SimpleJNDIClientTest extends UnitTestCase
{
Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(Context.PROVIDER_URL, "vm://0");
+ props.put("connectionFactory.ConnectionFactory", "vm://0");
Context ctx = new InitialContext(props);
ConnectionFactory connectionFactory = (ConnectionFactory) ctx.lookup("ConnectionFactory");
@@ -125,7 +104,7 @@ public class SimpleJNDIClientTest extends UnitTestCase
{
Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(Context.PROVIDER_URL, "vm://1");
+ props.put("connectionFactory.ConnectionFactory", "vm://1");
Context ctx = new InitialContext(props);
ConnectionFactory connectionFactory = (ConnectionFactory) ctx.lookup("ConnectionFactory");
@@ -138,8 +117,7 @@ public class SimpleJNDIClientTest extends UnitTestCase
{
Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(ActiveMQInitialContextFactory.CONNECTION_FACTORY_NAMES, "myConnectionFactory");
- props.put("connection.myConnectionFactory.type", "XA_CF");
+ props.put("connectionFactory.myConnectionFactory", "vm://0?type=XA_CF");
Context ctx = new InitialContext(props);
ActiveMQConnectionFactory connectionFactory = (ActiveMQConnectionFactory) ctx.lookup("myConnectionFactory");
@@ -152,8 +130,7 @@ public class SimpleJNDIClientTest extends UnitTestCase
{
Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(ActiveMQInitialContextFactory.CONNECTION_FACTORY_NAMES, "myConnectionFactory");
- props.put("connection.myConnectionFactory.type", "QUEUE_CF");
+ props.put("connectionFactory.myConnectionFactory", "vm://0?type=QUEUE_CF");
Context ctx = new InitialContext(props);
ActiveMQConnectionFactory connectionFactory = (ActiveMQConnectionFactory) ctx.lookup("myConnectionFactory");
@@ -166,8 +143,7 @@ public class SimpleJNDIClientTest extends UnitTestCase
{
Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(ActiveMQInitialContextFactory.CONNECTION_FACTORY_NAMES, "myConnectionFactory");
- props.put("connection.myConnectionFactory.type", "QUEUE_XA_CF");
+ props.put("connectionFactory.myConnectionFactory", "vm://0?type=QUEUE_XA_CF");
Context ctx = new InitialContext(props);
ActiveMQConnectionFactory connectionFactory = (ActiveMQConnectionFactory) ctx.lookup("myConnectionFactory");
@@ -180,8 +156,7 @@ public class SimpleJNDIClientTest extends UnitTestCase
{
Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(ActiveMQInitialContextFactory.CONNECTION_FACTORY_NAMES, "myConnectionFactory");
- props.put("connection.myConnectionFactory.type", "TOPIC_CF");
+ props.put("connectionFactory.myConnectionFactory", "vm://0?type=TOPIC_CF");
Context ctx = new InitialContext(props);
ActiveMQConnectionFactory connectionFactory = (ActiveMQConnectionFactory) ctx.lookup("myConnectionFactory");
@@ -194,8 +169,7 @@ public class SimpleJNDIClientTest extends UnitTestCase
{
Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(ActiveMQInitialContextFactory.CONNECTION_FACTORY_NAMES, "myConnectionFactory");
- props.put("connection.myConnectionFactory.type", "TOPIC_XA_CF");
+ props.put("connectionFactory.myConnectionFactory", "vm://0?type=TOPIC_XA_CF");
Context ctx = new InitialContext(props);
ActiveMQConnectionFactory connectionFactory = (ActiveMQConnectionFactory) ctx.lookup("myConnectionFactory");
@@ -204,280 +178,97 @@ public class SimpleJNDIClientTest extends UnitTestCase
}
@Test
- public void testCFWithProperties() throws NamingException, JMSException
+ public void testRemoteCFWithTCP() throws NamingException, JMSException
{
- // we don't test the 'ha' property here because it's not supported on a local connection factory (i.e. one
- // constructed from an InitialContext where the environment doesn't contain the property "java.naming.provider.url")
-
- long callFailoverTimeout = RandomUtil.randomPositiveLong();
- long callTimeout = RandomUtil.randomPositiveLong();
- long clientFailureCheckPeriod = RandomUtil.randomPositiveLong();
- String clientID = RandomUtil.randomString();
- int confirmationWindowSize = RandomUtil.randomPositiveInt();
- String connectionLoadBalancingPolicyClassName = RandomUtil.randomString();
- long connectionTTL = RandomUtil.randomPositiveLong();
- int consumerMaxRate = RandomUtil.randomPositiveInt();
- int consumerWindowSize = RandomUtil.randomPositiveInt();
- int minLargeMessageSize = RandomUtil.randomPositiveInt();
- int dupsOKBatchSize = RandomUtil.randomPositiveInt();
- String groupID = RandomUtil.randomString();
- int initialConnectAttempts = RandomUtil.randomPositiveInt();
- int initialMessagePacketSize = RandomUtil.randomPositiveInt();
- long maxRetryInterval = RandomUtil.randomPositiveLong();
- int producerMaxRate = RandomUtil.randomPositiveInt();
- int producerWindowSize = RandomUtil.randomPositiveInt();
- int reconnectAttempts = RandomUtil.randomPositiveInt();
- long retryInterval = RandomUtil.randomPositiveLong();
- double retryIntervalMultiplier = RandomUtil.randomDouble();
- int scheduledThreadPoolMaxSize = RandomUtil.randomPositiveInt();
- int threadPoolMaxSize = RandomUtil.randomPositiveInt();
- int transactionBatchSize = RandomUtil.randomPositiveInt();
- boolean autoGroup = RandomUtil.randomBoolean();
- boolean blockOnAcknowledge = RandomUtil.randomBoolean();
- boolean blockOnDurableSend = RandomUtil.randomBoolean();
- boolean blockOnNonDurableSend = RandomUtil.randomBoolean();
- boolean cacheLargeMessagesClient = RandomUtil.randomBoolean();
- boolean compressLargeMessage = RandomUtil.randomBoolean();
- boolean failoverOnInitialConnection = RandomUtil.randomBoolean();
- boolean preAcknowledge = RandomUtil.randomBoolean();
- boolean useGlobalPools = RandomUtil.randomBoolean();
-
Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(ActiveMQInitialContextFactory.CONNECTION_FACTORY_NAMES, "myConnectionFactory");
- props.put("connection.myConnectionFactory.callFailoverTimeout", callFailoverTimeout);
- props.put("connection.myConnectionFactory.callTimeout", callTimeout);
- props.put("connection.myConnectionFactory.clientFailureCheckPeriod", clientFailureCheckPeriod);
- props.put("connection.myConnectionFactory.clientID", clientID);
- props.put("connection.myConnectionFactory.confirmationWindowSize", confirmationWindowSize);
- props.put("connection.myConnectionFactory.connectionLoadBalancingPolicyClassName", connectionLoadBalancingPolicyClassName);
- props.put("connection.myConnectionFactory.connectionTTL", connectionTTL);
- props.put("connection.myConnectionFactory.consumerMaxRate", consumerMaxRate);
- props.put("connection.myConnectionFactory.consumerWindowSize", consumerWindowSize);
- props.put("connection.myConnectionFactory.minLargeMessageSize", minLargeMessageSize);
- props.put("connection.myConnectionFactory.dupsOKBatchSize", dupsOKBatchSize);
- props.put("connection.myConnectionFactory.groupID", groupID);
- props.put("connection.myConnectionFactory.initialConnectAttempts", initialConnectAttempts);
- props.put("connection.myConnectionFactory.initialMessagePacketSize", initialMessagePacketSize);
- props.put("connection.myConnectionFactory.maxRetryInterval", maxRetryInterval);
- props.put("connection.myConnectionFactory.producerMaxRate", producerMaxRate);
- props.put("connection.myConnectionFactory.producerWindowSize", producerWindowSize);
- props.put("connection.myConnectionFactory.reconnectAttempts", reconnectAttempts);
- props.put("connection.myConnectionFactory.retryInterval", retryInterval);
- props.put("connection.myConnectionFactory.retryIntervalMultiplier", retryIntervalMultiplier);
- props.put("connection.myConnectionFactory.scheduledThreadPoolMaxSize", scheduledThreadPoolMaxSize);
- props.put("connection.myConnectionFactory.threadPoolMaxSize", threadPoolMaxSize);
- props.put("connection.myConnectionFactory.transactionBatchSize", transactionBatchSize);
- props.put("connection.myConnectionFactory.blockOnAcknowledge", blockOnAcknowledge);
- props.put("connection.myConnectionFactory.blockOnDurableSend", blockOnDurableSend);
- props.put("connection.myConnectionFactory.blockOnNonDurableSend", blockOnNonDurableSend);
- props.put("connection.myConnectionFactory.cacheLargeMessagesClient", cacheLargeMessagesClient);
- props.put("connection.myConnectionFactory.compressLargeMessage", compressLargeMessage);
- props.put("connection.myConnectionFactory.failoverOnInitialConnection", failoverOnInitialConnection);
- props.put("connection.myConnectionFactory.autoGroup", autoGroup);
- props.put("connection.myConnectionFactory.preAcknowledge", preAcknowledge);
- props.put("connection.myConnectionFactory.useGlobalPools", useGlobalPools);
+ props.put("connectionFactory.myConnectionFactory", "tcp://127.0.0.1:5445");
Context ctx = new InitialContext(props);
- ActiveMQConnectionFactory cf = (ActiveMQConnectionFactory) ctx.lookup("myConnectionFactory");
+ ConnectionFactory connectionFactory = (ConnectionFactory) ctx.lookup("myConnectionFactory");
- Assert.assertEquals(callFailoverTimeout, cf.getCallFailoverTimeout());
- Assert.assertEquals(callTimeout, cf.getCallTimeout());
- Assert.assertEquals(clientFailureCheckPeriod, cf.getClientFailureCheckPeriod());
- Assert.assertEquals(clientID, cf.getClientID());
- Assert.assertEquals(confirmationWindowSize, cf.getConfirmationWindowSize());
- Assert.assertEquals(connectionLoadBalancingPolicyClassName, cf.getConnectionLoadBalancingPolicyClassName());
- Assert.assertEquals(connectionTTL, cf.getConnectionTTL());
- Assert.assertEquals(consumerMaxRate, cf.getConsumerMaxRate());
- Assert.assertEquals(consumerWindowSize, cf.getConsumerWindowSize());
- Assert.assertEquals(minLargeMessageSize, cf.getMinLargeMessageSize());
- Assert.assertEquals(dupsOKBatchSize, cf.getDupsOKBatchSize());
- Assert.assertEquals(groupID, cf.getGroupID());
- Assert.assertEquals(initialConnectAttempts, cf.getInitialConnectAttempts());
- Assert.assertEquals(initialMessagePacketSize, cf.getInitialMessagePacketSize());
- Assert.assertEquals(maxRetryInterval, cf.getMaxRetryInterval());
- Assert.assertEquals(producerMaxRate, cf.getProducerMaxRate());
- Assert.assertEquals(producerWindowSize, cf.getProducerWindowSize());
- Assert.assertEquals(reconnectAttempts, cf.getReconnectAttempts());
- Assert.assertEquals(retryInterval, cf.getRetryInterval());
- Assert.assertEquals(retryIntervalMultiplier, cf.getRetryIntervalMultiplier(), 0.0001);
- Assert.assertEquals(scheduledThreadPoolMaxSize, cf.getScheduledThreadPoolMaxSize());
- Assert.assertEquals(threadPoolMaxSize, cf.getThreadPoolMaxSize());
- Assert.assertEquals(transactionBatchSize, cf.getTransactionBatchSize());
- Assert.assertEquals(autoGroup, cf.isAutoGroup());
- Assert.assertEquals(blockOnAcknowledge, cf.isBlockOnAcknowledge());
- Assert.assertEquals(blockOnDurableSend, cf.isBlockOnDurableSend());
- Assert.assertEquals(blockOnNonDurableSend, cf.isBlockOnNonDurableSend());
- Assert.assertEquals(cacheLargeMessagesClient, cf.isCacheLargeMessagesClient());
- Assert.assertEquals(compressLargeMessage, cf.isCompressLargeMessage());
- Assert.assertEquals(failoverOnInitialConnection, cf.isFailoverOnInitialConnection());
- Assert.assertEquals(preAcknowledge, cf.isPreAcknowledge());
- Assert.assertEquals(useGlobalPools, cf.isUseGlobalPools());
+ connectionFactory.createConnection().close();
}
@Test
- public void testCFWithStringProperties() throws NamingException, JMSException
+ public void testRemoteCFWithTCPandHA() throws NamingException, JMSException
{
- // we don't test the 'ha' property here because it's not supported on a local connection factory (i.e. one
- // constructed from an InitialContext where the environment doesn't contain the property "java.naming.provider.url")
-
- String callFailoverTimeout = Long.toString(RandomUtil.randomPositiveLong());
- String callTimeout = Long.toString(RandomUtil.randomPositiveLong());
- String clientFailureCheckPeriod = Long.toString(RandomUtil.randomPositiveLong());
- String clientID = RandomUtil.randomString();
- String confirmationWindowSize = Integer.toString(RandomUtil.randomPositiveInt());
- String connectionLoadBalancingPolicyClassName = RandomUtil.randomString();
- String connectionTTL = Long.toString(RandomUtil.randomPositiveLong());
- String consumerMaxRate = Integer.toString(RandomUtil.randomPositiveInt());
- String consumerWindowSize = Integer.toString(RandomUtil.randomPositiveInt());
- String minLargeMessageSize = Integer.toString(RandomUtil.randomPositiveInt());
- String dupsOKBatchSize = Integer.toString(RandomUtil.randomPositiveInt());
- String groupID = RandomUtil.randomString();
- String initialConnectAttempts = Integer.toString(RandomUtil.randomPositiveInt());
- String initialMessagePacketSize = Integer.toString(RandomUtil.randomPositiveInt());
- String maxRetryInterval = Long.toString(RandomUtil.randomPositiveLong());
- String producerMaxRate = Integer.toString(RandomUtil.randomPositiveInt());
- String producerWindowSize = Integer.toString(RandomUtil.randomPositiveInt());
- String reconnectAttempts = Integer.toString(RandomUtil.randomPositiveInt());
- String retryInterval = Long.toString(RandomUtil.randomPositiveLong());
- String retryIntervalMultiplier = Double.toString(RandomUtil.randomDouble());
- String scheduledThreadPoolMaxSize = Integer.toString(RandomUtil.randomPositiveInt());
- String threadPoolMaxSize = Integer.toString(RandomUtil.randomPositiveInt());
- String transactionBatchSize = Integer.toString(RandomUtil.randomPositiveInt());
- String autoGroup = Boolean.toString(RandomUtil.randomBoolean());
- String blockOnAcknowledge = Boolean.toString(RandomUtil.randomBoolean());
- String blockOnDurableSend = Boolean.toString(RandomUtil.randomBoolean());
- String blockOnNonDurableSend = Boolean.toString(RandomUtil.randomBoolean());
- String cacheLargeMessagesClient = Boolean.toString(RandomUtil.randomBoolean());
- String compressLargeMessage = Boolean.toString(RandomUtil.randomBoolean());
- String failoverOnInitialConnection = Boolean.toString(RandomUtil.randomBoolean());
- String preAcknowledge = Boolean.toString(RandomUtil.randomBoolean());
- String useGlobalPools = Boolean.toString(RandomUtil.randomBoolean());
-
- Hashtable props = new Hashtable<String, String>();
+ Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(ActiveMQInitialContextFactory.CONNECTION_FACTORY_NAMES, "myConnectionFactory");
- props.put("connection.myConnectionFactory.callFailoverTimeout", callFailoverTimeout);
- props.put("connection.myConnectionFactory.callTimeout", callTimeout);
- props.put("connection.myConnectionFactory.clientFailureCheckPeriod", clientFailureCheckPeriod);
- props.put("connection.myConnectionFactory.clientID", clientID);
- props.put("connection.myConnectionFactory.confirmationWindowSize", confirmationWindowSize);
- props.put("connection.myConnectionFactory.connectionLoadBalancingPolicyClassName", connectionLoadBalancingPolicyClassName);
- props.put("connection.myConnectionFactory.connectionTTL", connectionTTL);
- props.put("connection.myConnectionFactory.consumerMaxRate", consumerMaxRate);
- props.put("connection.myConnectionFactory.consumerWindowSize", consumerWindowSize);
- props.put("connection.myConnectionFactory.minLargeMessageSize", minLargeMessageSize);
- props.put("connection.myConnectionFactory.dupsOKBatchSize", dupsOKBatchSize);
- props.put("connection.myConnectionFactory.groupID", groupID);
- props.put("connection.myConnectionFactory.initialConnectAttempts", initialConnectAttempts);
- props.put("connection.myConnectionFactory.initialMessagePacketSize", initialMessagePacketSize);
- props.put("connection.myConnectionFactory.maxRetryInterval", maxRetryInterval);
- props.put("connection.myConnectionFactory.producerMaxRate", producerMaxRate);
- props.put("connection.myConnectionFactory.producerWindowSize", producerWindowSize);
- props.put("connection.myConnectionFactory.reconnectAttempts", reconnectAttempts);
- props.put("connection.myConnectionFactory.retryInterval", retryInterval);
- props.put("connection.myConnectionFactory.retryIntervalMultiplier", retryIntervalMultiplier);
- props.put("connection.myConnectionFactory.scheduledThreadPoolMaxSize", scheduledThreadPoolMaxSize);
- props.put("connection.myConnectionFactory.threadPoolMaxSize", threadPoolMaxSize);
- props.put("connection.myConnectionFactory.transactionBatchSize", transactionBatchSize);
- props.put("connection.myConnectionFactory.blockOnAcknowledge", blockOnAcknowledge);
- props.put("connection.myConnectionFactory.blockOnDurableSend", blockOnDurableSend);
- props.put("connection.myConnectionFactory.blockOnNonDurableSend", blockOnNonDurableSend);
- props.put("connection.myConnectionFactory.cacheLargeMessagesClient", cacheLargeMessagesClient);
- props.put("connection.myConnectionFactory.compressLargeMessage", compressLargeMessage);
- props.put("connection.myConnectionFactory.failoverOnInitialConnection", failoverOnInitialConnection);
- props.put("connection.myConnectionFactory.autoGroup", autoGroup);
- props.put("connection.myConnectionFactory.preAcknowledge", preAcknowledge);
- props.put("connection.myConnectionFactory.useGlobalPools", useGlobalPools);
+ props.put("connectionFactory.myConnectionFactory", "tcp://127.0.0.1:5445?ha=true");
Context ctx = new InitialContext(props);
ActiveMQConnectionFactory cf = (ActiveMQConnectionFactory) ctx.lookup("myConnectionFactory");
- Assert.assertEquals(Long.parseLong(callFailoverTimeout), cf.getCallFailoverTimeout());
- Assert.assertEquals(Long.parseLong(callTimeout), cf.getCallTimeout());
- Assert.assertEquals(Long.parseLong(clientFailureCheckPeriod), cf.getClientFailureCheckPeriod());
- Assert.assertEquals(clientID, cf.getClientID());
- Assert.assertEquals(Integer.parseInt(confirmationWindowSize), cf.getConfirmationWindowSize());
- Assert.assertEquals(connectionLoadBalancingPolicyClassName, cf.getConnectionLoadBalancingPolicyClassName());
- Assert.assertEquals(Long.parseLong(connectionTTL), cf.getConnectionTTL());
- Assert.assertEquals(Integer.parseInt(consumerMaxRate), cf.getConsumerMaxRate());
- Assert.assertEquals(Integer.parseInt(consumerWindowSize), cf.getConsumerWindowSize());
- Assert.assertEquals(Integer.parseInt(minLargeMessageSize), cf.getMinLargeMessageSize());
- Assert.assertEquals(Integer.parseInt(dupsOKBatchSize), cf.getDupsOKBatchSize());
- Assert.assertEquals(groupID, cf.getGroupID());
- Assert.assertEquals(Integer.parseInt(initialConnectAttempts), cf.getInitialConnectAttempts());
- Assert.assertEquals(Integer.parseInt(initialMessagePacketSize), cf.getInitialMessagePacketSize());
- Assert.assertEquals(Long.parseLong(maxRetryInterval), cf.getMaxRetryInterval());
- Assert.assertEquals(Integer.parseInt(producerMaxRate), cf.getProducerMaxRate());
- Assert.assertEquals(Integer.parseInt(producerWindowSize), cf.getProducerWindowSize());
- Assert.assertEquals(Integer.parseInt(reconnectAttempts), cf.getReconnectAttempts());
- Assert.assertEquals(Long.parseLong(retryInterval), cf.getRetryInterval());
- Assert.assertEquals(Double.parseDouble(retryIntervalMultiplier), cf.getRetryIntervalMultiplier(), 0.0001);
- Assert.assertEquals(Integer.parseInt(scheduledThreadPoolMaxSize), cf.getScheduledThreadPoolMaxSize());
- Assert.assertEquals(Integer.parseInt(threadPoolMaxSize), cf.getThreadPoolMaxSize());
- Assert.assertEquals(Integer.parseInt(transactionBatchSize), cf.getTransactionBatchSize());
- Assert.assertEquals(Boolean.parseBoolean(autoGroup), cf.isAutoGroup());
- Assert.assertEquals(Boolean.parseBoolean(blockOnAcknowledge), cf.isBlockOnAcknowledge());
- Assert.assertEquals(Boolean.parseBoolean(blockOnDurableSend), cf.isBlockOnDurableSend());
- Assert.assertEquals(Boolean.parseBoolean(blockOnNonDurableSend), cf.isBlockOnNonDurableSend());
- Assert.assertEquals(Boolean.parseBoolean(cacheLargeMessagesClient), cf.isCacheLargeMessagesClient());
- Assert.assertEquals(Boolean.parseBoolean(compressLargeMessage), cf.isCompressLargeMessage());
- Assert.assertEquals(Boolean.parseBoolean(failoverOnInitialConnection), cf.isFailoverOnInitialConnection());
- Assert.assertEquals(Boolean.parseBoolean(preAcknowledge), cf.isPreAcknowledge());
- Assert.assertEquals(Boolean.parseBoolean(useGlobalPools), cf.isUseGlobalPools());
+ Assert.assertEquals(true, cf.isHA());
}
@Test
- public void testRemoteCFWithTCP() throws NamingException, JMSException
+ public void testRemoteCFWithJGroups() throws Exception
{
Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(Context.PROVIDER_URL, "tcp://127.0.0.1:5445");
- props.put(ActiveMQInitialContextFactory.CONNECTION_FACTORY_NAMES, "myConnectionFactory");
+ props.put("connectionFactory.myConnectionFactory", "jgroups://mychannelid?file=test-jgroups-file_ping.xml");
Context ctx = new InitialContext(props);
- ConnectionFactory connectionFactory = (ConnectionFactory) ctx.lookup("myConnectionFactory");
-
- connectionFactory.createConnection().close();
+ ActiveMQConnectionFactory connectionFactory = (ActiveMQConnectionFactory) ctx.lookup("myConnectionFactory");
+ connectionFactory.getDiscoveryGroupConfiguration().getBroadcastEndpointFactory().createBroadcastEndpoint().close(false);
}
@Test
- public void testRemoteCFWithTCPandHA() throws NamingException, JMSException
+ public void testRemoteCFWithJgroupsWithTransportConfigFile() throws Exception
{
- boolean ha = true;
-
Hashtable props = new Hashtable<>();
- props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(Context.PROVIDER_URL, "tcp://127.0.0.1:5445");
- props.put(ActiveMQInitialContextFactory.CONNECTION_FACTORY_NAMES, "myConnectionFactory");
- props.put("connection.myConnectionFactory.ha", ha);
+ props.put(Context.INITIAL_CONTEXT_FACTORY, ActiveMQInitialContextFactory.class.getCanonicalName());
+ props.put("connectionFactory.myConnectionFactory", "jgroups://testChannelName?file=test-jgroups-file_ping.xml&" +
+ ActiveMQInitialContextFactory.REFRESH_TIMEOUT + "=5000&" +
+ ActiveMQInitialContextFactory.DISCOVERY_INITIAL_WAIT_TIMEOUT + "=6000");
Context ctx = new InitialContext(props);
ActiveMQConnectionFactory cf = (ActiveMQConnectionFactory) ctx.lookup("myConnectionFactory");
- Assert.assertEquals(ha, cf.isHA());
+ DiscoveryGroupConfiguration discoveryGroupConfiguration = cf.getDiscoveryGroupConfiguration();
+ Assert.assertEquals(5000, discoveryGroupConfiguration.getRefreshTimeout());
+ Assert.assertEquals(6000, discoveryGroupConfiguration.getDiscoveryInitialWaitTimeout());
+
+ BroadcastEndpoint broadcastEndpoint = cf.getDiscoveryGroupConfiguration().getBroadcastEndpointFactory().createBroadcastEndpoint();
+ Assert.assertTrue(broadcastEndpoint instanceof JGroupsFileBroadcastEndpoint);
+ broadcastEndpoint.close(false);
}
@Test
- public void testRemoteCFWithJGroups() throws Exception
+ public void testRemoteCFWithJgroupsWithTransportConfigProps() throws Exception
{
Hashtable props = new Hashtable<>();
- props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(Context.PROVIDER_URL, "jgroups://test-jgroups-file_ping.xml/");
+ props.put(Context.INITIAL_CONTEXT_FACTORY, ActiveMQInitialContextFactory.class.getCanonicalName());
+ props.put("connectionFactory.ConnectionFactory", "jgroups://testChannelName?properties=param=value&" +
+ ActiveMQInitialContextFactory.REFRESH_TIMEOUT + "=5000&" +
+ ActiveMQInitialContextFactory.DISCOVERY_INITIAL_WAIT_TIMEOUT + "=6000");
Context ctx = new InitialContext(props);
- ActiveMQConnectionFactory connectionFactory = (ActiveMQConnectionFactory) ctx.lookup("ConnectionFactory");
- connectionFactory.getDiscoveryGroupConfiguration().getBroadcastEndpointFactoryConfiguration().createBroadcastEndpointFactory().createBroadcastEndpoint().close(false);
+ ActiveMQConnectionFactory cf = (ActiveMQConnectionFactory) ctx.lookup("ConnectionFactory");
+
+ DiscoveryGroupConfiguration discoveryGroupConfiguration = cf.getDiscoveryGroupConfiguration();
+ Assert.assertEquals(5000, discoveryGroupConfiguration.getRefreshTimeout());
+ Assert.assertEquals(6000, discoveryGroupConfiguration.getDiscoveryInitialWaitTimeout());
+
+ BroadcastEndpointFactory broadcastEndpointFactory = cf.getDiscoveryGroupConfiguration().getBroadcastEndpointFactory();
+ Assert.assertTrue(broadcastEndpointFactory instanceof JGroupsPropertiesBroadcastEndpointFactory);
+ JGroupsPropertiesBroadcastEndpointFactory endpointFactory = (JGroupsPropertiesBroadcastEndpointFactory) broadcastEndpointFactory;
+ Assert.assertEquals(endpointFactory.getProperties(), "param=value");
+ Assert.assertEquals(endpointFactory.getChannelName(), "testChannelName");
}
+
+
@Test
- public void testRemoteCFWithJgroupsWithTransportConfig() throws Exception
+ public void testRemoteCFWithJgroupsWithTransportConfigNullProps() throws Exception
{
Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, ActiveMQInitialContextFactory.class.getCanonicalName());
- props.put(Context.PROVIDER_URL, "jgroups://test-jgroups-file_ping.xml?" +
- ActiveMQInitialContextFactory.REFRESH_TIMEOUT + "=5000&" +
- ActiveMQInitialContextFactory.DISCOVERY_INITIAL_WAIT_TIMEOUT + "=6000");
+ props.put("connectionFactory.ConnectionFactory", "jgroups://testChannelName?" +
+ ActiveMQInitialContextFactory.REFRESH_TIMEOUT + "=5000&" +
+ ActiveMQInitialContextFactory.DISCOVERY_INITIAL_WAIT_TIMEOUT + "=6000");
Context ctx = new InitialContext(props);
ActiveMQConnectionFactory cf = (ActiveMQConnectionFactory) ctx.lookup("ConnectionFactory");
@@ -486,16 +277,20 @@ public class SimpleJNDIClientTest extends UnitTestCase
Assert.assertEquals(5000, discoveryGroupConfiguration.getRefreshTimeout());
Assert.assertEquals(6000, discoveryGroupConfiguration.getDiscoveryInitialWaitTimeout());
- cf.getDiscoveryGroupConfiguration().getBroadcastEndpointFactoryConfiguration().createBroadcastEndpointFactory().createBroadcastEndpoint().close(false);
+ BroadcastEndpointFactory broadcastEndpointFactory = cf.getDiscoveryGroupConfiguration().getBroadcastEndpointFactory();
+ Assert.assertTrue(broadcastEndpointFactory instanceof JGroupsPropertiesBroadcastEndpointFactory);
+ JGroupsPropertiesBroadcastEndpointFactory endpointFactory = (JGroupsPropertiesBroadcastEndpointFactory) broadcastEndpointFactory;
+ Assert.assertEquals(endpointFactory.getProperties(), null);
+ Assert.assertEquals(endpointFactory.getChannelName(), "testChannelName");
}
+
@Test
public void testRemoteCFWithUDP() throws NamingException, JMSException
{
Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(Context.PROVIDER_URL, "udp://" + getUDPDiscoveryAddress() + ":" + getUDPDiscoveryPort());
- props.put(ActiveMQInitialContextFactory.CONNECTION_FACTORY_NAMES, "myConnectionFactory");
+ props.put("connectionFactory.myConnectionFactory", "udp://" + getUDPDiscoveryAddress() + ":" + getUDPDiscoveryPort());
Context ctx = new InitialContext(props);
ConnectionFactory connectionFactory = (ConnectionFactory) ctx.lookup("myConnectionFactory");
@@ -508,12 +303,11 @@ public class SimpleJNDIClientTest extends UnitTestCase
{
Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, ActiveMQInitialContextFactory.class.getCanonicalName());
- props.put(Context.PROVIDER_URL, "udp://" + getUDPDiscoveryAddress() + ":" + getUDPDiscoveryPort() + "?" +
+ props.put("connectionFactory.myConnectionFactory", "udp://" + getUDPDiscoveryAddress() + ":" + getUDPDiscoveryPort() + "?" +
TransportConstants.LOCAL_ADDRESS_PROP_NAME + "=127.0.0.1&" +
TransportConstants.LOCAL_PORT_PROP_NAME + "=1198&" +
ActiveMQInitialContextFactory.REFRESH_TIMEOUT + "=5000&" +
ActiveMQInitialContextFactory.DISCOVERY_INITIAL_WAIT_TIMEOUT + "=6000");
- props.put(ActiveMQInitialContextFactory.CONNECTION_FACTORY_NAMES, "myConnectionFactory");
Context ctx = new InitialContext(props);
ActiveMQConnectionFactory cf = (ActiveMQConnectionFactory) ctx.lookup("myConnectionFactory");
@@ -522,11 +316,12 @@ public class SimpleJNDIClientTest extends UnitTestCase
Assert.assertEquals(5000, discoveryGroupConfiguration.getRefreshTimeout());
Assert.assertEquals(6000, discoveryGroupConfiguration.getDiscoveryInitialWaitTimeout());
- UDPBroadcastGroupConfiguration udpBroadcastGroupConfiguration = (UDPBroadcastGroupConfiguration) discoveryGroupConfiguration.getBroadcastEndpointFactoryConfiguration();
- Assert.assertEquals("127.0.0.1", udpBroadcastGroupConfiguration.getLocalBindAddress());
- Assert.assertEquals(1198, udpBroadcastGroupConfiguration.getLocalBindPort());
- Assert.assertEquals(getUDPDiscoveryAddress(), udpBroadcastGroupConfiguration.getGroupAddress());
- Assert.assertEquals(getUDPDiscoveryPort(), udpBroadcastGroupConfiguration.getGroupPort());
+ UDPBroadcastEndpointFactory udpBroadcastEndpointFactory = (UDPBroadcastEndpointFactory) discoveryGroupConfiguration.getBroadcastEndpointFactory();
+ //these 2 are transient so are ignored
+ Assert.assertEquals(null, udpBroadcastEndpointFactory.getLocalBindAddress());
+ Assert.assertEquals(-1, udpBroadcastEndpointFactory.getLocalBindPort());
+ Assert.assertEquals(getUDPDiscoveryAddress(), udpBroadcastEndpointFactory.getGroupAddress());
+ Assert.assertEquals(getUDPDiscoveryPort(), udpBroadcastEndpointFactory.getGroupPort());
}
@Test
@@ -534,8 +329,7 @@ public class SimpleJNDIClientTest extends UnitTestCase
{
Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(Context.PROVIDER_URL, "tcp://127.0.0.1:5445,127.0.0.2:5446");
- props.put(ActiveMQInitialContextFactory.CONNECTION_FACTORY_NAMES, "myConnectionFactory");
+ props.put("connectionFactory.myConnectionFactory", "tcp://127.0.0.1:5445/httpEnabled=true&foo=bar,tcp://127.0.0.2:5446?httpEnabled=false?clientID=myClientID");
Context ctx = new InitialContext(props);
ConnectionFactory connectionFactory = (ConnectionFactory) ctx.lookup("myConnectionFactory");
@@ -548,7 +342,7 @@ public class SimpleJNDIClientTest extends UnitTestCase
{
Hashtable props = new Hashtable<>();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.activemq.jndi.ActiveMQInitialContextFactory");
- props.put(Context.PROVIDER_URL, "tcp://127.0.0.1:5445?" +
+ props.put("connectionFactory.myConnectionFactory", "tcp://127.0.0.1:5445?" +
TransportConstants.SSL_ENABLED_PROP_NAME + "=mySSLEnabledPropValue&" +
TransportConstants.HTTP_ENABLED_PROP_NAME + "=myHTTPEnabledPropValue&" +
TransportConstants.HTTP_CLIENT_IDLE_PROP_NAME + "=myHTTPClientIdlePropValue&" +
@@ -578,7 +372,6 @@ public class SimpleJNDIClientTest extends UnitTestCase
ActiveMQDefaultConfiguration.getPropMaskPassword() + "=myPropMaskPassword&" +
ActiveMQDefaultConfiguration.getPropPasswordCodec() + "=myPropPasswordCodec&" +
TransportConstants.NETTY_CONNECT_TIMEOUT + "=myNettyConnectTimeout&");
- props.put(ActiveMQInitialContextFactory.CONNECTION_FACTORY_NAMES, "myConnectionFactory");
Context ctx = new InitialContext(props);
ActiveMQConnectionFactory cf = (ActiveMQConnectionFactory) ctx.lookup("myConnectionFactory");
@@ -634,7 +427,7 @@ public class SimpleJNDIClientTest extends UnitTestCase
connectorNames.add(liveTC.getName());
Map params = new HashMap();
- params.put("server-id", 1);
+ params.put(org.apache.activemq.core.remoting.impl.invm.TransportConstants.SERVER_ID_PROP_NAME, 1);
Configuration liveConf = createBasicConfig()
.addAcceptorConfiguration(new TransportConfiguration(INVM_ACCEPTOR_FACTORY))
@@ -653,10 +446,10 @@ public class SimpleJNDIClientTest extends UnitTestCase
.setName(bcGroupName)
.setBroadcastPeriod(broadcastPeriod)
.setConnectorInfos(connectorNames)
- .setEndpointFactoryConfiguration(new UDPBroadcastGroupConfiguration()
- .setGroupAddress(groupAddress)
- .setGroupPort(groupPort)
- .setLocalBindPort(localBindPort));
+ .setEndpointFactory(new UDPBroadcastEndpointFactory()
+ .setGroupAddress(groupAddress)
+ .setGroupPort(groupPort)
+ .setLocalBindPort(localBindPort));
List<BroadcastGroupConfiguration> bcConfigs1 = new ArrayList<BroadcastGroupConfiguration>();
bcConfigs1.add(bcConfig1);
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/3b76ccc9/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/connection/ConnectionFactorySerializationTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/connection/ConnectionFactorySerializationTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/connection/ConnectionFactorySerializationTest.java
index 7b75c6a..37b0dc3 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/connection/ConnectionFactorySerializationTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/connection/ConnectionFactorySerializationTest.java
@@ -16,22 +16,35 @@
*/
package org.apache.activemq.tests.integration.jms.connection;
+import java.beans.PropertyDescriptor;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
+import java.lang.reflect.InvocationTargetException;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
+import java.util.Set;
import org.apache.activemq.api.core.DiscoveryGroupConfiguration;
-import org.apache.activemq.api.core.UDPBroadcastGroupConfiguration;
+import org.apache.activemq.api.core.JGroupsFileBroadcastEndpointFactory;
+import org.apache.activemq.api.core.JGroupsPropertiesBroadcastEndpointFactory;
+import org.apache.activemq.api.core.TransportConfiguration;
+import org.apache.activemq.api.core.UDPBroadcastEndpointFactory;
import org.apache.activemq.api.jms.JMSFactoryType;
+import org.apache.activemq.core.remoting.impl.netty.TransportConstants;
import org.apache.activemq.jms.client.ActiveMQConnectionFactory;
+import org.apache.activemq.jms.server.config.ConnectionFactoryConfiguration;
+import org.apache.activemq.jms.server.config.impl.ConnectionFactoryConfigurationImpl;
import org.apache.activemq.tests.util.JMSTestBase;
+import org.apache.activemq.tests.util.RandomUtil;
+import org.apache.commons.beanutils.BeanUtilsBean;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
@@ -53,57 +66,297 @@ public class ConnectionFactorySerializationTest extends JMSTestBase
@Before
public void setUp() throws Exception
{
- try
- {
- super.setUp();
- // Deploy a connection factory with discovery
- List<String> bindings = new ArrayList<String>();
- bindings.add("MyConnectionFactory");
- final String groupAddress = getUDPDiscoveryAddress();
- final int port = getUDPDiscoveryPort();
- String localBindAddress = getLocalHost().getHostAddress();
-
- UDPBroadcastGroupConfiguration config = new UDPBroadcastGroupConfiguration()
- .setGroupAddress(groupAddress)
- .setGroupPort(port)
- .setLocalBindAddress(localBindAddress)
- .setLocalBindPort(8580);
-
- DiscoveryGroupConfiguration dcConfig = new DiscoveryGroupConfiguration()
- .setName("dg1")
- .setRefreshTimeout(5000)
- .setDiscoveryInitialWaitTimeout(5000)
- .setBroadcastEndpointFactoryConfiguration(config);
+ super.setUp();
+ }
- jmsServer.getActiveMQServer().getConfiguration().getDiscoveryGroupConfigurations().put(dcConfig.getName(), dcConfig);
+ // Public --------------------------------------------------------
- jmsServer.createConnectionFactory("MyConnectionFactory",
- false,
- JMSFactoryType.CF,
- dcConfig.getName(),
- "/MyConnectionFactory");
- }
- catch (Exception e)
- {
- e.printStackTrace();
- }
+ @Test
+ public void testConnectionFactoryUDP() throws Exception
+ {
+ createDiscoveryFactoryUDP();
+ cf = (ActiveMQConnectionFactory) namingContext.lookup("/MyConnectionFactory");
+ // apparently looking up the connection factory with the org.apache.activemq.jms.tests.tools.container.InVMInitialContextFactory
+ // is not enough to actually serialize it so we serialize it manually
+ byte[] x = serialize(cf);
+ ActiveMQConnectionFactory y = deserialize(x, ActiveMQConnectionFactory.class);
+ checkEquals(cf, y);
+ DiscoveryGroupConfiguration dgc = y.getDiscoveryGroupConfiguration();
+ Assert.assertEquals(dgc.getName(), "dg1");
+ Assert.assertEquals(dgc.getDiscoveryInitialWaitTimeout(), 5000);
+ Assert.assertEquals(dgc.getRefreshTimeout(), 5000);
+ Assert.assertTrue(dgc.getBroadcastEndpointFactory() instanceof UDPBroadcastEndpointFactory);
+ UDPBroadcastEndpointFactory befc = (UDPBroadcastEndpointFactory) dgc.getBroadcastEndpointFactory();
+ Assert.assertEquals(-1, befc.getLocalBindPort());
+ Assert.assertEquals(null, befc.getLocalBindAddress());
+ Assert.assertEquals(1234, befc.getGroupPort());
+ Assert.assertEquals("1.2.3.4", befc.getGroupAddress());
}
- // Public --------------------------------------------------------
+ @Test
+ public void testConnectionFactoryJgroupsFile() throws Exception
+ {
+ createDiscoveryFactoryJGroupsFile();
+ cf = (ActiveMQConnectionFactory) namingContext.lookup("/MyConnectionFactory");
+
+ // apparently looking up the connection factory with the org.apache.activemq.jms.tests.tools.container.InVMInitialContextFactory
+ // is not enough to actually serialize it so we serialize it manually
+ byte[] x = serialize(cf);
+ ActiveMQConnectionFactory y = deserialize(x, ActiveMQConnectionFactory.class);
+ checkEquals(cf, y);
+ DiscoveryGroupConfiguration dgc = y.getDiscoveryGroupConfiguration();
+ Assert.assertEquals(dgc.getName(), "dg1");
+ Assert.assertEquals(dgc.getDiscoveryInitialWaitTimeout(), 5000);
+ Assert.assertEquals(dgc.getRefreshTimeout(), 5000);
+ Assert.assertTrue(dgc.getBroadcastEndpointFactory() instanceof JGroupsFileBroadcastEndpointFactory);
+ JGroupsFileBroadcastEndpointFactory befc = (JGroupsFileBroadcastEndpointFactory) dgc.getBroadcastEndpointFactory();
+ Assert.assertEquals("myChannel", befc.getChannelName());
+ Assert.assertEquals("/META-INF/myfile.xml", befc.getFile());
+ }
@Test
- public void testNullLocalBindAddress() throws Exception
+ public void testConnectionFactoryJgroupsProperties() throws Exception
{
+ createDiscoveryFactoryJGroupsProperties();
cf = (ActiveMQConnectionFactory) namingContext.lookup("/MyConnectionFactory");
// apparently looking up the connection factory with the org.apache.activemq.jms.tests.tools.container.InVMInitialContextFactory
// is not enough to actually serialize it so we serialize it manually
byte[] x = serialize(cf);
ActiveMQConnectionFactory y = deserialize(x, ActiveMQConnectionFactory.class);
- Assert.assertEquals(null, ((UDPBroadcastGroupConfiguration) y.getDiscoveryGroupConfiguration().getBroadcastEndpointFactoryConfiguration()).getLocalBindAddress());
+ checkEquals(cf, y);
+ DiscoveryGroupConfiguration dgc = y.getDiscoveryGroupConfiguration();
+ Assert.assertEquals(dgc.getName(), "dg1");
+ Assert.assertEquals(dgc.getDiscoveryInitialWaitTimeout(), 5000);
+ Assert.assertEquals(dgc.getRefreshTimeout(), 5000);
+ Assert.assertTrue(dgc.getBroadcastEndpointFactory() instanceof JGroupsPropertiesBroadcastEndpointFactory);
+ JGroupsPropertiesBroadcastEndpointFactory befc = (JGroupsPropertiesBroadcastEndpointFactory) dgc.getBroadcastEndpointFactory();
+ Assert.assertEquals("myChannel", befc.getChannelName());
+ Assert.assertEquals("param=1,param2=2", befc.getProperties());
}
+ @Test
+ public void testConnectionFactoryStatic1() throws Exception
+ {
+ createStaticFactory(true);
+ cf = (ActiveMQConnectionFactory) namingContext.lookup("/MyConnectionFactory");
+
+ // apparently looking up the connection factory with the org.apache.activemq.jms.tests.tools.container.InVMInitialContextFactory
+ // is not enough to actually serialize it so we serialize it manually
+ byte[] x = serialize(cf);
+ ActiveMQConnectionFactory y = deserialize(x, ActiveMQConnectionFactory.class);
+ checkEquals(cf, y);
+ TransportConfiguration[] staticConnectors = y.getStaticConnectors();
+ Assert.assertEquals(staticConnectors.length, 2);
+ TransportConfiguration tc0 = cf.getStaticConnectors()[0];
+ TransportConfiguration y0 = y.getStaticConnectors()[0];
+ Map<String, Object> ctParams = tc0.getParams();
+ Map<String, Object> y0Params = y0.getParams();
+ Assert.assertEquals(ctParams.size(), y0Params.size());
+ for (String key : y0Params.keySet())
+ {
+ Assert.assertEquals(ctParams.get(key), y0Params.get(key));
+ }
+ }
+
+ private void createDiscoveryFactoryUDP() throws Exception
+ {
+ // Deploy a connection factory with discovery
+ List<String> bindings = new ArrayList<String>();
+ bindings.add("MyConnectionFactory");
+ final String groupAddress = "1.2.3.4";
+ final int port = 1234;
+ String localBindAddress = getLocalHost().getHostAddress();
+
+ UDPBroadcastEndpointFactory config = new UDPBroadcastEndpointFactory()
+ .setGroupAddress(groupAddress)
+ .setGroupPort(port)
+ .setLocalBindAddress(localBindAddress)
+ .setLocalBindPort(8580);
+
+ DiscoveryGroupConfiguration dcConfig = new DiscoveryGroupConfiguration()
+ .setName("dg1")
+ .setRefreshTimeout(5000)
+ .setDiscoveryInitialWaitTimeout(5000)
+ .setBroadcastEndpointFactory(config);
+
+ jmsServer.getActiveMQServer().getConfiguration().getDiscoveryGroupConfigurations().put(dcConfig.getName(), dcConfig);
+
+ jmsServer.createConnectionFactory("MyConnectionFactory",
+ false,
+ JMSFactoryType.CF,
+ dcConfig.getName(),
+ "/MyConnectionFactory");
+ }
+
+ private void createDiscoveryFactoryJGroupsFile() throws Exception
+ {
+ // Deploy a connection factory with discovery
+ List<String> bindings = new ArrayList<String>();
+ bindings.add("MyConnectionFactory");
+
+ JGroupsFileBroadcastEndpointFactory config = new JGroupsFileBroadcastEndpointFactory()
+ .setChannelName("myChannel")
+ .setFile("/META-INF/myfile.xml");
+
+ DiscoveryGroupConfiguration dcConfig = new DiscoveryGroupConfiguration()
+ .setName("dg1")
+ .setRefreshTimeout(5000)
+ .setDiscoveryInitialWaitTimeout(5000)
+ .setBroadcastEndpointFactory(config);
+
+ jmsServer.getActiveMQServer().getConfiguration().getDiscoveryGroupConfigurations().put(dcConfig.getName(), dcConfig);
+
+ jmsServer.createConnectionFactory("MyConnectionFactory",
+ false,
+ JMSFactoryType.CF,
+ dcConfig.getName(),
+ "/MyConnectionFactory");
+ }
+
+ private void createDiscoveryFactoryJGroupsProperties() throws Exception
+ {
+ // Deploy a connection factory with discovery
+ List<String> bindings = new ArrayList<String>();
+ bindings.add("MyConnectionFactory");
+
+ JGroupsPropertiesBroadcastEndpointFactory config = new JGroupsPropertiesBroadcastEndpointFactory()
+ .setChannelName("myChannel")
+ .setProperties("param=1,param2=2");
+
+ DiscoveryGroupConfiguration dcConfig = new DiscoveryGroupConfiguration()
+ .setName("dg1")
+ .setRefreshTimeout(5000)
+ .setDiscoveryInitialWaitTimeout(5000)
+ .setBroadcastEndpointFactory(config);
+
+ jmsServer.getActiveMQServer().getConfiguration().getDiscoveryGroupConfigurations().put(dcConfig.getName(), dcConfig);
+
+ jmsServer.createConnectionFactory("MyConnectionFactory",
+ false,
+ JMSFactoryType.CF,
+ dcConfig.getName(),
+ "/MyConnectionFactory");
+ }
+
+ private void createStaticFactory(boolean b) throws Exception
+ {
+ HashMap<String, Object> params = new HashMap<>();
+ Set<String> allowableConnectorKeys = TransportConstants.ALLOWABLE_CONNECTOR_KEYS;
+ for (String allowableConnectorKey : allowableConnectorKeys)
+ {
+ String value = RandomUtil.randomString();
+ params.put(allowableConnectorKey, value);
+ }
+ params.put("host", "localhost0");
+ params.put("port", "1234");
+
+ TransportConfiguration main = new TransportConfiguration(NETTY_CONNECTOR_FACTORY, params);
+
+ jmsServer.getActiveMQServer().getConfiguration().getConnectorConfigurations().put(main.getName(), main);
+
+ HashMap<String, Object> params2 = new HashMap<>();
+ for (String allowableConnectorKey : allowableConnectorKeys)
+ {
+ String value = RandomUtil.randomString();
+ params2.put(allowableConnectorKey, value);
+ }
+ params2.put("host", "localhost1");
+ params2.put("port", "5678");
+
+ TransportConfiguration main2 = new TransportConfiguration(NETTY_CONNECTOR_FACTORY, params2);
+
+ jmsServer.getActiveMQServer().getConfiguration().getConnectorConfigurations().put(main2.getName(), main2);
+
+ ArrayList<String> connectorNames = new ArrayList<String>();
+ connectorNames.add(main.getName());
+ connectorNames.add(main2.getName());
+ ConnectionFactoryConfiguration configuration = new ConnectionFactoryConfigurationImpl()
+ .setName("MyConnectionFactory")
+ .setHA(b)
+ .setConnectorNames(connectorNames)
+ .setClientID("clientID")
+ .setClientFailureCheckPeriod(-1)
+ .setConnectionTTL(-2)
+ .setFactoryType(JMSFactoryType.CF)
+ .setCallTimeout(-3)
+ .setCallFailoverTimeout(-4)
+ .setCacheLargeMessagesClient(b)
+ .setMinLargeMessageSize(-5)
+ .setConsumerWindowSize(-6)
+ .setConsumerMaxRate(-7)
+ .setConfirmationWindowSize(-8)
+ .setProducerWindowSize(-9)
+ .setProducerMaxRate(-10)
+ .setBlockOnAcknowledge(b)
+ .setBlockOnDurableSend(b)
+ .setBlockOnNonDurableSend(b)
+ .setAutoGroup(b)
+ .setPreAcknowledge(b)
+ .setLoadBalancingPolicyClassName("foobar")
+ .setTransactionBatchSize(-11)
+ .setDupsOKBatchSize(-12)
+ .setUseGlobalPools(b)
+ .setScheduledThreadPoolMaxSize(-13)
+ .setThreadPoolMaxSize(-14)
+ .setRetryInterval(-15)
+ .setRetryIntervalMultiplier(-16)
+ .setMaxRetryInterval(-17)
+ .setReconnectAttempts(-18)
+ .setFailoverOnInitialConnection(b)
+ .setGroupID("groupID");
+
+ jmsServer.createConnectionFactory(false, configuration, "/MyConnectionFactory");
+ }
+
+ private void populate(StringBuilder sb, BeanUtilsBean bean, ActiveMQConnectionFactory factory) throws IllegalAccessException, InvocationTargetException
+ {
+ PropertyDescriptor[] descriptors = bean.getPropertyUtils().getPropertyDescriptors(factory);
+ for (PropertyDescriptor descriptor : descriptors)
+ {
+ if (descriptor.getWriteMethod() != null && descriptor.getReadMethod() != null)
+ {
+ if (descriptor.getPropertyType() == String.class)
+ {
+ String value = RandomUtil.randomString();
+ bean.setProperty(factory, descriptor.getName(), value);
+ sb.append("&").append(descriptor.getName()).append("=").append(value);
+ }
+ else if (descriptor.getPropertyType() == int.class)
+ {
+ int value = RandomUtil.randomPositiveInt();
+ bean.setProperty(factory, descriptor.getName(), value);
+ sb.append("&").append(descriptor.getName()).append("=").append(value);
+ }
+ else if (descriptor.getPropertyType() == long.class)
+ {
+ long value = RandomUtil.randomPositiveLong();
+ bean.setProperty(factory, descriptor.getName(), value);
+ sb.append("&").append(descriptor.getName()).append("=").append(value);
+ }
+ else if (descriptor.getPropertyType() == double.class)
+ {
+ double value = RandomUtil.randomDouble();
+ bean.setProperty(factory, descriptor.getName(), value);
+ sb.append("&").append(descriptor.getName()).append("=").append(value);
+ }
+ }
+ }
+ }
+
+ private static void checkEquals(Object factory, Object factory2) throws IllegalAccessException, InvocationTargetException, NoSuchMethodException
+ {
+ BeanUtilsBean bean = new BeanUtilsBean();
+ PropertyDescriptor[] descriptors = bean.getPropertyUtils().getPropertyDescriptors(factory);
+ for (PropertyDescriptor descriptor : descriptors)
+ {
+ if (descriptor.getWriteMethod() != null && descriptor.getReadMethod() != null)
+ {
+ Assert.assertEquals(descriptor.getName() + " incorrect", bean.getProperty(factory, descriptor.getName()),bean.getProperty(factory2, descriptor.getName()));
+ }
+ }
+ }
private static <T extends Serializable> byte[] serialize(T obj) throws IOException
{
ByteArrayOutputStream baos = new ByteArrayOutputStream();
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/3b76ccc9/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/connection/ConnectionFactoryWithJGroupsSerializationTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/connection/ConnectionFactoryWithJGroupsSerializationTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/connection/ConnectionFactoryWithJGroupsSerializationTest.java
index ab643ec..6a033c0 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/connection/ConnectionFactoryWithJGroupsSerializationTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/connection/ConnectionFactoryWithJGroupsSerializationTest.java
@@ -25,9 +25,10 @@ import java.io.Serializable;
import javax.jms.Queue;
-import org.apache.activemq.api.core.BroadcastEndpointFactoryConfiguration;
+import org.apache.activemq.api.core.BroadcastEndpointFactory;
+import org.apache.activemq.api.core.ChannelBroadcastEndpointFactory;
import org.apache.activemq.api.core.DiscoveryGroupConfiguration;
-import org.apache.activemq.api.core.JGroupsBroadcastGroupConfiguration;
+import org.apache.activemq.api.core.JGroupsFileBroadcastEndpointFactory;
import org.apache.activemq.api.jms.JMSFactoryType;
import org.apache.activemq.jms.client.ActiveMQConnectionFactory;
import org.apache.activemq.tests.util.JMSTestBase;
@@ -93,20 +94,22 @@ public class ConnectionFactoryWithJGroupsSerializationTest extends JMSTestBase
String channelName1 = "channel1";
String channelName2 = "channel2";
- JGroupsBroadcastGroupConfiguration jgroupsBroadcastCfg1 = new JGroupsBroadcastGroupConfiguration(channel, channelName1);
- JGroupsBroadcastGroupConfiguration jgroupsBroadcastCfg2 = new JGroupsBroadcastGroupConfiguration(jgroupsConfigString, channelName2);
+ BroadcastEndpointFactory jgroupsBroadcastCfg1 = new ChannelBroadcastEndpointFactory(channel, channelName1);
+ BroadcastEndpointFactory jgroupsBroadcastCfg2 = new JGroupsFileBroadcastEndpointFactory()
+ .setChannelName(channelName2)
+ .setFile(jgroupsConfigString);
DiscoveryGroupConfiguration dcConfig1 = new DiscoveryGroupConfiguration()
.setName("dg1")
.setRefreshTimeout(5000)
.setDiscoveryInitialWaitTimeout(5000)
- .setBroadcastEndpointFactoryConfiguration(jgroupsBroadcastCfg1);
+ .setBroadcastEndpointFactory(jgroupsBroadcastCfg1);
DiscoveryGroupConfiguration dcConfig2 = new DiscoveryGroupConfiguration()
.setName("dg2")
.setRefreshTimeout(5000)
.setDiscoveryInitialWaitTimeout(5000)
- .setBroadcastEndpointFactoryConfiguration(jgroupsBroadcastCfg2);
+ .setBroadcastEndpointFactory(jgroupsBroadcastCfg2);
jmsServer.getActiveMQServer().getConfiguration().getDiscoveryGroupConfigurations().put(dcConfig1.getName(), dcConfig1);
jmsServer.getActiveMQServer().getConfiguration().getDiscoveryGroupConfigurations().put(dcConfig2.getName(), dcConfig2);
@@ -160,8 +163,8 @@ public class ConnectionFactoryWithJGroupsSerializationTest extends JMSTestBase
byte[] x = serialize(jmsCf2);
ActiveMQConnectionFactory jmsCf2Copy = deserialize(x, ActiveMQConnectionFactory.class);
assertNotNull(jmsCf2Copy);
- BroadcastEndpointFactoryConfiguration broadcastEndpoint = jmsCf2Copy.getDiscoveryGroupConfiguration().getBroadcastEndpointFactoryConfiguration();
- assertTrue(broadcastEndpoint instanceof JGroupsBroadcastGroupConfiguration);
+ BroadcastEndpointFactory broadcastEndpoint = jmsCf2Copy.getDiscoveryGroupConfiguration().getBroadcastEndpointFactory();
+ assertTrue(broadcastEndpoint instanceof JGroupsFileBroadcastEndpointFactory);
}
@Override
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/3b76ccc9/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/server/JMSServerDeployerTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/server/JMSServerDeployerTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/server/JMSServerDeployerTest.java
index c3b3de3..2ebaf0e 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/server/JMSServerDeployerTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/jms/server/JMSServerDeployerTest.java
@@ -22,7 +22,7 @@ import javax.naming.Context;
import org.apache.activemq.api.core.DiscoveryGroupConfiguration;
import org.apache.activemq.api.core.TransportConfiguration;
-import org.apache.activemq.api.core.UDPBroadcastGroupConfiguration;
+import org.apache.activemq.api.core.UDPBroadcastEndpointFactory;
import org.apache.activemq.core.config.Configuration;
import org.apache.activemq.core.registry.JndiBindingRegistry;
import org.apache.activemq.core.remoting.impl.netty.NettyConnectorFactory;
@@ -126,10 +126,10 @@ public class JMSServerDeployerTest extends ServiceTestBase
.setName("mygroup")
.setRefreshTimeout(5432)
.setDiscoveryInitialWaitTimeout(5432)
- .setBroadcastEndpointFactoryConfiguration(new UDPBroadcastGroupConfiguration()
- .setGroupAddress("243.7.7.7")
- .setGroupPort(12345)
- .setLocalBindAddress("172.16.8.10"));
+ .setBroadcastEndpointFactory(new UDPBroadcastEndpointFactory()
+ .setGroupAddress("243.7.7.7")
+ .setGroupPort(12345)
+ .setLocalBindAddress("172.16.8.10"));
config = createBasicConfig()
.addConnectorConfiguration("netty", new TransportConfiguration(NettyConnectorFactory.class.getName()))
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/3b76ccc9/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ActiveMQServerControlTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ActiveMQServerControlTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ActiveMQServerControlTest.java
index 3016d05..806a3fa 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ActiveMQServerControlTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ActiveMQServerControlTest.java
@@ -42,6 +42,7 @@ import org.apache.activemq.core.config.Configuration;
import org.apache.activemq.core.messagecounter.impl.MessageCounterManagerImpl;
import org.apache.activemq.core.remoting.impl.invm.InVMAcceptorFactory;
import org.apache.activemq.core.remoting.impl.invm.InVMConnectorFactory;
+import org.apache.activemq.core.remoting.impl.invm.TransportConstants;
import org.apache.activemq.core.server.ActiveMQServer;
import org.apache.activemq.core.server.ActiveMQServers;
import org.apache.activemq.core.settings.impl.SlowConsumerPolicy;
@@ -1019,7 +1020,7 @@ public class ActiveMQServerControlTest extends ManagementTestBase
conf.setSecurityEnabled(false);
conf.getAcceptorConfigurations().clear();
HashMap<String, Object> params = new HashMap<String, Object>();
- params.put("server-id", "2");
+ params.put(TransportConstants.SERVER_ID_PROP_NAME, "2");
conf.getAcceptorConfigurations().add(new TransportConfiguration(InVMAcceptorFactory.class.getName(), params));
ActiveMQServer server2 = ActiveMQServers.newActiveMQServer(conf, null, true);
this.conf.getConnectorConfigurations().clear();
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/3b76ccc9/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/BroadcastGroupControlTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/BroadcastGroupControlTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/BroadcastGroupControlTest.java
index 3462601..ccd41b8 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/BroadcastGroupControlTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/BroadcastGroupControlTest.java
@@ -25,7 +25,7 @@ import org.junit.Assert;
import org.apache.activemq.api.core.BroadcastGroupConfiguration;
import org.apache.activemq.api.core.TransportConfiguration;
-import org.apache.activemq.api.core.UDPBroadcastGroupConfiguration;
+import org.apache.activemq.api.core.UDPBroadcastEndpointFactory;
import org.apache.activemq.api.core.management.BroadcastGroupControl;
import org.apache.activemq.core.config.Configuration;
import org.apache.activemq.core.server.ActiveMQServer;
@@ -50,10 +50,10 @@ public class BroadcastGroupControlTest extends ManagementTestBase
.setName(RandomUtil.randomString())
.setBroadcastPeriod(RandomUtil.randomPositiveInt())
.setConnectorInfos(connectorInfos)
- .setEndpointFactoryConfiguration(new UDPBroadcastGroupConfiguration()
- .setGroupAddress("231.7.7.7")
- .setGroupPort(1199)
- .setLocalBindPort(1198));
+ .setEndpointFactory(new UDPBroadcastEndpointFactory()
+ .setGroupAddress("231.7.7.7")
+ .setGroupPort(1199)
+ .setLocalBindPort(1198));
}
public static Pair<String, String> randomPair()
@@ -82,7 +82,7 @@ public class BroadcastGroupControlTest extends ManagementTestBase
BroadcastGroupControl broadcastGroupControl = createManagementControl(broadcastGroupConfig.getName());
- UDPBroadcastGroupConfiguration udpCfg = (UDPBroadcastGroupConfiguration) broadcastGroupConfig.getEndpointFactoryConfiguration();
+ UDPBroadcastEndpointFactory udpCfg = (UDPBroadcastEndpointFactory) broadcastGroupConfig.getEndpointFactory();
Assert.assertEquals(broadcastGroupConfig.getName(), broadcastGroupControl.getName());
Assert.assertEquals(udpCfg.getGroupAddress(), broadcastGroupControl.getGroupAddress());
Assert.assertEquals(udpCfg.getGroupPort(), broadcastGroupControl.getGroupPort());
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/3b76ccc9/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ClusterConnectionControl2Test.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ClusterConnectionControl2Test.java b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ClusterConnectionControl2Test.java
index 93f6e63..8c4341c 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ClusterConnectionControl2Test.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ClusterConnectionControl2Test.java
@@ -33,7 +33,7 @@ import org.junit.Assert;
import org.apache.activemq.api.core.BroadcastGroupConfiguration;
import org.apache.activemq.api.core.DiscoveryGroupConfiguration;
import org.apache.activemq.api.core.TransportConfiguration;
-import org.apache.activemq.api.core.UDPBroadcastGroupConfiguration;
+import org.apache.activemq.api.core.UDPBroadcastEndpointFactory;
import org.apache.activemq.api.core.management.ClusterConnectionControl;
import org.apache.activemq.core.config.ClusterConnectionConfiguration;
import org.apache.activemq.core.config.Configuration;
@@ -133,17 +133,17 @@ public class ClusterConnectionControl2Test extends ManagementTestBase
.setName(discoveryName)
.setBroadcastPeriod(250)
.setConnectorInfos(connectorInfos)
- .setEndpointFactoryConfiguration(new UDPBroadcastGroupConfiguration()
- .setGroupAddress(groupAddress)
- .setGroupPort(groupPort));
+ .setEndpointFactory(new UDPBroadcastEndpointFactory()
+ .setGroupAddress(groupAddress)
+ .setGroupPort(groupPort));
DiscoveryGroupConfiguration discoveryGroupConfig = new DiscoveryGroupConfiguration()
.setName(discoveryName)
.setRefreshTimeout(0)
.setDiscoveryInitialWaitTimeout(0)
- .setBroadcastEndpointFactoryConfiguration(new UDPBroadcastGroupConfiguration()
- .setGroupAddress(groupAddress)
- .setGroupPort(groupPort));
+ .setBroadcastEndpointFactory(new UDPBroadcastEndpointFactory()
+ .setGroupAddress(groupAddress)
+ .setGroupPort(groupPort));
clusterConnectionConfig_0 = new ClusterConnectionConfiguration()
.setName(clusterName)
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/3b76ccc9/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ClusterConnectionControlTest.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ClusterConnectionControlTest.java b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ClusterConnectionControlTest.java
index c787678..041cd3e 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ClusterConnectionControlTest.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/management/ClusterConnectionControlTest.java
@@ -31,7 +31,7 @@ import org.junit.Assert;
import org.apache.activemq.api.core.DiscoveryGroupConfiguration;
import org.apache.activemq.api.core.SimpleString;
import org.apache.activemq.api.core.TransportConfiguration;
-import org.apache.activemq.api.core.UDPBroadcastGroupConfiguration;
+import org.apache.activemq.api.core.UDPBroadcastEndpointFactory;
import org.apache.activemq.api.core.management.ClusterConnectionControl;
import org.apache.activemq.api.core.management.CoreNotificationType;
import org.apache.activemq.api.core.management.ObjectNameBuilder;
@@ -236,9 +236,9 @@ public class ClusterConnectionControlTest extends ManagementTestBase
.setName(discoveryGroupName)
.setRefreshTimeout(500)
.setDiscoveryInitialWaitTimeout(0)
- .setBroadcastEndpointFactoryConfiguration(new UDPBroadcastGroupConfiguration()
- .setGroupAddress("230.1.2.3")
- .setGroupPort(6745));
+ .setBroadcastEndpointFactory(new UDPBroadcastEndpointFactory()
+ .setGroupAddress("230.1.2.3")
+ .setGroupPort(6745));
Configuration conf_1 = createBasicConfig()
.addAcceptorConfiguration(acceptorConfig)
http://git-wip-us.apache.org/repos/asf/activemq-6/blob/3b76ccc9/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/ra/ActiveMQRAClusteredTestBase.java
----------------------------------------------------------------------
diff --git a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/ra/ActiveMQRAClusteredTestBase.java b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/ra/ActiveMQRAClusteredTestBase.java
index b33e43d..aeccc02 100644
--- a/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/ra/ActiveMQRAClusteredTestBase.java
+++ b/tests/integration-tests/src/test/java/org/apache/activemq/tests/integration/ra/ActiveMQRAClusteredTestBase.java
@@ -21,6 +21,7 @@ import java.util.HashMap;
import org.apache.activemq.api.core.TransportConfiguration;
import org.apache.activemq.core.config.Configuration;
import org.apache.activemq.core.config.impl.ConfigurationImpl;
+import org.apache.activemq.core.remoting.impl.invm.TransportConstants;
import org.apache.activemq.core.server.ActiveMQServer;
import org.apache.activemq.core.server.ActiveMQServers;
import org.apache.activemq.jms.server.impl.JMSServerManagerImpl;
@@ -42,7 +43,7 @@ public class ActiveMQRAClusteredTestBase extends ActiveMQRATestBase
primaryConnector = new TransportConfiguration(INVM_CONNECTOR_FACTORY);
HashMap<String, Object> params = new HashMap();
- params.put("server-id", "1");
+ params.put(TransportConstants.SERVER_ID_PROP_NAME, "1");
secondaryConnector = new TransportConfiguration(INVM_CONNECTOR_FACTORY, params);
Configuration conf = createSecondaryDefaultConfig(true, true);
@@ -77,7 +78,7 @@ public class ActiveMQRAClusteredTestBase extends ActiveMQRATestBase
if (secondary)
{
- invmMap.put("server-id", "1");
+ invmMap.put(TransportConstants.SERVER_ID_PROP_NAME, "1");
nettyMap.put("port", "5545");
primaryConnectorName = "invm";
secondaryConnectorName = "invm2";