[jboss-cvs] JBoss Messaging SVN: r5671 - in trunk: src/main/org/jboss/messaging/core/config/cluster and 14 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Tue Jan 20 17:13:24 EST 2009
Author: timfox
Date: 2009-01-20 17:13:24 -0500 (Tue, 20 Jan 2009)
New Revision: 5671
Added:
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/BridgeReconnectTest.java
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/BridgeTest.java
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/BridgeTestBase.java
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/SimpleTransformer.java
Removed:
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/DiscoveryFlowTest.java
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowBatchSizeTest.java
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowBatchTimeTest.java
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowReconnectTest.java
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowRestartTest.java
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowTestBase.java
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowTransformerTest.java
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowWildcardTest.java
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowWithFilterTest.java
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/SimpleTransformer.java
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/StaticFlowTest.java
Modified:
trunk/src/config/jbm-configuration.xml
trunk/src/main/org/jboss/messaging/core/config/cluster/BridgeConfiguration.java
trunk/src/main/org/jboss/messaging/core/config/impl/ConfigurationImpl.java
trunk/src/main/org/jboss/messaging/core/config/impl/FileConfiguration.java
trunk/src/main/org/jboss/messaging/core/persistence/impl/journal/JournalStorageManager.java
trunk/src/main/org/jboss/messaging/core/postoffice/impl/PostOfficeImpl.java
trunk/src/main/org/jboss/messaging/core/remoting/impl/RemotingConnectionImpl.java
trunk/src/main/org/jboss/messaging/core/server/cluster/Bridge.java
trunk/src/main/org/jboss/messaging/core/server/cluster/impl/BridgeImpl.java
trunk/src/main/org/jboss/messaging/core/server/cluster/impl/ClusterManagerImpl.java
trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerImpl.java
trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerPacketHandler.java
trunk/src/main/org/jboss/messaging/core/server/impl/QueueImpl.java
trunk/src/main/org/jboss/messaging/jms/bridge/impl/BridgeImpl.java
trunk/src/main/org/jboss/messaging/jms/client/JBossMessageProducer.java
trunk/src/main/org/jboss/messaging/util/UUID.java
trunk/src/main/org/jboss/messaging/util/UUIDGenerator.java
trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/BasicMessageFlowTest.java
trunk/tests/src/org/jboss/messaging/tests/integration/management/BridgeControlTest.java
Log:
More tests etc
Modified: trunk/src/config/jbm-configuration.xml
===================================================================
--- trunk/src/config/jbm-configuration.xml 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/config/jbm-configuration.xml 2009-01-20 22:13:24 UTC (rev 5671)
@@ -1,4 +1,4 @@
-<deployment xmlns="urn:jboss:messaging-configuration" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:jboss:messaging-configuration ../schemas/jbm-configuration.xsd ">
+<deployment xmlns="urn:jboss:messaging-configuration" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:jboss:messaging-configuration ../schemas/jbm-configuration.xsd">
<configuration>
<clustered>false</clustered>
Modified: trunk/src/main/org/jboss/messaging/core/config/cluster/BridgeConfiguration.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/config/cluster/BridgeConfiguration.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/core/config/cluster/BridgeConfiguration.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -68,8 +68,6 @@
private final boolean useDuplicateDetection;
- private final int maxHops;
-
public BridgeConfiguration(final String name,
final String queueName,
final String forwardingAddress,
@@ -81,8 +79,7 @@
final double retryIntervalMultiplier,
final int maxRetriesBeforeFailover,
final int maxRetriesAfterFailover,
- final boolean useDuplicateDetection,
- final int maxHops,
+ final boolean useDuplicateDetection,
final Pair<String, String> connectorPair)
{
this.name = name;
@@ -97,7 +94,6 @@
this.maxRetriesBeforeFailover = maxRetriesBeforeFailover;
this.maxRetriesAfterFailover = maxRetriesAfterFailover;
this.useDuplicateDetection = useDuplicateDetection;
- this.maxHops = maxHops;
this.connectorPair = connectorPair;
this.discoveryGroupName = null;
}
@@ -113,8 +109,7 @@
final double retryIntervalMultiplier,
final int maxRetriesBeforeFailover,
final int maxRetriesAfterFailover,
- final boolean useDuplicateDetection,
- final int maxHops,
+ final boolean useDuplicateDetection,
final String discoveryGroupName)
{
this.name = name;
@@ -129,7 +124,6 @@
this.maxRetriesBeforeFailover = maxRetriesBeforeFailover;
this.maxRetriesAfterFailover = maxRetriesAfterFailover;
this.useDuplicateDetection = useDuplicateDetection;
- this.maxHops = maxHops;
this.connectorPair = null;
this.discoveryGroupName = discoveryGroupName;
}
@@ -176,7 +170,7 @@
public String getDiscoveryGroupName()
{
- return this.discoveryGroupName;
+ return discoveryGroupName;
}
public long getRetryInterval()
@@ -203,9 +197,4 @@
{
return useDuplicateDetection;
}
-
- public int getMaxHops()
- {
- return maxHops;
- }
}
Modified: trunk/src/main/org/jboss/messaging/core/config/impl/ConfigurationImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/config/impl/ConfigurationImpl.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/core/config/impl/ConfigurationImpl.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -122,8 +122,6 @@
public static final boolean DEFAULT_USE_DUPLICATE_DETECTION = true;
- public static final int DEFAULT_MAX_HOPS = 1;
-
public static final boolean DEFAULT_DIVERT_EXCLUSIVE = false;
// Attributes -----------------------------------------------------------------------------
Modified: trunk/src/main/org/jboss/messaging/core/config/impl/FileConfiguration.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/config/impl/FileConfiguration.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/core/config/impl/FileConfiguration.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -703,8 +703,6 @@
boolean useDuplicateDetection = DEFAULT_USE_DUPLICATE_DETECTION;
- int maxHops = DEFAULT_MAX_HOPS;
-
NodeList children = brNode.getChildNodes();
for (int j = 0; j < children.getLength(); j++)
@@ -763,10 +761,6 @@
{
useDuplicateDetection = XMLUtil.parseBoolean(child);
}
- else if (child.getNodeName().equals("max-hops"))
- {
- maxHops = XMLUtil.parseInt(child);
- }
else if (child.getNodeName().equals("connector-ref"))
{
String connectorName = child.getAttributes().getNamedItem("connector-name").getNodeValue();
@@ -799,8 +793,7 @@
retryIntervalMultiplier,
maxRetriesBeforeFailover,
maxRetriesAfterFailover,
- useDuplicateDetection,
- maxHops,
+ useDuplicateDetection,
connectorPair);
}
else
@@ -816,8 +809,7 @@
retryIntervalMultiplier,
maxRetriesBeforeFailover,
maxRetriesAfterFailover,
- useDuplicateDetection,
- maxHops,
+ useDuplicateDetection,
discoveryGroupName);
}
Modified: trunk/src/main/org/jboss/messaging/core/persistence/impl/journal/JournalStorageManager.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/persistence/impl/journal/JournalStorageManager.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/core/persistence/impl/journal/JournalStorageManager.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -30,7 +30,6 @@
import java.nio.ByteBuffer;
import java.util.ArrayList;
import java.util.HashMap;
-import java.util.HashSet;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
@@ -140,7 +139,7 @@
private volatile boolean started;
private final ExecutorService executor;
-
+
public JournalStorageManager(final Configuration config)
{
this.executor = Executors.newCachedThreadPool(new JBMThreadFactory("JBM-journal-storage-manager"));
@@ -230,7 +229,7 @@
{
return idGenerator.generateID();
}
-
+
public LargeServerMessage createLargeMessage()
{
return new JournalLargeServerMessage(this);
@@ -1240,7 +1239,7 @@
}
}
-
+
private static class LargeMessageEncoding implements EncodingSupport
{
private final LargeServerMessage message;
Modified: trunk/src/main/org/jboss/messaging/core/postoffice/impl/PostOfficeImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/postoffice/impl/PostOfficeImpl.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/core/postoffice/impl/PostOfficeImpl.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -285,7 +285,7 @@
}
public void route(final ServerMessage message, Transaction tx) throws Exception
- {
+ {
SimpleString address = message.getDestination();
if (checkAllowable)
@@ -360,7 +360,7 @@
}
Bindings bindings = addressManager.getBindings(address);
-
+
if (bindings != null)
{
bindings.route(message, tx);
Modified: trunk/src/main/org/jboss/messaging/core/remoting/impl/RemotingConnectionImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/remoting/impl/RemotingConnectionImpl.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/core/remoting/impl/RemotingConnectionImpl.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -506,7 +506,7 @@
public void bufferReceived(final Object connectionID, final MessagingBuffer buffer)
{
final Packet packet = decode(buffer);
-
+
synchronized (transferLock)
{
if (!frozen)
@@ -1034,7 +1034,7 @@
}
if (connection.active || packet.isWriteAlways())
- {
+ {
connection.transportConnection.write(buffer);
}
}
@@ -1388,7 +1388,7 @@
}
private void handlePacket(final Packet packet)
- {
+ {
if (packet.getType() == PACKETS_CONFIRMED)
{
if (resendCache != null)
@@ -1433,7 +1433,7 @@
}
if (packet.isResponse())
- {
+ {
response = packet;
confirm(packet);
Modified: trunk/src/main/org/jboss/messaging/core/server/cluster/Bridge.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/cluster/Bridge.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/core/server/cluster/Bridge.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -54,7 +54,5 @@
Transformer getTransformer();
- int getMaxHops();
-
boolean isUseDuplicateDetection();
}
Modified: trunk/src/main/org/jboss/messaging/core/server/cluster/impl/BridgeImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/cluster/impl/BridgeImpl.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/core/server/cluster/impl/BridgeImpl.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -35,10 +35,11 @@
import org.jboss.messaging.core.client.impl.ClientSessionImpl;
import org.jboss.messaging.core.config.TransportConfiguration;
import org.jboss.messaging.core.exception.MessagingException;
+import org.jboss.messaging.core.filter.Filter;
+import org.jboss.messaging.core.filter.impl.FilterImpl;
import org.jboss.messaging.core.logging.Logger;
import org.jboss.messaging.core.message.impl.MessageImpl;
import org.jboss.messaging.core.persistence.StorageManager;
-import org.jboss.messaging.core.postoffice.PostOffice;
import org.jboss.messaging.core.remoting.FailureListener;
import org.jboss.messaging.core.remoting.RemotingConnection;
import org.jboss.messaging.core.server.HandleStatus;
@@ -47,8 +48,6 @@
import org.jboss.messaging.core.server.ServerMessage;
import org.jboss.messaging.core.server.cluster.Bridge;
import org.jboss.messaging.core.server.cluster.Transformer;
-import org.jboss.messaging.core.settings.HierarchicalRepository;
-import org.jboss.messaging.core.settings.impl.QueueSettings;
import org.jboss.messaging.core.transaction.Transaction;
import org.jboss.messaging.core.transaction.impl.TransactionImpl;
import org.jboss.messaging.util.Future;
@@ -73,7 +72,7 @@
// Attributes ----------------------------------------------------
private final SimpleString name;
-
+
private final Queue queue;
private final Executor executor;
@@ -83,9 +82,11 @@
private final int maxBatchSize;
private final long maxBatchTime;
-
+
private final SimpleString filterString;
+ private final Filter filter;
+
private final SimpleString forwardingAddress;
private int count;
@@ -110,8 +111,6 @@
private final ScheduledFuture<?> future;
- private final int maxHops;
-
private final boolean useDuplicateDetection;
// Static --------------------------------------------------------
@@ -134,12 +133,11 @@
final long retryInterval,
final double retryIntervalMultiplier,
final int maxRetriesBeforeFailover,
- final int maxRetriesAfterFailover,
- final int maxHops,
- final boolean useDuplicateDetection)
+ final int maxRetriesAfterFailover,
+ final boolean useDuplicateDetection) throws Exception
{
this.name = name;
-
+
this.queue = queue;
this.executor = executor;
@@ -147,17 +145,24 @@
this.maxBatchSize = maxBatchSize;
this.maxBatchTime = maxBatchTime;
-
+
this.filterString = filterString;
+ if (this.filterString != null)
+ {
+ this.filter = new FilterImpl(filterString);
+ }
+ else
+ {
+ this.filter = null;
+ }
+
this.forwardingAddress = forwardingAddress;
this.storageManager = storageManager;
this.transformer = transformer;
- this.maxHops = maxHops;
-
this.useDuplicateDetection = useDuplicateDetection;
this.csf = new ClientSessionFactoryImpl(connectorPair.a,
@@ -179,8 +184,6 @@
future = null;
}
}
-
-
public synchronized void start() throws Exception
{
@@ -253,6 +256,11 @@
return HandleStatus.BUSY;
}
+ if (filter != null && !filter.match(reference.getMessage()))
+ {
+ return HandleStatus.NO_MATCH;
+ }
+
synchronized (this)
{
if (!started)
@@ -379,20 +387,6 @@
message = transformer.transform(message);
}
- if (maxHops != -1)
- {
- Integer iMaxHops = (Integer)message.getProperty(MessageImpl.HDR_MAX_HOPS);
-
- if (iMaxHops == null)
- {
- message.putIntProperty(MessageImpl.HDR_MAX_HOPS, maxHops - 1);
- }
- else
- {
- message.putIntProperty(MessageImpl.HDR_MAX_HOPS, iMaxHops - 1);
- }
- }
-
SimpleString dest;
if (forwardingAddress != null)
@@ -492,11 +486,6 @@
return transformer;
}
- public int getMaxHops()
- {
- return maxHops;
- }
-
public boolean isUseDuplicateDetection()
{
return useDuplicateDetection;
Modified: trunk/src/main/org/jboss/messaging/core/server/cluster/impl/ClusterManagerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/cluster/impl/ClusterManagerImpl.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/core/server/cluster/impl/ClusterManagerImpl.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -479,11 +479,11 @@
return;
}
-
+
Transformer transformer = instantiateTransformer(config.getTransformerClassName());
Pair<String, String> connectorNamePair = config.getConnectorPair();
-
+
Binding binding = postOffice.getBinding(new SimpleString(config.getQueueName()));
if (binding == null)
@@ -494,7 +494,7 @@
}
Queue queue = (Queue)binding.getBindable();
-
+
Bridge bridge;
if (connectorNamePair != null)
@@ -523,69 +523,64 @@
}
}
-
Pair<TransportConfiguration, TransportConfiguration> pair = new Pair<TransportConfiguration, TransportConfiguration>(connector,
backupConnector);
bridge = new BridgeImpl(new SimpleString(config.getName()),
- queue,
- pair,
- executorFactory.getExecutor(),
- config.getMaxBatchSize(),
- config.getMaxBatchTime(),
- new SimpleString(config.getForwardingAddress()),
- config.getFilterString() == null ? null
- : new SimpleString(config.getFilterString()),
- storageManager,
- scheduledExecutor,
- transformer,
- config.getRetryInterval(),
- config.getRetryIntervalMultiplier(),
- config.getMaxRetriesBeforeFailover(),
- config.getMaxRetriesAfterFailover(),
- config.getMaxHops(),
- config.isUseDuplicateDetection());
-
+ queue,
+ pair,
+ executorFactory.getExecutor(),
+ config.getMaxBatchSize(),
+ config.getMaxBatchTime(),
+ config.getFilterString() == null ? null : new SimpleString(config.getFilterString()),
+ new SimpleString(config.getForwardingAddress()),
+ storageManager,
+ scheduledExecutor,
+ transformer,
+ config.getRetryInterval(),
+ config.getRetryIntervalMultiplier(),
+ config.getMaxRetriesBeforeFailover(),
+ config.getMaxRetriesAfterFailover(),
+ config.isUseDuplicateDetection());
+
bridges.put(config.getName(), bridge);
- log.info("registering bridge");
managementService.registerBridge(bridge, config);
- bridge.start();
+ bridge.start();
}
-// else
-// {
-// DiscoveryGroup group = discoveryGroups.get(config.getDiscoveryGroupName());
-//
-// if (group == null)
-// {
-// log.warn("There is no discovery-group with name " + config.getDiscoveryGroupName() +
-// " deployed. This one will not be deployed.");
-//
-// return;
-// }
-//
-// bridge = new BridgeImpl(new SimpleString(config.getName()),
-// queue,
-// config.getDiscoveryGroupName(),
-// executorFactory.getExecutor(),
-// config.getMaxBatchSize(),
-// config.getMaxBatchTime(),
-// new SimpleString(config.getForwardingAddress()),
-// config.getFilterString() == null ? null
-// : new SimpleString(config.getFilterString()),
-// storageManager,
-// scheduledExecutor,
-// transformer,
-// config.getRetryInterval(),
-// config.getRetryIntervalMultiplier(),
-// config.getMaxRetriesBeforeFailover(),
-// config.getMaxRetriesAfterFailover(),
-// config.getMaxHops(),
-// config.isUseDuplicateDetection());
-// }
-
-
+ // else
+ // {
+ // DiscoveryGroup group = discoveryGroups.get(config.getDiscoveryGroupName());
+ //
+ // if (group == null)
+ // {
+ // log.warn("There is no discovery-group with name " + config.getDiscoveryGroupName() +
+ // " deployed. This one will not be deployed.");
+ //
+ // return;
+ // }
+ //
+ // bridge = new BridgeImpl(new SimpleString(config.getName()),
+ // queue,
+ // config.getDiscoveryGroupName(),
+ // executorFactory.getExecutor(),
+ // config.getMaxBatchSize(),
+ // config.getMaxBatchTime(),
+ // new SimpleString(config.getForwardingAddress()),
+ // config.getFilterString() == null ? null
+ // : new SimpleString(config.getFilterString()),
+ // storageManager,
+ // scheduledExecutor,
+ // transformer,
+ // config.getRetryInterval(),
+ // config.getRetryIntervalMultiplier(),
+ // config.getMaxRetriesBeforeFailover(),
+ // config.getMaxRetriesAfterFailover(),
+ // config.getMaxHops(),
+ // config.isUseDuplicateDetection());
+ // }
+
}
private Transformer instantiateTransformer(final String transformerClassName)
Modified: trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerImpl.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerImpl.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -659,8 +659,8 @@
final boolean xa,
final int sendWindowSize) throws Exception
{
- checkActivate(connection);
-
+ checkActivate(connection);
+
return doCreateSession(name,
channelID,
username,
@@ -847,9 +847,7 @@
}
SimpleString sName = new SimpleString(config.getName());
-
- log.info("deploying divert with name " + sName);
-
+
if (postOffice.getBinding(sName) != null)
{
log.warn("Binding already exists with name " + sName + ", divert will not be deployed");
Modified: trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerPacketHandler.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerPacketHandler.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerPacketHandler.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -81,7 +81,7 @@
Packet response = null;
byte type = packet.getType();
-
+
// All these operations need to be idempotent since they are outside of the session
// reliability replay functionality
try
@@ -160,7 +160,7 @@
if (response != null)
{
if (result == null)
- {
+ {
channel1.send(response);
}
else
@@ -170,13 +170,13 @@
result.setResultRunner(new Runnable()
{
public void run()
- {
+ {
channel1.send(theResponse);
}
});
}
}
-
+
channel1.replicateComplete();
}
}
\ No newline at end of file
Modified: trunk/src/main/org/jboss/messaging/core/server/impl/QueueImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/impl/QueueImpl.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/core/server/impl/QueueImpl.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -200,7 +200,7 @@
}
public void route(final ServerMessage message, final Transaction tx) throws Exception
- {
+ {
// Temp
SimpleString routeToHeader = MessageImpl.HDR_ROUTE_TO_PREFIX.concat(name);
message.removeProperty(routeToHeader);
@@ -243,7 +243,7 @@
addLast(ref);
}
else
- {
+ {
if (durableRef)
{
if (!message.isStored())
Modified: trunk/src/main/org/jboss/messaging/jms/bridge/impl/BridgeImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/jms/bridge/impl/BridgeImpl.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/jms/bridge/impl/BridgeImpl.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -226,7 +226,7 @@
// MessagingComponent overrides --------------------------------------------------
public synchronized void start() throws Exception
- {
+ {
if (started)
{
log.warn("Attempt to start, but is already started");
Modified: trunk/src/main/org/jboss/messaging/jms/client/JBossMessageProducer.java
===================================================================
--- trunk/src/main/org/jboss/messaging/jms/client/JBossMessageProducer.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/jms/client/JBossMessageProducer.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -18,7 +18,7 @@
* License along with this software; if not, write to the Free
* Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
* 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
+ */
package org.jboss.messaging.jms.client;
@@ -61,138 +61,140 @@
public class JBossMessageProducer implements MessageProducer, QueueSender, TopicPublisher
{
// Constants -----------------------------------------------------
-
- // Static --------------------------------------------------------
+ // Static --------------------------------------------------------
+
private static final Logger log = Logger.getLogger(JBossMessageProducer.class);
-
+
// Attributes ----------------------------------------------------
-
+
private JBossConnection jbossConn;
-
+
private final SimpleString connID;
-
+
private ClientProducer producer;
-
+
private boolean disableMessageID = false;
-
+
private boolean disableMessageTimestamp = false;
-
+
private int defaultPriority = 4;
-
+
private long defaultTimeToLive = 0;
-
+
private int defaultDeliveryMode = DeliveryMode.PERSISTENT;
-
+
private JBossDestination defaultDestination;
-
+
private final String messageIDPrefix;
-
+
private final AtomicLong sequenceNumber = new AtomicLong(0);
-
+
private ClientSession clientSession;
// Constructors --------------------------------------------------
-
- public JBossMessageProducer(final JBossConnection jbossConn, final ClientProducer producer,
- final JBossDestination defaultDestination, final ClientSession clientSession) throws JMSException
+
+ public JBossMessageProducer(final JBossConnection jbossConn,
+ final ClientProducer producer,
+ final JBossDestination defaultDestination,
+ final ClientSession clientSession) throws JMSException
{
this.jbossConn = jbossConn;
-
+
this.connID = jbossConn.getUID();
-
- this.producer = producer;
-
+
+ this.producer = producer;
+
this.defaultDestination = defaultDestination;
this.clientSession = clientSession;
-
- //TODO the UUID should be generated at the JMS Connection level,
+
+ // TODO the UUID should be generated at the JMS Connection level,
// then session, producers & messages ID could be created using simple sequences
String uuid = UUIDGenerator.getInstance().generateSimpleStringUUID().toString();
-
+
messageIDPrefix = "ID:" + uuid + ":";
}
-
+
// MessageProducer implementation --------------------------------
-
+
public void setDisableMessageID(boolean value) throws JMSException
{
checkClosed();
-
+
disableMessageID = value;
}
-
+
public boolean getDisableMessageID() throws JMSException
{
checkClosed();
-
+
return disableMessageID;
}
-
+
public void setDisableMessageTimestamp(boolean value) throws JMSException
{
checkClosed();
-
+
disableMessageTimestamp = value;
}
-
+
public boolean getDisableMessageTimestamp() throws JMSException
{
checkClosed();
-
+
return disableMessageTimestamp;
}
-
+
public void setDeliveryMode(int deliveryMode) throws JMSException
{
checkClosed();
-
+
this.defaultDeliveryMode = deliveryMode;
}
-
+
public int getDeliveryMode() throws JMSException
{
checkClosed();
-
+
return this.defaultDeliveryMode;
}
-
+
public void setPriority(int defaultPriority) throws JMSException
{
checkClosed();
-
+
this.defaultPriority = defaultPriority;
}
-
+
public int getPriority() throws JMSException
{
checkClosed();
-
+
return defaultPriority;
}
-
+
public void setTimeToLive(long timeToLive) throws JMSException
{
checkClosed();
-
+
this.defaultTimeToLive = timeToLive;
}
-
+
public long getTimeToLive() throws JMSException
{
checkClosed();
-
+
return defaultTimeToLive;
}
-
+
public Destination getDestination() throws JMSException
{
checkClosed();
-
+
return defaultDestination;
}
-
+
public void close() throws JMSException
{
try
@@ -201,54 +203,49 @@
}
catch (MessagingException e)
{
- throw JMSExceptionHelper.convertFromMessagingException(e);
- }
+ throw JMSExceptionHelper.convertFromMessagingException(e);
+ }
}
-
+
public void send(Message message) throws JMSException
{
checkClosed();
message.setJMSDeliveryMode(defaultDeliveryMode);
-
+
message.setJMSPriority(defaultPriority);
-
+
doSend(message, defaultTimeToLive, null);
}
-
+
public void send(Message message, int deliveryMode, int priority, long timeToLive) throws JMSException
- {
+ {
checkClosed();
message.setJMSDeliveryMode(deliveryMode);
-
+
message.setJMSPriority(priority);
-
+
doSend(message, timeToLive, null);
}
-
+
public void send(Destination destination, Message message) throws JMSException
- {
+ {
checkClosed();
if (destination != null && !(destination instanceof JBossDestination))
{
throw new InvalidDestinationException("Not a JBoss Destination:" + destination);
}
-
+
message.setJMSDeliveryMode(defaultDeliveryMode);
-
+
message.setJMSPriority(defaultPriority);
-
+
doSend(message, defaultTimeToLive, (JBossDestination)destination);
}
-
- public void send(Destination destination,
- Message message,
- int deliveryMode,
- int priority,
- long timeToLive) throws JMSException
+ public void send(Destination destination, Message message, int deliveryMode, int priority, long timeToLive) throws JMSException
{
checkClosed();
@@ -258,9 +255,9 @@
}
message.setJMSDeliveryMode(deliveryMode);
-
+
message.setJMSPriority(priority);
-
+
doSend(message, timeToLive, (JBossDestination)destination);
}
@@ -270,25 +267,23 @@
{
return (Topic)getDestination();
}
-
+
public void publish(Message message) throws JMSException
{
send(message);
}
-
+
public void publish(Topic topic, Message message) throws JMSException
{
send(topic, message);
}
-
- public void publish(Message message, int deliveryMode, int priority, long timeToLive)
- throws JMSException
+
+ public void publish(Message message, int deliveryMode, int priority, long timeToLive) throws JMSException
{
send(message, deliveryMode, priority, timeToLive);
}
-
- public void publish(Topic topic, Message message, int deliveryMode,
- int priority, long timeToLive) throws JMSException
+
+ public void publish(Topic topic, Message message, int deliveryMode, int priority, long timeToLive) throws JMSException
{
send(topic, message, deliveryMode, priority, timeToLive);
}
@@ -299,18 +294,17 @@
{
send((Destination)queue, message);
}
-
- public void send(Queue queue, Message message, int deliveryMode, int priority,
- long timeToLive) throws JMSException
+
+ public void send(Queue queue, Message message, int deliveryMode, int priority, long timeToLive) throws JMSException
{
send((Destination)queue, message, deliveryMode, priority, timeToLive);
}
-
+
public Queue getQueue() throws JMSException
{
return (Queue)getDestination();
}
-
+
// Public --------------------------------------------------------
public String toString()
@@ -319,11 +313,11 @@
}
// Package protected ---------------------------------------------
-
+
// Protected -----------------------------------------------------
-
+
// Private -------------------------------------------------------
-
+
private void doSend(Message message, long timeToLive, JBossDestination destination) throws JMSException
{
if (timeToLive == 0)
@@ -334,7 +328,7 @@
{
message.setJMSExpiration(System.currentTimeMillis() + timeToLive);
}
-
+
if (!disableMessageTimestamp)
{
message.setJMSTimestamp(System.currentTimeMillis());
@@ -343,34 +337,33 @@
{
message.setJMSTimestamp(0);
}
-
+
SimpleString address = null;
-
+
if (destination == null)
{
- if (defaultDestination == null)
- {
- throw new InvalidDestinationException("Destination must be specified on send with an anonymous producer");
- }
-
- destination = defaultDestination;
+ if (defaultDestination == null)
+ {
+ throw new InvalidDestinationException("Destination must be specified on send with an anonymous producer");
+ }
+
+ destination = defaultDestination;
}
else
{
- if (defaultDestination != null)
- {
- if (!destination.equals(defaultDestination))
- {
- throw new JMSException("Where a default destination is specified " +
- "for the sender and a destination is " +
- "specified in the arguments to the send, " +
- "these destinations must be equal");
- }
- }
-
- address = destination.getSimpleAddress();
+ if (defaultDestination != null)
+ {
+ if (!destination.equals(defaultDestination))
+ {
+ throw new JMSException("Where a default destination is specified " + "for the sender and a destination is "
+ + "specified in the arguments to the send, "
+ + "these destinations must be equal");
+ }
+ }
+
+ address = destination.getSimpleAddress();
}
-
+
JBossMessage jbm;
boolean foreign = false;
@@ -383,7 +376,7 @@
if (message instanceof BytesMessage)
{
- jbm = new JBossBytesMessage((BytesMessage)message, clientSession );
+ jbm = new JBossBytesMessage((BytesMessage)message, clientSession);
}
else if (message instanceof MapMessage)
{
@@ -436,9 +429,9 @@
catch (Exception e)
{
JMSException je = new JMSException(e.getMessage());
-
+
je.initCause(e);
-
+
throw je;
}
@@ -450,15 +443,15 @@
}
try
- {
- producer.send(address, coreMessage);
+ {
+ producer.send(address, coreMessage);
}
catch (MessagingException e)
{
- throw JMSExceptionHelper.convertFromMessagingException(e);
- }
+ throw JMSExceptionHelper.convertFromMessagingException(e);
+ }
}
-
+
private void checkClosed() throws JMSException
{
if (producer.isClosed())
@@ -466,6 +459,6 @@
throw new IllegalStateException("Producer is closed");
}
}
-
+
// Inner classes -------------------------------------------------
}
Modified: trunk/src/main/org/jboss/messaging/util/UUID.java
===================================================================
--- trunk/src/main/org/jboss/messaging/util/UUID.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/util/UUID.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -40,7 +40,7 @@
* bytes).
*/
-public class UUID
+public final class UUID
{
private final static String kHexChars = "0123456789abcdefABCDEF";
@@ -101,6 +101,11 @@
mId[INDEX_VARIATION] &= (byte) 0x3F;
mId[INDEX_VARIATION] |= (byte) 0x80;
}
+
+ public final byte[] asBytes()
+ {
+ return mId;
+ }
/**
* Could use just the default hash code, but we can probably create a better
@@ -116,7 +121,7 @@
*/
private final static int[] kShifts = { 3, 7, 17, 21, 29, 4, 9 };
- public int hashCode()
+ public final int hashCode()
{
if (mHashCode == 0)
{
@@ -158,7 +163,7 @@
return mHashCode;
}
- public String toString()
+ public final String toString()
{
/*
* Could be synchronized, but there isn't much harm in just taking our
@@ -197,7 +202,7 @@
/**
* Checking equality of UUIDs is easy; just compare the 128-bit number.
*/
- public boolean equals(Object o)
+ public final boolean equals(Object o)
{
if (!(o instanceof UUID))
{
Modified: trunk/src/main/org/jboss/messaging/util/UUIDGenerator.java
===================================================================
--- trunk/src/main/org/jboss/messaging/util/UUIDGenerator.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/src/main/org/jboss/messaging/util/UUIDGenerator.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -59,7 +59,7 @@
* care of it); it might even be good for getting really 'random' stuff to
* get shared access...
*/
- public Random getRandomNumberGenerator()
+ public final Random getRandomNumberGenerator()
{
/*
* Could be synchronized, but since side effects are trivial (ie.
@@ -73,7 +73,7 @@
return mRnd;
}
- public UUID generateTimeBasedUUID(InetAddress addr)
+ public final UUID generateTimeBasedUUID(InetAddress addr)
{
byte[] contents = new byte[16];
byte[] byteAddr = addr.getAddress();
@@ -96,17 +96,29 @@
return new UUID(UUID.TYPE_TIME_BASED, contents);
}
- public SimpleString generateSimpleStringUUID()
+ private InetAddress address;
+
+ private final InetAddress getAddress()
{
- InetAddress localHost = null;
-
- try
+ if (address == null)
{
- localHost = InetAddress.getLocalHost();
+ address = null;
+
+ try
+ {
+ address = InetAddress.getLocalHost();
+ }
+ catch (UnknownHostException e)
+ {
+ }
}
- catch (UnknownHostException e)
- {
- }
+ return address;
+ }
+
+ public final SimpleString generateSimpleStringUUID()
+ {
+ InetAddress localHost = getAddress();
+
SimpleString uid;
if (localHost == null)
{
@@ -121,17 +133,29 @@
return uid;
}
- public String generateStringUUID()
+ public final SimpleString generateSimpleStringUUID2()
{
- InetAddress localHost = null;
+ UUID uuid = generateUUID();
- try
- {
- localHost = InetAddress.getLocalHost();
- }
- catch (UnknownHostException e)
- {
- }
+ SimpleString str = new SimpleString(uuid.asBytes());
+
+ return str;
+ }
+
+ public final UUID generateUUID()
+ {
+ InetAddress localHost = getAddress();
+
+ UUIDGenerator gen = UUIDGenerator.getInstance();
+ UUID uid = gen.generateTimeBasedUUID(localHost);
+
+ return uid;
+ }
+
+ public final String generateStringUUID()
+ {
+ InetAddress localHost = getAddress();
+
String uid;
if (localHost == null)
{
Added: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/BridgeReconnectTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/BridgeReconnectTest.java (rev 0)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/BridgeReconnectTest.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -0,0 +1,721 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005-2009, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.jboss.messaging.tests.integration.cluster.bridge;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.jboss.messaging.core.client.ClientConsumer;
+import org.jboss.messaging.core.client.ClientMessage;
+import org.jboss.messaging.core.client.ClientProducer;
+import org.jboss.messaging.core.client.ClientSession;
+import org.jboss.messaging.core.client.ClientSessionFactory;
+import org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl;
+import org.jboss.messaging.core.config.TransportConfiguration;
+import org.jboss.messaging.core.config.cluster.BridgeConfiguration;
+import org.jboss.messaging.core.config.cluster.QueueConfiguration;
+import org.jboss.messaging.core.exception.MessagingException;
+import org.jboss.messaging.core.logging.Logger;
+import org.jboss.messaging.core.remoting.RemotingConnection;
+import org.jboss.messaging.core.remoting.impl.invm.InVMConnector;
+import org.jboss.messaging.core.server.MessagingService;
+import org.jboss.messaging.core.server.cluster.Bridge;
+import org.jboss.messaging.core.server.cluster.impl.BridgeImpl;
+import org.jboss.messaging.util.Pair;
+import org.jboss.messaging.util.SimpleString;
+
+/**
+ * A BridgeReconnectTest
+ *
+ * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
+ *
+ * Created 20 Jan 2009 19:20:41
+ *
+ *
+ */
+public class BridgeReconnectTest extends BridgeTestBase
+{
+ private static final Logger log = Logger.getLogger(BridgeReconnectTest.class);
+
+ public void testAutomaticReconnectBeforeFailover() throws Exception
+ {
+ Map<String, Object> service0Params = new HashMap<String, Object>();
+ MessagingService service0 = createMessagingService(0, service0Params);
+
+ Map<String, Object> service1Params = new HashMap<String, Object>();
+ MessagingService service1 = createMessagingService(1, service1Params);
+
+ Map<String, Object> service2Params = new HashMap<String, Object>();
+ MessagingService service2 = createMessagingService(2, service2Params, true);
+
+ TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service0Params,
+ "server0tc");
+
+ Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
+
+ TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service1Params,
+ "server1tc");
+
+ TransportConfiguration server2tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service2Params,
+ "server2tc");
+
+ connectors.put(server1tc.getName(), server1tc);
+
+ connectors.put(server2tc.getName(), server2tc);
+
+ service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
+
+ service1.getServer().getConfiguration().setConnectorConfigurations(connectors);
+
+ service1.getServer().getConfiguration().setBackupConnectorName(server2tc.getName());
+
+ final String bridgeName = "bridge1";
+ final String testAddress = "testAddress";
+ final String queueName0 = "queue0";
+ final String forwardAddress = "forwardAddress";
+
+ final long retryInterval = 50;
+ final double retryIntervalMultiplier = 1d;
+ final int retriesBeforeFailover = 3;
+ final int maxRetriesAfterFailover = -1;
+
+ Pair<String, String> connectorPair = new Pair<String, String>(server1tc.getName(), server2tc.getName());
+
+ BridgeConfiguration bridgeConfiguration = new BridgeConfiguration(bridgeName,
+ queueName0,
+ forwardAddress,
+ null,
+ 1,
+ -1,
+ null,
+ retryInterval,
+ retryIntervalMultiplier,
+ retriesBeforeFailover,
+ maxRetriesAfterFailover,
+ false,
+ connectorPair);
+
+ List<BridgeConfiguration> bridgeConfigs = new ArrayList<BridgeConfiguration>();
+ bridgeConfigs.add(bridgeConfiguration);
+ service0.getServer().getConfiguration().setBridgeConfigurations(bridgeConfigs);
+
+ QueueConfiguration queueConfig0 = new QueueConfiguration(testAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs0 = new ArrayList<QueueConfiguration>();
+ queueConfigs0.add(queueConfig0);
+ service0.getServer().getConfiguration().setQueueConfigurations(queueConfigs0);
+
+ QueueConfiguration queueConfig1 = new QueueConfiguration(forwardAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs1 = new ArrayList<QueueConfiguration>();
+ queueConfigs1.add(queueConfig1);
+ service1.getServer().getConfiguration().setQueueConfigurations(queueConfigs1);
+ service2.getServer().getConfiguration().setQueueConfigurations(queueConfigs1);
+
+ service2.start();
+ service1.start();
+ service0.start();
+
+ ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
+ ClientSession session0 = csf0.createSession(false, true, true);
+
+ ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
+ ClientSession session1 = csf1.createSession(false, true, true);
+
+ ClientProducer prod0 = session0.createProducer(testAddress);
+
+ ClientConsumer cons1 = session1.createConsumer(queueName0);
+
+ session1.start();
+
+ log.info("Simulating failure");
+
+ // Now we will simulate a failure of the message flow connection between server1 and server2
+ // And prevent reconnection for a few tries, then it will reconnect without failing over
+ Bridge bridge = service0.getServer().getClusterManager().getBridges().get(bridgeName);
+ RemotingConnection forwardingConnection = ((BridgeImpl)bridge).getForwardingConnection();
+ InVMConnector.failOnCreateConnection = true;
+ InVMConnector.numberOfFailures = retriesBeforeFailover - 1;
+ forwardingConnection.fail(new MessagingException(MessagingException.NOT_CONNECTED));
+
+ final int numMessages = 10;
+
+ SimpleString propKey = new SimpleString("propkey");
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage message = session0.createClientMessage(false);
+ message.putIntProperty(propKey, i);
+ message.getBody().flip();
+
+ prod0.send(message);
+ }
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage r1 = cons1.receive(500);
+ assertNotNull(r1);
+ assertEquals(i, r1.getProperty(propKey));
+ }
+
+ session0.close();
+ session1.close();
+
+ service0.stop();
+ service1.stop();
+ service2.stop();
+
+ assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
+ assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
+ assertEquals(0, service2.getServer().getRemotingService().getConnections().size());
+ }
+
+ public void testAutomaticReconnectTryThenFailover() throws Exception
+ {
+ Map<String, Object> service0Params = new HashMap<String, Object>();
+ MessagingService service0 = createMessagingService(0, service0Params);
+
+ Map<String, Object> service1Params = new HashMap<String, Object>();
+ MessagingService service1 = createMessagingService(1, service1Params);
+
+ Map<String, Object> service2Params = new HashMap<String, Object>();
+ MessagingService service2 = createMessagingService(2, service2Params, true);
+
+ TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service0Params,
+ "server0tc");
+
+ Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
+
+ TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service1Params,
+ "server1tc");
+
+ TransportConfiguration server2tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service2Params,
+ "server2tc");
+
+ connectors.put(server1tc.getName(), server1tc);
+
+ connectors.put(server2tc.getName(), server2tc);
+
+ service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
+ service1.getServer().getConfiguration().setConnectorConfigurations(connectors);
+
+ service1.getServer().getConfiguration().setBackupConnectorName(server2tc.getName());
+
+ final String bridgeName = "bridge1";
+ final String testAddress = "testAddress";
+ final String queueName0 = "queue0";
+ final String forwardAddress = "forwardAddress";
+
+ final long retryInterval = 50;
+ final double retryIntervalMultiplier = 1d;
+ final int retriesBeforeFailover = 3;
+ final int maxRetriesAfterFailover = -1;
+
+ Pair<String, String> connectorPair = new Pair<String, String>(server1tc.getName(), server2tc.getName());
+
+ BridgeConfiguration bridgeConfiguration = new BridgeConfiguration(bridgeName,
+ queueName0,
+ forwardAddress,
+ null,
+ 1,
+ -1,
+ null,
+ retryInterval,
+ retryIntervalMultiplier,
+ retriesBeforeFailover,
+ maxRetriesAfterFailover,
+ false,
+ connectorPair);
+
+ List<BridgeConfiguration> bridgeConfigs = new ArrayList<BridgeConfiguration>();
+ bridgeConfigs.add(bridgeConfiguration);
+ service0.getServer().getConfiguration().setBridgeConfigurations(bridgeConfigs);
+
+ QueueConfiguration queueConfig0 = new QueueConfiguration(testAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs0 = new ArrayList<QueueConfiguration>();
+ queueConfigs0.add(queueConfig0);
+ service0.getServer().getConfiguration().setQueueConfigurations(queueConfigs0);
+
+ QueueConfiguration queueConfig1 = new QueueConfiguration(forwardAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs1 = new ArrayList<QueueConfiguration>();
+ queueConfigs1.add(queueConfig1);
+ service1.getServer().getConfiguration().setQueueConfigurations(queueConfigs1);
+ service2.getServer().getConfiguration().setQueueConfigurations(queueConfigs1);
+
+ service2.start();
+ service1.start();
+ service0.start();
+
+ ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
+ ClientSession session0 = csf0.createSession(false, true, true);
+
+ ClientSessionFactory csf2 = new ClientSessionFactoryImpl(server2tc);
+ ClientSession session2 = csf2.createSession(false, true, true);
+
+ ClientProducer prod0 = session0.createProducer(testAddress);
+
+ ClientConsumer cons2 = session2.createConsumer(queueName0);
+
+ session2.start();
+
+ log.info("Simulating failure");
+
+ // Now we will simulate a failure of the message flow connection between server1 and server2
+ // And prevent reconnection for a few tries, then it will reconnect without failing over
+ Bridge bridge = service0.getServer().getClusterManager().getBridges().get(bridgeName);
+ RemotingConnection forwardingConnection = ((BridgeImpl)bridge).getForwardingConnection();
+ InVMConnector.failOnCreateConnection = true;
+ InVMConnector.numberOfFailures = retriesBeforeFailover;
+ forwardingConnection.fail(new MessagingException(MessagingException.NOT_CONNECTED));
+
+ final int numMessages = 10;
+
+ SimpleString propKey = new SimpleString("propkey");
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage message = session0.createClientMessage(false);
+ message.putIntProperty(propKey, i);
+ message.getBody().flip();
+
+ prod0.send(message);
+ }
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage r1 = cons2.receive(1500);
+ assertNotNull(r1);
+ assertEquals(i, r1.getProperty(propKey));
+ }
+
+ session0.close();
+ session2.close();
+
+ service0.stop();
+ service1.stop();
+ service2.stop();
+
+ assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
+ assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
+ assertEquals(0, service2.getServer().getRemotingService().getConnections().size());
+ }
+
+ public void testFailoverThenReconnectAfterFailover() throws Exception
+ {
+ Map<String, Object> service0Params = new HashMap<String, Object>();
+ MessagingService service0 = createMessagingService(0, service0Params);
+
+ Map<String, Object> service1Params = new HashMap<String, Object>();
+ MessagingService service1 = createMessagingService(1, service1Params);
+
+ Map<String, Object> service2Params = new HashMap<String, Object>();
+ MessagingService service2 = createMessagingService(2, service2Params, true);
+
+ TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service0Params,
+ "server0tc");
+
+ Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
+
+ TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service1Params,
+ "server1tc");
+
+ TransportConfiguration server2tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service2Params,
+ "server2tc");
+
+ connectors.put(server1tc.getName(), server1tc);
+
+ connectors.put(server2tc.getName(), server2tc);
+
+ service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
+ service1.getServer().getConfiguration().setConnectorConfigurations(connectors);
+
+ service1.getServer().getConfiguration().setBackupConnectorName(server2tc.getName());
+
+ final String bridgeName = "bridge1";
+ final String testAddress = "testAddress";
+ final String queueName0 = "queue0";
+ final String forwardAddress = "forwardAddress";
+
+ final long retryInterval = 50;
+ final double retryIntervalMultiplier = 1d;
+ final int retriesBeforeFailover = 3;
+ final int maxRetriesAfterFailover = 3;
+
+ Pair<String, String> connectorPair = new Pair<String, String>(server1tc.getName(), server2tc.getName());
+
+ BridgeConfiguration bridgeConfiguration = new BridgeConfiguration(bridgeName,
+ queueName0,
+ forwardAddress,
+ null,
+ 1,
+ -1,
+ null,
+ retryInterval,
+ retryIntervalMultiplier,
+ retriesBeforeFailover,
+ maxRetriesAfterFailover,
+ false,
+ connectorPair);
+
+ List<BridgeConfiguration> bridgeConfigs = new ArrayList<BridgeConfiguration>();
+ bridgeConfigs.add(bridgeConfiguration);
+ service0.getServer().getConfiguration().setBridgeConfigurations(bridgeConfigs);
+
+ QueueConfiguration queueConfig0 = new QueueConfiguration(testAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs0 = new ArrayList<QueueConfiguration>();
+ queueConfigs0.add(queueConfig0);
+ service0.getServer().getConfiguration().setQueueConfigurations(queueConfigs0);
+
+ QueueConfiguration queueConfig1 = new QueueConfiguration(forwardAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs1 = new ArrayList<QueueConfiguration>();
+ queueConfigs1.add(queueConfig1);
+ service1.getServer().getConfiguration().setQueueConfigurations(queueConfigs1);
+ service2.getServer().getConfiguration().setQueueConfigurations(queueConfigs1);
+
+ service2.start();
+ service1.start();
+ service0.start();
+
+ ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
+ ClientSession session0 = csf0.createSession(false, true, true);
+
+ ClientSessionFactory csf2 = new ClientSessionFactoryImpl(server2tc);
+ ClientSession session2 = csf2.createSession(false, true, true);
+
+ ClientProducer prod0 = session0.createProducer(testAddress);
+
+ ClientConsumer cons2 = session2.createConsumer(queueName0);
+
+ session2.start();
+
+ log.info("Simulating failure");
+
+ // Now we will simulate a failure of the message flow connection between server1 and server2
+ // And prevent reconnection for a few tries, then it will reconnect without failing over
+ Bridge bridge = service0.getServer().getClusterManager().getBridges().get(bridgeName);
+ RemotingConnection forwardingConnection = ((BridgeImpl)bridge).getForwardingConnection();
+ InVMConnector.failOnCreateConnection = true;
+ InVMConnector.numberOfFailures = retriesBeforeFailover;
+ forwardingConnection.fail(new MessagingException(MessagingException.NOT_CONNECTED));
+
+ // Now we should be failed over so fail again and should reconnect
+ forwardingConnection = ((BridgeImpl)bridge).getForwardingConnection();
+ InVMConnector.resetFailures();
+ InVMConnector.failOnCreateConnection = true;
+ InVMConnector.numberOfFailures = retriesBeforeFailover - 1;
+ forwardingConnection.fail(new MessagingException(MessagingException.NOT_CONNECTED));
+
+ final int numMessages = 10;
+
+ SimpleString propKey = new SimpleString("propkey");
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage message = session0.createClientMessage(false);
+ message.putIntProperty(propKey, i);
+ message.getBody().flip();
+
+ prod0.send(message);
+ }
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage r1 = cons2.receive(1500);
+ assertNotNull(r1);
+ assertEquals(i, r1.getProperty(propKey));
+ }
+
+ session0.close();
+ session2.close();
+
+ service0.stop();
+ service1.stop();
+ service2.stop();
+
+ assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
+ assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
+ assertEquals(0, service2.getServer().getRemotingService().getConnections().size());
+ }
+
+ public void testAutomaticReconnectSingleServer() throws Exception
+ {
+ Map<String, Object> service0Params = new HashMap<String, Object>();
+ MessagingService service0 = createMessagingService(0, service0Params);
+
+ Map<String, Object> service1Params = new HashMap<String, Object>();
+ MessagingService service1 = createMessagingService(1, service1Params);
+
+ TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service0Params,
+ "server0tc");
+
+ Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
+
+ TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service1Params,
+ "server1tc");
+
+ connectors.put(server1tc.getName(), server1tc);
+
+ service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
+
+ final String bridgeName = "bridge1";
+ final String testAddress = "testAddress";
+ final String queueName0 = "queue0";
+ final String forwardAddress = "forwardAddress";
+
+ final long retryInterval = 50;
+ final double retryIntervalMultiplier = 1d;
+ final int retriesBeforeFailover = 3;
+ final int maxRetriesAfterFailover = -1;
+
+ Pair<String, String> connectorPair = new Pair<String, String>(server1tc.getName(), null);
+
+ BridgeConfiguration bridgeConfiguration = new BridgeConfiguration(bridgeName,
+ queueName0,
+ forwardAddress,
+ null,
+ 1,
+ -1,
+ null,
+ retryInterval,
+ retryIntervalMultiplier,
+ retriesBeforeFailover,
+ maxRetriesAfterFailover,
+ false,
+ connectorPair);
+
+ List<BridgeConfiguration> bridgeConfigs = new ArrayList<BridgeConfiguration>();
+ bridgeConfigs.add(bridgeConfiguration);
+ service0.getServer().getConfiguration().setBridgeConfigurations(bridgeConfigs);
+
+ QueueConfiguration queueConfig0 = new QueueConfiguration(testAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs0 = new ArrayList<QueueConfiguration>();
+ queueConfigs0.add(queueConfig0);
+ service0.getServer().getConfiguration().setQueueConfigurations(queueConfigs0);
+
+ QueueConfiguration queueConfig1 = new QueueConfiguration(forwardAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs1 = new ArrayList<QueueConfiguration>();
+ queueConfigs1.add(queueConfig1);
+ service1.getServer().getConfiguration().setQueueConfigurations(queueConfigs1);
+
+ service1.start();
+ service0.start();
+
+ ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
+ ClientSession session0 = csf0.createSession(false, true, true);
+
+ ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
+ ClientSession session1 = csf1.createSession(false, true, true);
+
+ ClientProducer prod0 = session0.createProducer(testAddress);
+
+ ClientConsumer cons1 = session1.createConsumer(queueName0);
+
+ session1.start();
+
+ log.info("Simulating failure");
+
+ // Now we will simulate a failure of the message flow connection between server1 and server2
+ // And prevent reconnection for a few tries, then it will reconnect without failing over
+ Bridge bridge = service0.getServer().getClusterManager().getBridges().get(bridgeName);
+ RemotingConnection forwardingConnection = ((BridgeImpl)bridge).getForwardingConnection();
+ InVMConnector.failOnCreateConnection = true;
+ InVMConnector.numberOfFailures = retriesBeforeFailover - 1;
+ forwardingConnection.fail(new MessagingException(MessagingException.NOT_CONNECTED));
+
+ final int numMessages = 10;
+
+ SimpleString propKey = new SimpleString("propkey");
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage message = session0.createClientMessage(false);
+ message.putIntProperty(propKey, i);
+ message.getBody().flip();
+
+ prod0.send(message);
+ }
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage r1 = cons1.receive(1500);
+ assertNotNull(r1);
+ assertEquals(i, r1.getProperty(propKey));
+ }
+
+ session0.close();
+
+ service0.stop();
+ service1.stop();
+
+ assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
+ assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
+ }
+
+ public void testNonAutomaticReconnectSingleServer() throws Exception
+ {
+ Map<String, Object> service0Params = new HashMap<String, Object>();
+ MessagingService service0 = createMessagingService(0, service0Params);
+
+ Map<String, Object> service1Params = new HashMap<String, Object>();
+ MessagingService service1 = createMessagingService(1, service1Params);
+
+ TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service0Params,
+ "server0tc");
+
+ Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
+
+ TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service1Params,
+ "server1tc");
+
+ connectors.put(server1tc.getName(), server1tc);
+
+ service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
+
+ final String bridgeName = "bridge1";
+ final String testAddress = "testAddress";
+ final String queueName0 = "queue0";
+ final String forwardAddress = "forwardAddress";
+
+ final long retryInterval = 50;
+ final double retryIntervalMultiplier = 1d;
+ final int retriesBeforeFailover = 3;
+ final int maxRetriesAfterFailover = -1;
+
+ Pair<String, String> connectorPair = new Pair<String, String>(server1tc.getName(), null);
+
+ BridgeConfiguration bridgeConfiguration = new BridgeConfiguration(bridgeName,
+ queueName0,
+ forwardAddress,
+ null,
+ 1,
+ -1,
+ null,
+ retryInterval,
+ retryIntervalMultiplier,
+ retriesBeforeFailover,
+ maxRetriesAfterFailover,
+ false,
+ connectorPair);
+
+ List<BridgeConfiguration> bridgeConfigs = new ArrayList<BridgeConfiguration>();
+ bridgeConfigs.add(bridgeConfiguration);
+ service0.getServer().getConfiguration().setBridgeConfigurations(bridgeConfigs);
+
+ QueueConfiguration queueConfig0 = new QueueConfiguration(testAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs0 = new ArrayList<QueueConfiguration>();
+ queueConfigs0.add(queueConfig0);
+ service0.getServer().getConfiguration().setQueueConfigurations(queueConfigs0);
+
+ QueueConfiguration queueConfig1 = new QueueConfiguration(forwardAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs1 = new ArrayList<QueueConfiguration>();
+ queueConfigs1.add(queueConfig1);
+ service1.getServer().getConfiguration().setQueueConfigurations(queueConfigs1);
+
+ service1.start();
+ service0.start();
+
+ ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
+ ClientSession session0 = csf0.createSession(false, true, true);
+
+ ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
+ ClientSession session1 = csf1.createSession(false, true, true);
+
+ ClientProducer prod0 = session0.createProducer(testAddress);
+
+ ClientConsumer cons1 = session1.createConsumer(queueName0);
+
+ session1.start();
+
+ log.info("Simulating failure");
+
+ // Now we will simulate a failure of the message flow connection between server1 and server2
+ // And prevent reconnection for a few tries, then it will reconnect without failing over
+ Bridge bridge = service0.getServer().getClusterManager().getBridges().get(bridgeName);
+ RemotingConnection forwardingConnection = ((BridgeImpl)bridge).getForwardingConnection();
+ InVMConnector.failOnCreateConnection = true;
+ InVMConnector.numberOfFailures = retriesBeforeFailover * 2;
+ forwardingConnection.fail(new MessagingException(MessagingException.NOT_CONNECTED));
+
+ final int numMessages = 10;
+
+ SimpleString propKey = new SimpleString("propkey");
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage message = session0.createClientMessage(false);
+ message.putIntProperty(propKey, i);
+ message.getBody().flip();
+
+ prod0.send(message);
+ }
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage r1 = cons1.receive(1500);
+ assertNotNull(r1);
+ assertEquals(i, r1.getProperty(propKey));
+ }
+
+ forwardingConnection = ((BridgeImpl)bridge).getForwardingConnection();
+ InVMConnector.failOnCreateConnection = true;
+ InVMConnector.numberOfFailures = retriesBeforeFailover * 2;
+ forwardingConnection.fail(new MessagingException(MessagingException.NOT_CONNECTED));
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage message = session0.createClientMessage(false);
+ message.putIntProperty(propKey, i);
+ message.getBody().flip();
+
+ prod0.send(message);
+ }
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage r1 = cons1.receive(1500);
+ assertNotNull(r1);
+ assertEquals(i, r1.getProperty(propKey));
+ }
+
+ session0.close();
+
+ service0.stop();
+ service1.stop();
+
+ assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
+ assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
+ }
+}
Added: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/BridgeTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/BridgeTest.java (rev 0)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/BridgeTest.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -0,0 +1,655 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005-2009, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.jboss.messaging.tests.integration.cluster.bridge;
+
+import static org.jboss.messaging.core.remoting.impl.invm.TransportConstants.SERVER_ID_PROP_NAME;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.jboss.messaging.core.client.ClientConsumer;
+import org.jboss.messaging.core.client.ClientMessage;
+import org.jboss.messaging.core.client.ClientProducer;
+import org.jboss.messaging.core.client.ClientSession;
+import org.jboss.messaging.core.client.ClientSessionFactory;
+import org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl;
+import org.jboss.messaging.core.config.TransportConfiguration;
+import org.jboss.messaging.core.config.cluster.BridgeConfiguration;
+import org.jboss.messaging.core.config.cluster.QueueConfiguration;
+import org.jboss.messaging.core.logging.Logger;
+import org.jboss.messaging.core.server.MessagingService;
+import org.jboss.messaging.tests.util.ServiceTestBase;
+import org.jboss.messaging.util.Pair;
+import org.jboss.messaging.util.SimpleString;
+
+/**
+ * A BridgeTest
+ *
+ * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
+ *
+ * Created 14 Jan 2009 14:05:01
+ *
+ *
+ */
+public class BridgeTest extends ServiceTestBase
+{
+ private static final Logger log = Logger.getLogger(BridgeTest.class);
+
+ public void testSimpleBridge() throws Exception
+ {
+ Map<String, Object> service0Params = new HashMap<String, Object>();
+ MessagingService service0 = createClusteredServiceWithParams(0, false, service0Params);
+
+ Map<String, Object> service1Params = new HashMap<String, Object>();
+ service1Params.put(SERVER_ID_PROP_NAME, 1);
+ MessagingService service1 = createClusteredServiceWithParams(1, false, service1Params);
+
+ final String testAddress = "testAddress";
+ final String queueName0 = "queue0";
+ final String forwardAddress = "forwardAddress";
+ final String queueName1 = "queue1";
+
+ Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
+ TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service0Params);
+ TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service1Params);
+ connectors.put(server1tc.getName(), server1tc);
+
+ service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
+
+ Pair<String, String> connectorPair = new Pair<String, String>(server1tc.getName(), null);
+
+ BridgeConfiguration bridgeConfiguration = new BridgeConfiguration("bridge1",
+ queueName0,
+ forwardAddress,
+ null,
+ 1,
+ -1,
+ null,
+ 1000,
+ 1d,
+ 0,
+ 0,
+ false,
+ connectorPair);
+
+ List<BridgeConfiguration> bridgeConfigs = new ArrayList<BridgeConfiguration>();
+ bridgeConfigs.add(bridgeConfiguration);
+ service0.getServer().getConfiguration().setBridgeConfigurations(bridgeConfigs);
+
+ QueueConfiguration queueConfig0 = new QueueConfiguration(testAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs0 = new ArrayList<QueueConfiguration>();
+ queueConfigs0.add(queueConfig0);
+ service0.getServer().getConfiguration().setQueueConfigurations(queueConfigs0);
+
+ QueueConfiguration queueConfig1 = new QueueConfiguration(forwardAddress, queueName1, null, true);
+ List<QueueConfiguration> queueConfigs1 = new ArrayList<QueueConfiguration>();
+ queueConfigs1.add(queueConfig1);
+ service1.getServer().getConfiguration().setQueueConfigurations(queueConfigs1);
+
+ service1.start();
+ service0.start();
+
+ ClientSessionFactory sf0 = new ClientSessionFactoryImpl(server0tc);
+
+ ClientSessionFactory sf1 = new ClientSessionFactoryImpl(server1tc);
+
+ ClientSession session0 = sf0.createSession(false, true, true);
+
+ ClientSession session1 = sf1.createSession(false, true, true);
+
+ ClientProducer producer0 = session0.createProducer(new SimpleString(testAddress));
+
+ ClientConsumer consumer1 = session1.createConsumer(queueName1);
+
+ session1.start();
+
+ final int numMessages = 10;
+
+ final SimpleString propKey = new SimpleString("testkey");
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage message = session0.createClientMessage(false);
+
+ message.putIntProperty(propKey, i);
+
+ producer0.send(message);
+ }
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage message = consumer1.receive(200);
+
+ assertNotNull(message);
+
+ assertEquals((Integer)i, (Integer)message.getProperty(propKey));
+
+ message.acknowledge();
+ }
+
+ assertNull(consumer1.receive(200));
+
+ session0.close();
+
+ session1.close();
+
+ sf0.close();
+
+ sf1.close();
+
+ service0.stop();
+
+ service1.stop();
+ }
+
+ public void testBatchSize() throws Exception
+ {
+ Map<String, Object> service0Params = new HashMap<String, Object>();
+ MessagingService service0 = createClusteredServiceWithParams(0, false, service0Params);
+
+ Map<String, Object> service1Params = new HashMap<String, Object>();
+ service1Params.put(SERVER_ID_PROP_NAME, 1);
+ MessagingService service1 = createClusteredServiceWithParams(1, false, service1Params);
+
+ final String testAddress = "testAddress";
+ final String queueName0 = "queue0";
+ final String forwardAddress = "forwardAddress";
+ final String queueName1 = "queue1";
+
+ Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
+ TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service0Params);
+ TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service1Params);
+ connectors.put(server1tc.getName(), server1tc);
+
+ service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
+
+ Pair<String, String> connectorPair = new Pair<String, String>(server1tc.getName(), null);
+
+ final int batchSize = 10;
+
+ BridgeConfiguration bridgeConfiguration = new BridgeConfiguration("bridge1",
+ queueName0,
+ forwardAddress,
+ null,
+ batchSize,
+ -1,
+ null,
+ 1000,
+ 1d,
+ 0,
+ 0,
+ false,
+ connectorPair);
+
+ List<BridgeConfiguration> bridgeConfigs = new ArrayList<BridgeConfiguration>();
+ bridgeConfigs.add(bridgeConfiguration);
+ service0.getServer().getConfiguration().setBridgeConfigurations(bridgeConfigs);
+
+ QueueConfiguration queueConfig0 = new QueueConfiguration(testAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs0 = new ArrayList<QueueConfiguration>();
+ queueConfigs0.add(queueConfig0);
+ service0.getServer().getConfiguration().setQueueConfigurations(queueConfigs0);
+
+ QueueConfiguration queueConfig1 = new QueueConfiguration(forwardAddress, queueName1, null, true);
+ List<QueueConfiguration> queueConfigs1 = new ArrayList<QueueConfiguration>();
+ queueConfigs1.add(queueConfig1);
+ service1.getServer().getConfiguration().setQueueConfigurations(queueConfigs1);
+
+ service1.start();
+ service0.start();
+
+ ClientSessionFactory sf0 = new ClientSessionFactoryImpl(server0tc);
+
+ ClientSessionFactory sf1 = new ClientSessionFactoryImpl(server1tc);
+
+ ClientSession session0 = sf0.createSession(false, true, true);
+
+ ClientSession session1 = sf1.createSession(false, true, true);
+
+ ClientProducer producer0 = session0.createProducer(new SimpleString(testAddress));
+
+ ClientConsumer consumer1 = session1.createConsumer(queueName1);
+
+ session1.start();
+
+ final SimpleString propKey = new SimpleString("testkey");
+
+ for (int j = 0; j < 10; j++)
+ {
+ for (int i = 0; i < batchSize - 1; i++)
+ {
+ ClientMessage message = session0.createClientMessage(false);
+ message.putIntProperty(propKey, i);
+ message.getBody().flip();
+
+ producer0.send(message);
+ }
+
+ ClientMessage message = consumer1.receive(250);
+
+ assertNull(message);
+
+ message = session0.createClientMessage(false);
+ message.putIntProperty(propKey, batchSize - 1);
+ message.getBody().flip();
+
+ producer0.send(message);
+
+ for (int i = 0; i < batchSize; i++)
+ {
+ message = consumer1.receive(250);
+
+ assertNotNull(message);
+
+ assertEquals(i, message.getProperty(propKey));
+ }
+
+ message = consumer1.receive(250);
+
+ assertNull(message);
+ }
+
+ session0.close();
+
+ session1.close();
+
+ sf0.close();
+
+ sf1.close();
+
+ service0.stop();
+
+ service1.stop();
+ }
+
+ public void testBatchTime() throws Exception
+ {
+ Map<String, Object> service0Params = new HashMap<String, Object>();
+ MessagingService service0 = createClusteredServiceWithParams(0, false, service0Params);
+
+ Map<String, Object> service1Params = new HashMap<String, Object>();
+ service1Params.put(SERVER_ID_PROP_NAME, 1);
+ MessagingService service1 = createClusteredServiceWithParams(1, false, service1Params);
+
+ final String testAddress = "testAddress";
+ final String queueName0 = "queue0";
+ final String forwardAddress = "forwardAddress";
+ final String queueName1 = "queue1";
+
+ Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
+ TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service0Params);
+ TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service1Params);
+ connectors.put(server1tc.getName(), server1tc);
+
+ service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
+
+ Pair<String, String> connectorPair = new Pair<String, String>(server1tc.getName(), null);
+
+ final int batchSize = 10;
+ final long batchTime = 250;
+
+ BridgeConfiguration bridgeConfiguration = new BridgeConfiguration("bridge1",
+ queueName0,
+ forwardAddress,
+ null,
+ batchSize,
+ batchTime,
+ null,
+ 1000,
+ 1d,
+ 0,
+ 0,
+ false,
+ connectorPair);
+
+ List<BridgeConfiguration> bridgeConfigs = new ArrayList<BridgeConfiguration>();
+ bridgeConfigs.add(bridgeConfiguration);
+ service0.getServer().getConfiguration().setBridgeConfigurations(bridgeConfigs);
+
+ QueueConfiguration queueConfig0 = new QueueConfiguration(testAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs0 = new ArrayList<QueueConfiguration>();
+ queueConfigs0.add(queueConfig0);
+ service0.getServer().getConfiguration().setQueueConfigurations(queueConfigs0);
+
+ QueueConfiguration queueConfig1 = new QueueConfiguration(forwardAddress, queueName1, null, true);
+ List<QueueConfiguration> queueConfigs1 = new ArrayList<QueueConfiguration>();
+ queueConfigs1.add(queueConfig1);
+ service1.getServer().getConfiguration().setQueueConfigurations(queueConfigs1);
+
+ service1.start();
+ service0.start();
+
+ ClientSessionFactory sf0 = new ClientSessionFactoryImpl(server0tc);
+
+ ClientSessionFactory sf1 = new ClientSessionFactoryImpl(server1tc);
+
+ ClientSession session0 = sf0.createSession(false, true, true);
+
+ ClientSession session1 = sf1.createSession(false, true, true);
+
+ ClientProducer producer0 = session0.createProducer(new SimpleString(testAddress));
+
+ ClientConsumer consumer1 = session1.createConsumer(queueName1);
+
+ session1.start();
+
+ final SimpleString propKey = new SimpleString("testkey");
+
+ for (int j = 0; j < 5; j++)
+ {
+ for (int i = 0; i < batchSize - 1; i++)
+ {
+ ClientMessage message = session0.createClientMessage(false);
+ message.putIntProperty(propKey, i);
+ message.getBody().flip();
+
+ producer0.send(message);
+ }
+
+ ClientMessage message = consumer1.receiveImmediate();
+
+ assertNull(message);
+
+ // Now wait until max batch time is exceeded - this should prompt delivery
+
+ Thread.sleep(batchTime * 2);
+
+ for (int i = 0; i < batchSize - 1; i++)
+ {
+ message = consumer1.receive(1000);
+
+ assertNotNull(message);
+
+ assertEquals(i, message.getProperty(propKey));
+ }
+ }
+
+ session0.close();
+
+ session1.close();
+
+ sf0.close();
+
+ sf1.close();
+
+ service0.stop();
+
+ service1.stop();
+ }
+
+ public void testWithFilter() throws Exception
+ {
+ Map<String, Object> service0Params = new HashMap<String, Object>();
+ MessagingService service0 = createClusteredServiceWithParams(0, false, service0Params);
+
+ Map<String, Object> service1Params = new HashMap<String, Object>();
+ service1Params.put(SERVER_ID_PROP_NAME, 1);
+ MessagingService service1 = createClusteredServiceWithParams(1, false, service1Params);
+
+ final String testAddress = "testAddress";
+ final String queueName0 = "queue0";
+ final String forwardAddress = "forwardAddress";
+ final String queueName1 = "queue1";
+
+ Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
+ TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service0Params);
+ TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service1Params);
+ connectors.put(server1tc.getName(), server1tc);
+
+ service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
+
+ Pair<String, String> connectorPair = new Pair<String, String>(server1tc.getName(), null);
+
+ final String filterString = "animal='goat'";
+
+ BridgeConfiguration bridgeConfiguration = new BridgeConfiguration("bridge1",
+ queueName0,
+ forwardAddress,
+ filterString,
+ 1,
+ -1,
+ null,
+ 1000,
+ 1d,
+ 0,
+ 0,
+ false,
+ connectorPair);
+
+ List<BridgeConfiguration> bridgeConfigs = new ArrayList<BridgeConfiguration>();
+ bridgeConfigs.add(bridgeConfiguration);
+ service0.getServer().getConfiguration().setBridgeConfigurations(bridgeConfigs);
+
+ QueueConfiguration queueConfig0 = new QueueConfiguration(testAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs0 = new ArrayList<QueueConfiguration>();
+ queueConfigs0.add(queueConfig0);
+ service0.getServer().getConfiguration().setQueueConfigurations(queueConfigs0);
+
+ QueueConfiguration queueConfig1 = new QueueConfiguration(forwardAddress, queueName1, null, true);
+ List<QueueConfiguration> queueConfigs1 = new ArrayList<QueueConfiguration>();
+ queueConfigs1.add(queueConfig1);
+ service1.getServer().getConfiguration().setQueueConfigurations(queueConfigs1);
+
+ service1.start();
+ service0.start();
+
+ ClientSessionFactory sf0 = new ClientSessionFactoryImpl(server0tc);
+
+ ClientSessionFactory sf1 = new ClientSessionFactoryImpl(server1tc);
+
+ ClientSession session0 = sf0.createSession(false, true, true);
+
+ ClientSession session1 = sf1.createSession(false, true, true);
+
+ ClientProducer producer0 = session0.createProducer(new SimpleString(testAddress));
+
+ ClientConsumer consumer1 = session1.createConsumer(queueName1);
+
+ session1.start();
+
+ final int numMessages = 10;
+
+ final SimpleString propKey = new SimpleString("testkey");
+
+ final SimpleString selectorKey = new SimpleString("animal");
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage message = session0.createClientMessage(false);
+
+ message.putIntProperty(propKey, i);
+
+ message.putStringProperty(selectorKey, new SimpleString("monkey"));
+
+ producer0.send(message);
+ }
+
+ assertNull(consumer1.receive(200));
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage message = session0.createClientMessage(false);
+
+ message.putIntProperty(propKey, i);
+
+ message.putStringProperty(selectorKey, new SimpleString("goat"));
+
+ producer0.send(message);
+ }
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage message = consumer1.receive(200);
+
+ assertNotNull(message);
+
+ assertEquals((Integer)i, (Integer)message.getProperty(propKey));
+
+ message.acknowledge();
+ }
+
+ assertNull(consumer1.receive(200));
+
+ session0.close();
+
+ session1.close();
+
+ sf0.close();
+
+ sf1.close();
+
+ service0.stop();
+
+ service1.stop();
+ }
+
+ public void testWithTransformer() throws Exception
+ {
+ Map<String, Object> service0Params = new HashMap<String, Object>();
+ MessagingService service0 = createClusteredServiceWithParams(0, false, service0Params);
+
+ Map<String, Object> service1Params = new HashMap<String, Object>();
+ service1Params.put(SERVER_ID_PROP_NAME, 1);
+ MessagingService service1 = createClusteredServiceWithParams(1, false, service1Params);
+
+ final String testAddress = "testAddress";
+ final String queueName0 = "queue0";
+ final String forwardAddress = "forwardAddress";
+ final String queueName1 = "queue1";
+
+ Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
+ TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service0Params);
+ TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
+ service1Params);
+ connectors.put(server1tc.getName(), server1tc);
+
+ service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
+
+ Pair<String, String> connectorPair = new Pair<String, String>(server1tc.getName(), null);
+
+ BridgeConfiguration bridgeConfiguration = new BridgeConfiguration("bridge1",
+ queueName0,
+ forwardAddress,
+ null,
+ 1,
+ -1,
+ SimpleTransformer.class.getName(),
+ 1000,
+ 1d,
+ 0,
+ 0,
+ false,
+ connectorPair);
+
+ List<BridgeConfiguration> bridgeConfigs = new ArrayList<BridgeConfiguration>();
+ bridgeConfigs.add(bridgeConfiguration);
+ service0.getServer().getConfiguration().setBridgeConfigurations(bridgeConfigs);
+
+ QueueConfiguration queueConfig0 = new QueueConfiguration(testAddress, queueName0, null, true);
+ List<QueueConfiguration> queueConfigs0 = new ArrayList<QueueConfiguration>();
+ queueConfigs0.add(queueConfig0);
+ service0.getServer().getConfiguration().setQueueConfigurations(queueConfigs0);
+
+ QueueConfiguration queueConfig1 = new QueueConfiguration(forwardAddress, queueName1, null, true);
+ List<QueueConfiguration> queueConfigs1 = new ArrayList<QueueConfiguration>();
+ queueConfigs1.add(queueConfig1);
+ service1.getServer().getConfiguration().setQueueConfigurations(queueConfigs1);
+
+ service1.start();
+ service0.start();
+
+ ClientSessionFactory sf0 = new ClientSessionFactoryImpl(server0tc);
+
+ ClientSessionFactory sf1 = new ClientSessionFactoryImpl(server1tc);
+
+ ClientSession session0 = sf0.createSession(false, true, true);
+
+ ClientSession session1 = sf1.createSession(false, true, true);
+
+ ClientProducer producer0 = session0.createProducer(new SimpleString(testAddress));
+
+ ClientConsumer consumer1 = session1.createConsumer(queueName1);
+
+ session1.start();
+
+ final int numMessages = 10;
+
+ final SimpleString propKey = new SimpleString("wibble");
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage message = session0.createClientMessage(false);
+
+ message.putStringProperty(propKey, new SimpleString("bing"));
+
+ message.getBody().putString("doo be doo be doo be doo");
+
+ message.getBody().flip();
+
+ producer0.send(message);
+ }
+
+ for (int i = 0; i < numMessages; i++)
+ {
+ ClientMessage message = consumer1.receive(200);
+
+ assertNotNull(message);
+
+ SimpleString val = (SimpleString)message.getProperty(propKey);
+
+ assertEquals(new SimpleString("bong"), val);
+
+ String sval = message.getBody().getString();
+
+ assertEquals("dee be dee be dee be dee", sval);
+
+ message.acknowledge();
+ }
+
+ assertNull(consumer1.receive(200));
+
+ session0.close();
+
+ session1.close();
+
+ sf0.close();
+
+ sf1.close();
+
+ service0.stop();
+
+ service1.stop();
+ }
+
+}
Added: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/BridgeTestBase.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/BridgeTestBase.java (rev 0)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/BridgeTestBase.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -0,0 +1,94 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005-2008, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+package org.jboss.messaging.tests.integration.cluster.bridge;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import junit.framework.TestCase;
+
+import org.jboss.messaging.core.config.Configuration;
+import org.jboss.messaging.core.config.TransportConfiguration;
+import org.jboss.messaging.core.config.impl.ConfigurationImpl;
+import org.jboss.messaging.core.remoting.impl.invm.TransportConstants;
+import org.jboss.messaging.core.server.MessagingService;
+import org.jboss.messaging.core.server.impl.MessagingServiceImpl;
+
+/**
+ * A BridgeTestBase
+ *
+ * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
+ *
+ * Created 21 Nov 2008 10:32:23
+ *
+ *
+ */
+public abstract class BridgeTestBase extends TestCase
+{
+ protected MessagingService createMessagingServiceNIO(final int id, final Map<String, Object> params)
+ {
+ Configuration serviceConf = new ConfigurationImpl();
+ serviceConf.setClustered(true);
+ serviceConf.setSecurityEnabled(false);
+ serviceConf.setJournalMinFiles(2);
+ serviceConf.setJournalFileSize(100 * 1024);
+ params.put(TransportConstants.SERVER_ID_PROP_NAME, id);
+ serviceConf.getAcceptorConfigurations()
+ .add(new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMAcceptorFactory",
+ params));
+ MessagingService service = MessagingServiceImpl.newMessagingService(serviceConf);
+ return service;
+ }
+
+ protected MessagingService createMessagingService(final int id, final Map<String, Object> params)
+ {
+ Configuration serviceConf = new ConfigurationImpl();
+ serviceConf.setClustered(true);
+ serviceConf.setSecurityEnabled(false);
+ params.put(TransportConstants.SERVER_ID_PROP_NAME, id);
+ serviceConf.getAcceptorConfigurations()
+ .add(new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMAcceptorFactory",
+ params));
+ MessagingService service = MessagingServiceImpl.newNullStorageMessagingService(serviceConf);
+ return service;
+ }
+
+ protected MessagingService createMessagingService(final int id, final Map<String, Object> params, final boolean backup)
+ {
+ Configuration serviceConf = new ConfigurationImpl();
+ serviceConf.setClustered(true);
+ serviceConf.setSecurityEnabled(false);
+ serviceConf.setBackup(backup);
+ params.put(TransportConstants.SERVER_ID_PROP_NAME, id);
+ serviceConf.getAcceptorConfigurations()
+ .add(new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMAcceptorFactory",
+ params));
+ MessagingService service = MessagingServiceImpl.newNullStorageMessagingService(serviceConf);
+ return service;
+ }
+
+ protected MessagingService createMessagingService(final int id)
+ {
+ return this.createMessagingService(id, new HashMap<String, Object>());
+ }
+}
Copied: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/SimpleTransformer.java (from rev 5666, trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/SimpleTransformer.java)
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/SimpleTransformer.java (rev 0)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/bridge/SimpleTransformer.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -0,0 +1,74 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2005-2008, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * This is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation; either version 2.1 of
+ * the License, or (at your option) any later version.
+ *
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this software; if not, write to the Free
+ * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+ * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+ */
+
+
+package org.jboss.messaging.tests.integration.cluster.bridge;
+
+import org.jboss.messaging.core.logging.Logger;
+import org.jboss.messaging.core.remoting.spi.MessagingBuffer;
+import org.jboss.messaging.core.server.ServerMessage;
+import org.jboss.messaging.core.server.cluster.Transformer;
+import org.jboss.messaging.util.SimpleString;
+
+/**
+ * A SimpleTransformer
+ *
+ * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
+ *
+ * Created 21 Nov 2008 11:44:37
+ *
+ *
+ */
+public class SimpleTransformer implements Transformer
+{
+ private static final Logger log = Logger.getLogger(SimpleTransformer.class);
+
+ public ServerMessage transform(final ServerMessage message)
+ {
+ SimpleString oldProp = (SimpleString)message.getProperty(new SimpleString("wibble"));
+
+ if (!oldProp.equals(new SimpleString("bing")))
+ {
+ throw new IllegalStateException("Wrong property value!!");
+ }
+
+ //Change a property
+ message.putStringProperty(new SimpleString("wibble"), new SimpleString("bong"));
+
+ //Change the body
+ MessagingBuffer buffer = message.getBody();
+
+ String str = buffer.getString();
+
+ if (!str.equals("doo be doo be doo be doo"))
+ {
+ throw new IllegalStateException("Wrong body!!");
+ }
+
+ buffer.flip();
+
+ buffer.putString("dee be dee be dee be dee");
+
+ return message;
+ }
+
+}
Modified: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/BasicMessageFlowTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/BasicMessageFlowTest.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/BasicMessageFlowTest.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -22,33 +22,8 @@
package org.jboss.messaging.tests.integration.cluster.distribution;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_AFTER_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_BEFORE_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL_MULTIPLIER;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_MAX_HOPS;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_USE_DUPLICATE_DETECTION;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.jboss.messaging.core.client.ClientConsumer;
-import org.jboss.messaging.core.client.ClientMessage;
-import org.jboss.messaging.core.client.ClientProducer;
-import org.jboss.messaging.core.client.ClientSession;
-import org.jboss.messaging.core.client.ClientSessionFactory;
-import org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl;
-import org.jboss.messaging.core.config.TransportConfiguration;
-import org.jboss.messaging.core.config.cluster.MessageFlowConfiguration;
-import org.jboss.messaging.core.logging.Logger;
import org.jboss.messaging.core.remoting.impl.invm.InVMRegistry;
-import org.jboss.messaging.core.server.MessagingService;
-import org.jboss.messaging.util.Pair;
-import org.jboss.messaging.util.SimpleString;
+import org.jboss.messaging.tests.integration.cluster.bridge.BridgeTestBase;
/**
*
@@ -60,7 +35,7 @@
*
*
*/
-public class BasicMessageFlowTest extends MessageFlowTestBase
+public class BasicMessageFlowTest extends BridgeTestBase
{
// private static final Logger log = Logger.getLogger(BasicMessageFlowTest.class);
//
Deleted: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/DiscoveryFlowTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/DiscoveryFlowTest.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/DiscoveryFlowTest.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -1,330 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source Copyright 2005-2008, Red Hat
- * Middleware LLC, and individual contributors by the @authors tag. See the
- * copyright.txt in the distribution for a full listing of individual
- * contributors.
- *
- * This is free software; you can redistribute it and/or modify it under the
- * terms of the GNU Lesser General Public License as published by the Free
- * Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This software is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
- * details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this software; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF
- * site: http://www.fsf.org.
- */
-
-package org.jboss.messaging.tests.integration.cluster.distribution;
-
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_AFTER_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_BEFORE_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL_MULTIPLIER;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_MAX_HOPS;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_USE_DUPLICATE_DETECTION;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.jboss.messaging.core.client.ClientConsumer;
-import org.jboss.messaging.core.client.ClientMessage;
-import org.jboss.messaging.core.client.ClientProducer;
-import org.jboss.messaging.core.client.ClientSession;
-import org.jboss.messaging.core.client.ClientSessionFactory;
-import org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl;
-import org.jboss.messaging.core.config.TransportConfiguration;
-import org.jboss.messaging.core.config.cluster.BroadcastGroupConfiguration;
-import org.jboss.messaging.core.config.cluster.DiscoveryGroupConfiguration;
-import org.jboss.messaging.core.config.cluster.MessageFlowConfiguration;
-import org.jboss.messaging.core.logging.Logger;
-import org.jboss.messaging.core.remoting.impl.invm.InVMRegistry;
-import org.jboss.messaging.core.server.MessagingService;
-import org.jboss.messaging.util.Pair;
-import org.jboss.messaging.util.SimpleString;
-
-/**
- *
- * A DiscoveryFlowTest
- *
- * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
- *
- * Created 24 Nov 2008 14:25:45
- *
- *
- */
-public class DiscoveryFlowTest extends MessageFlowTestBase
-{
- private static final Logger log = Logger.getLogger(DiscoveryFlowTest.class);
-
- // Constants -----------------------------------------------------
-
- // Attributes ----------------------------------------------------
-
- // Static --------------------------------------------------------
-
- // Constructors --------------------------------------------------
-
- // Public --------------------------------------------------------
-//
-// public void testDiscoveryOutflow() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createMessagingService(0, service0Params);
-//
-// final String groupAddress = "230.1.2.3";
-//
-// final int groupPort = 8765;
-//
-// final long broadcastPeriod = 250;
-//
-// final String bcGroupName = "bc1";
-//
-// final String localBindAddress = "localhost";
-//
-// final int localBindPort = 5432;
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// MessagingService service1 = createMessagingService(1, service1Params);
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params);
-// Map<String, TransportConfiguration> server1Connectors = new HashMap<String, TransportConfiguration>();
-// server1Connectors.put(server1tc.getName(), server1tc);
-// service1.getServer().getConfiguration().setConnectorConfigurations(server1Connectors);
-// List<Pair<String, String>> connectorNames1 = new ArrayList<Pair<String, String>>();
-// connectorNames1.add(new Pair<String, String>(server1tc.getName(), null));
-// BroadcastGroupConfiguration bcConfig1 = new BroadcastGroupConfiguration(bcGroupName,
-// localBindAddress,
-// localBindPort,
-// groupAddress,
-// groupPort,
-// broadcastPeriod,
-// connectorNames1);
-// Set<BroadcastGroupConfiguration> bcConfigs1 = new HashSet<BroadcastGroupConfiguration>();
-// bcConfigs1.add(bcConfig1);
-// service1.getServer().getConfiguration().setBroadcastGroupConfigurations(bcConfigs1);
-// service1.start();
-//
-// Map<String, Object> service2Params = new HashMap<String, Object>();
-// MessagingService service2 = createMessagingService(2, service2Params);
-// TransportConfiguration server2tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service2Params);
-// Map<String, TransportConfiguration> server2Connectors = new HashMap<String, TransportConfiguration>();
-// server2Connectors.put(server2tc.getName(), server2tc);
-// service2.getServer().getConfiguration().setConnectorConfigurations(server2Connectors);
-// List<Pair<String, String>> connectorNames2 = new ArrayList<Pair<String, String>>();
-// connectorNames2.add(new Pair<String, String>(server2tc.getName(), null));
-// BroadcastGroupConfiguration bcConfig2 = new BroadcastGroupConfiguration(bcGroupName,
-// localBindAddress,
-// localBindPort,
-// groupAddress,
-// groupPort,
-// broadcastPeriod,
-// connectorNames2);
-// Set<BroadcastGroupConfiguration> bcConfigs2 = new HashSet<BroadcastGroupConfiguration>();
-// bcConfigs2.add(bcConfig2);
-// service2.getServer().getConfiguration().setBroadcastGroupConfigurations(bcConfigs2);
-// service2.start();
-//
-// Map<String, Object> service3Params = new HashMap<String, Object>();
-// MessagingService service3 = createMessagingService(3, service3Params);
-// TransportConfiguration server3tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service3Params);
-// Map<String, TransportConfiguration> server3Connectors = new HashMap<String, TransportConfiguration>();
-// server3Connectors.put(server3tc.getName(), server3tc);
-// service3.getServer().getConfiguration().setConnectorConfigurations(server3Connectors);
-// List<Pair<String, String>> connectorNames3 = new ArrayList<Pair<String, String>>();
-// connectorNames3.add(new Pair<String, String>(server3tc.getName(), null));
-// BroadcastGroupConfiguration bcConfig3 = new BroadcastGroupConfiguration(bcGroupName,
-// localBindAddress,
-// localBindPort,
-// groupAddress,
-// groupPort,
-// broadcastPeriod,
-// connectorNames3);
-// Set<BroadcastGroupConfiguration> bcConfigs3 = new HashSet<BroadcastGroupConfiguration>();
-// bcConfigs3.add(bcConfig3);
-// service3.getServer().getConfiguration().setBroadcastGroupConfigurations(bcConfigs3);
-// service3.start();
-//
-// Map<String, Object> service4Params = new HashMap<String, Object>();
-// MessagingService service4 = createMessagingService(4, service4Params);
-// TransportConfiguration server4tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service4Params);
-// Map<String, TransportConfiguration> server4Connectors = new HashMap<String, TransportConfiguration>();
-// server4Connectors.put(server4tc.getName(), server4tc);
-// service4.getServer().getConfiguration().setConnectorConfigurations(server4Connectors);
-// List<Pair<String, String>> connectorNames4 = new ArrayList<Pair<String, String>>();
-// connectorNames4.add(new Pair<String, String>(server4tc.getName(), null));
-// BroadcastGroupConfiguration bcConfig4 = new BroadcastGroupConfiguration(bcGroupName,
-// localBindAddress,
-// localBindPort,
-// groupAddress,
-// groupPort,
-// broadcastPeriod,
-// connectorNames4);
-// Set<BroadcastGroupConfiguration> bcConfigs4 = new HashSet<BroadcastGroupConfiguration>();
-// bcConfigs4.add(bcConfig4);
-// service4.getServer().getConfiguration().setBroadcastGroupConfigurations(bcConfigs4);
-// service4.start();
-//
-// final SimpleString testAddress = new SimpleString("testaddress");
-//
-// final long discoveryTimeout = 500;
-//
-// final String discoveryGroupName = "dcGroup";
-//
-// DiscoveryGroupConfiguration dcConfig = new DiscoveryGroupConfiguration(discoveryGroupName,
-// groupAddress,
-// groupPort,
-// discoveryTimeout);
-//
-//
-// Map<String, DiscoveryGroupConfiguration> dcConfigs = new HashMap<String, DiscoveryGroupConfiguration>();
-// dcConfigs.put(dcConfig.getName(), dcConfig);
-// service0.getServer().getConfiguration().setDiscoveryGroupConfigurations(dcConfigs);
-//
-// MessageFlowConfiguration ofconfig = new MessageFlowConfiguration("outflow1",
-// testAddress.toString(),
-// null,
-// false,
-// 1,
-// -1,
-// null,
-// DEFAULT_RETRY_INTERVAL,
-// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// discoveryGroupName);
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig);
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// service0.start();
-//
-// Thread.sleep(1000);
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params);
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-// ClientSession session1 = csf1.createSession(false, true, true);
-//
-// ClientSessionFactory csf2 = new ClientSessionFactoryImpl(server2tc);
-// ClientSession session2 = csf2.createSession(false, true, true);
-//
-// ClientSessionFactory csf3 = new ClientSessionFactoryImpl(server3tc);
-// ClientSession session3 = csf3.createSession(false, true, true);
-//
-// ClientSessionFactory csf4 = new ClientSessionFactoryImpl(server4tc);
-// ClientSession session4 = csf4.createSession(false, true, true);
-//
-// session0.createQueue(testAddress, testAddress, null, false, false);
-// session1.createQueue(testAddress, testAddress, null, false, false);
-// session2.createQueue(testAddress, testAddress, null, false, false);
-// session3.createQueue(testAddress, testAddress, null, false, false);
-// session4.createQueue(testAddress, testAddress, null, false, false);
-//
-// ClientProducer prod0 = session0.createProducer(testAddress);
-//
-// ClientConsumer cons0 = session0.createConsumer(testAddress);
-// ClientConsumer cons1 = session1.createConsumer(testAddress);
-// ClientConsumer cons2 = session2.createConsumer(testAddress);
-// ClientConsumer cons3 = session3.createConsumer(testAddress);
-// ClientConsumer cons4 = session4.createConsumer(testAddress);
-//
-// session0.start();
-//
-// session1.start();
-// session2.start();
-// session3.start();
-// session4.start();
-//
-// final int numMessages = 100;
-//
-// final SimpleString propKey = new SimpleString("testkey");
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0.send(message);
-// }
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage rmessage0 = cons0.receive(1000);
-// assertNotNull(rmessage0);
-// assertEquals(i, rmessage0.getProperty(propKey));
-//
-// ClientMessage rmessage1 = cons1.receive(1000);
-// assertNotNull(rmessage1);
-// assertEquals(i, rmessage1.getProperty(propKey));
-//
-// ClientMessage rmessage2 = cons2.receive(1000);
-// assertNotNull(rmessage2);
-// assertEquals(i, rmessage2.getProperty(propKey));
-//
-// ClientMessage rmessage3 = cons3.receive(1000);
-// assertNotNull(rmessage3);
-// assertEquals(i, rmessage3.getProperty(propKey));
-//
-// ClientMessage rmessage4 = cons4.receive(1000);
-// assertNotNull(rmessage4);
-// assertEquals(i, rmessage4.getProperty(propKey));
-// }
-//
-// session0.close();
-// session1.close();
-// session2.close();
-// session3.close();
-// session4.close();
-//
-// service0.stop();
-// service1.stop();
-// service2.stop();
-// service3.stop();
-// service4.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service2.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service3.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service4.getServer().getRemotingService().getConnections().size());
-// }
-
- // Package protected ---------------------------------------------
-
- // Protected -----------------------------------------------------
-
- @Override
- protected void setUp() throws Exception
- {
- }
-
- @Override
- protected void tearDown() throws Exception
- {
- assertEquals(0, InVMRegistry.instance.size());
- }
-
- // Private -------------------------------------------------------
-
- // Inner classes -------------------------------------------------
-}
Deleted: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowBatchSizeTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowBatchSizeTest.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowBatchSizeTest.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -1,223 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source Copyright 2005-2008, Red Hat
- * Middleware LLC, and individual contributors by the @authors tag. See the
- * copyright.txt in the distribution for a full listing of individual
- * contributors.
- *
- * This is free software; you can redistribute it and/or modify it under the
- * terms of the GNU Lesser General Public License as published by the Free
- * Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This software is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
- * details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this software; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF
- * site: http://www.fsf.org.
- */
-
-package org.jboss.messaging.tests.integration.cluster.distribution;
-
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_AFTER_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_BEFORE_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL_MULTIPLIER;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_MAX_HOPS;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_USE_DUPLICATE_DETECTION;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.jboss.messaging.core.client.ClientConsumer;
-import org.jboss.messaging.core.client.ClientMessage;
-import org.jboss.messaging.core.client.ClientProducer;
-import org.jboss.messaging.core.client.ClientSession;
-import org.jboss.messaging.core.client.ClientSessionFactory;
-import org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl;
-import org.jboss.messaging.core.config.TransportConfiguration;
-import org.jboss.messaging.core.config.cluster.MessageFlowConfiguration;
-import org.jboss.messaging.core.logging.Logger;
-import org.jboss.messaging.core.remoting.impl.invm.InVMRegistry;
-import org.jboss.messaging.core.server.MessagingService;
-import org.jboss.messaging.util.Pair;
-import org.jboss.messaging.util.SimpleString;
-
-/**
- *
- * A MessageFlowBatchSizeTest
- *
- * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
- *
- * Created 15 Nov 2008 09:06:55
- *
- *
- */
-public class MessageFlowBatchSizeTest extends MessageFlowTestBase
-{
- private static final Logger log = Logger.getLogger(MessageFlowBatchSizeTest.class);
-
- // Constants -----------------------------------------------------
-
- // Attributes ----------------------------------------------------
-
- // Static --------------------------------------------------------
-
- // Constructors --------------------------------------------------
-
- // Public --------------------------------------------------------
-//
-// public void testBatchSize() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createMessagingService(0, service0Params);
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// MessagingService service1 = createMessagingService(1, service1Params);
-// service1.start();
-//
-// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params,
-// "connector1");
-// connectors.put(server1tc.getName(), server1tc);
-// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// final SimpleString address1 = new SimpleString("testaddress");
-//
-// final int batchSize = 10;
-//
-// List<Pair<String, String>> connectorNames = new ArrayList<Pair<String, String>>();
-// connectorNames.add(new Pair<String, String>(server1tc.getName(), null));
-//
-// MessageFlowConfiguration ofconfig = new MessageFlowConfiguration("outflow1",
-// address1.toString(),
-// null,
-// false,
-// batchSize,
-// -1,
-// null,
-// DEFAULT_RETRY_INTERVAL,
-// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames);
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig);
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// service0.start();
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params);
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-//
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-//
-// ClientSession session1 = csf1.createSession(false, true, true);
-//
-// session0.createQueue(address1, address1, null, false, false);
-//
-// session1.createQueue(address1, address1, null, false, false);
-//
-// ClientProducer prod0_1 = session0.createProducer(address1);
-//
-// ClientConsumer cons0_1 = session0.createConsumer(address1);
-//
-// ClientConsumer cons1_1 = session1.createConsumer(address1);
-//
-// session0.start();
-//
-// session1.start();
-//
-// final SimpleString propKey = new SimpleString("testkey");
-//
-// for (int j = 0; j < 10; j++)
-// {
-//
-// for (int i = 0; i < batchSize - 1; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0_1.send(message);
-// }
-//
-// for (int i = 0; i < batchSize - 1; i++)
-// {
-// ClientMessage rmessage1 = cons0_1.receive(1000);
-//
-// assertNotNull(rmessage1);
-//
-// assertEquals(i, rmessage1.getProperty(propKey));
-// }
-//
-// ClientMessage rmessage1 = cons1_1.receive(250);
-//
-// assertNull(rmessage1);
-//
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, batchSize - 1);
-// message.getBody().flip();
-//
-// prod0_1.send(message);
-//
-// rmessage1 = cons0_1.receive(1000);
-//
-// assertNotNull(rmessage1);
-//
-// assertEquals(batchSize - 1, rmessage1.getProperty(propKey));
-//
-// for (int i = 0; i < batchSize; i++)
-// {
-// rmessage1 = cons1_1.receive(1000);
-//
-// assertNotNull(rmessage1);
-//
-// assertEquals(i, rmessage1.getProperty(propKey));
-// }
-// }
-//
-// session0.close();
-//
-// session1.close();
-//
-// service0.stop();
-// service1.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// }
-
- // Package protected ---------------------------------------------
-
- // Protected -----------------------------------------------------
-
- @Override
- protected void setUp() throws Exception
- {
- }
-
- @Override
- protected void tearDown() throws Exception
- {
- assertEquals(0, InVMRegistry.instance.size());
- }
-
- // Private -------------------------------------------------------
-
- // Inner classes -------------------------------------------------
-}
Deleted: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowBatchTimeTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowBatchTimeTest.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowBatchTimeTest.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -1,216 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source Copyright 2005-2008, Red Hat
- * Middleware LLC, and individual contributors by the @authors tag. See the
- * copyright.txt in the distribution for a full listing of individual
- * contributors.
- *
- * This is free software; you can redistribute it and/or modify it under the
- * terms of the GNU Lesser General Public License as published by the Free
- * Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This software is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
- * details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this software; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF
- * site: http://www.fsf.org.
- */
-
-package org.jboss.messaging.tests.integration.cluster.distribution;
-
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_AFTER_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_BEFORE_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL_MULTIPLIER;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_MAX_HOPS;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_USE_DUPLICATE_DETECTION;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.jboss.messaging.core.client.ClientConsumer;
-import org.jboss.messaging.core.client.ClientMessage;
-import org.jboss.messaging.core.client.ClientProducer;
-import org.jboss.messaging.core.client.ClientSession;
-import org.jboss.messaging.core.client.ClientSessionFactory;
-import org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl;
-import org.jboss.messaging.core.config.TransportConfiguration;
-import org.jboss.messaging.core.config.cluster.MessageFlowConfiguration;
-import org.jboss.messaging.core.logging.Logger;
-import org.jboss.messaging.core.remoting.impl.invm.InVMRegistry;
-import org.jboss.messaging.core.server.MessagingService;
-import org.jboss.messaging.util.Pair;
-import org.jboss.messaging.util.SimpleString;
-
-/**
- *
- * A MessageFlowBatchTimeTest
- *
- * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
- *
- * Created 15 Nov 2008 09:06:55
- *
- *
- */
-public class MessageFlowBatchTimeTest extends MessageFlowTestBase
-{
- private static final Logger log = Logger.getLogger(MessageFlowBatchTimeTest.class);
-
- // Constants -----------------------------------------------------
-
- // Attributes ----------------------------------------------------
-
- // Static --------------------------------------------------------
-
- // Constructors --------------------------------------------------
-
- // Public --------------------------------------------------------
-//
-// public void testBatchTime() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createMessagingService(0, service0Params);
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// MessagingService service1 = createMessagingService(1, service1Params);
-// service1.start();
-//
-// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params,
-// "connector1");
-// connectors.put(server1tc.getName(), server1tc);
-// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// final SimpleString address1 = new SimpleString("testaddress");
-//
-// final int batchSize = 10;
-// final long batchTime = 250;
-//
-// List<Pair<String, String>> connectorNames = new ArrayList<Pair<String, String>>();
-// connectorNames.add(new Pair<String, String>(server1tc.getName(), null));
-//
-// MessageFlowConfiguration ofconfig = new MessageFlowConfiguration("outflow1",
-// address1.toString(),
-// null,
-// false,
-// batchSize,
-// batchTime,
-// null,
-// DEFAULT_RETRY_INTERVAL,
-// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames);
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig);
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// service0.start();
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params);
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-//
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-//
-// ClientSession session1 = csf1.createSession(false, true, true);
-//
-// session0.createQueue(address1, address1, null, false, false);
-//
-// session1.createQueue(address1, address1, null, false, false);
-//
-// ClientProducer prod0_1 = session0.createProducer(address1);
-//
-// ClientConsumer cons0_1 = session0.createConsumer(address1);
-//
-// ClientConsumer cons1_1 = session1.createConsumer(address1);
-//
-// session0.start();
-//
-// session1.start();
-//
-// final SimpleString propKey = new SimpleString("testkey");
-//
-// for (int j = 0; j < 5; j++)
-// {
-//
-// for (int i = 0; i < batchSize - 1; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0_1.send(message);
-// }
-//
-// for (int i = 0; i < batchSize - 1; i++)
-// {
-// ClientMessage rmessage1 = cons0_1.receive(1000);
-//
-// assertNotNull(rmessage1);
-//
-// assertEquals(i, rmessage1.getProperty(propKey));
-// }
-//
-// ClientMessage rmessage1 = cons1_1.receiveImmediate();
-//
-// assertNull(rmessage1);
-//
-// // Now wait until max batch time is exceeded - this should prompt delivery
-//
-// Thread.sleep(batchTime * 2);
-//
-// for (int i = 0; i < batchSize - 1; i++)
-// {
-// rmessage1 = cons1_1.receive(1000);
-//
-// assertNotNull(rmessage1);
-//
-// assertEquals(i, rmessage1.getProperty(propKey));
-// }
-// }
-//
-// session0.close();
-//
-// session1.close();
-//
-// service0.stop();
-// service1.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// }
-
- // Package protected ---------------------------------------------
-
- // Protected -----------------------------------------------------
-
- @Override
- protected void setUp() throws Exception
- {
- }
-
- @Override
- protected void tearDown() throws Exception
- {
- assertEquals(0, InVMRegistry.instance.size());
- }
-
- // Private -------------------------------------------------------
-
- // Inner classes -------------------------------------------------
-}
Deleted: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowReconnectTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowReconnectTest.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowReconnectTest.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -1,718 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source Copyright 2005-2008, Red Hat
- * Middleware LLC, and individual contributors by the @authors tag. See the
- * copyright.txt in the distribution for a full listing of individual
- * contributors.
- *
- * This is free software; you can redistribute it and/or modify it under the
- * terms of the GNU Lesser General Public License as published by the Free
- * Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This software is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
- * details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this software; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF
- * site: http://www.fsf.org.
- */
-
-package org.jboss.messaging.tests.integration.cluster.distribution;
-
-import org.jboss.messaging.core.logging.Logger;
-import org.jboss.messaging.core.remoting.impl.invm.InVMConnector;
-import org.jboss.messaging.core.remoting.impl.invm.InVMRegistry;
-
-/**
- *
- * A MessageFlowReconnectTest
- *
- * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
- *
- * Created 7 Dec 2008 11:48:30
- *
- *
- */
-public class MessageFlowReconnectTest extends MessageFlowTestBase
-{
- private static final Logger log = Logger.getLogger(MessageFlowReconnectTest.class);
-
- // Constants -----------------------------------------------------
-
- // Attributes ----------------------------------------------------
-
- // Static --------------------------------------------------------
-
- // Constructors --------------------------------------------------
-
- // Public --------------------------------------------------------
-//
-// public void testAutomaticReconnectBeforeFailover() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createMessagingService(0, service0Params);
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// MessagingService service1 = createMessagingService(1, service1Params);
-// service1.start();
-//
-// Map<String, Object> service2Params = new HashMap<String, Object>();
-// MessagingService service2 = createMessagingService(2, service2Params);
-// service2.start();
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params,
-// "server0tc");
-//
-// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-//
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params,
-// "server1tc");
-//
-// TransportConfiguration server2tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service2Params,
-// "server2tc");
-//
-// connectors.put(server1tc.getName(), server1tc);
-//
-// connectors.put(server2tc.getName(), server2tc);
-//
-// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// List<Pair<String, String>> connectorNames = new ArrayList<Pair<String, String>>();
-// connectorNames.add(new Pair<String, String>(server1tc.getName(), server2tc.getName()));
-//
-// final SimpleString address1 = new SimpleString("testaddress");
-//
-// final long retryInterval = 50;
-// final double retryIntervalMultiplier = 1d;
-// final int retriesBeforeFailover = 3;
-// final int maxRetriesAfterFailover = -1;
-//
-// final String flowName = "flow1";
-//
-// MessageFlowConfiguration ofconfig1 = new MessageFlowConfiguration(flowName,
-// address1.toString(),
-// null,
-// false,
-// 1,
-// -1,
-// null,
-// retryInterval,
-// retryIntervalMultiplier,
-// retriesBeforeFailover,
-// maxRetriesAfterFailover,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames);
-//
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig1);
-//
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// service0.start();
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-// ClientSession session1 = csf1.createSession(false, true, true);
-//
-// session0.createQueue(address1, address1, null, false, false);
-// session1.createQueue(address1, address1, null, false, false);
-// ClientProducer prod0 = session0.createProducer(address1);
-//
-// ClientConsumer cons1 = session1.createConsumer(address1);
-//
-// session1.start();
-//
-// //Now we will simulate a failure of the message flow connection between server1 and server2
-// //And prevent reconnection for a few tries, then it will reconnect without failing over
-// MessageFlow flow = service0.getServer().getClusterManager().getMessageFlows().get(flowName);
-// Forwarder forwarder = flow.getForwarders().iterator().next();
-// RemotingConnection forwardingConnection = ((ForwarderImpl)forwarder).getForwardingConnection();
-// InVMConnector.failOnCreateConnection = true;
-// InVMConnector.numberOfFailures = retriesBeforeFailover - 1;
-// forwardingConnection.fail(new MessagingException(MessagingException.NOT_CONNECTED));
-//
-// final int numMessages = 10;
-//
-// SimpleString propKey = new SimpleString("propkey");
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0.send(message);
-// }
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage r1 = cons1.receive(500);
-// assertNotNull(r1);
-// assertEquals(i, r1.getProperty(propKey));
-// }
-//
-// session0.close();
-// session1.close();
-//
-// service0.stop();
-// service1.stop();
-// service2.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service2.getServer().getRemotingService().getConnections().size());
-// }
-//
-// public void testAutomaticReconnectTryThenFailover() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createMessagingService(0, service0Params);
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// MessagingService service1 = createMessagingService(1, service1Params);
-//
-// Map<String, Object> service2Params = new HashMap<String, Object>();
-// MessagingService service2 = createMessagingService(2, service2Params, true);
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params,
-// "server0tc");
-//
-// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-//
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params,
-// "server1tc");
-//
-// TransportConfiguration server2tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service2Params,
-// "server2tc");
-//
-// connectors.put(server1tc.getName(), server1tc);
-//
-// connectors.put(server2tc.getName(), server2tc);
-//
-// service1.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// service1.getServer().getConfiguration().setBackupConnectorName(server2tc.getName());
-//
-// service2.getServer().getConfiguration().setBackup(true);
-//
-// service1.start();
-//
-// service2.start();
-//
-// log.info("Started service1 and service2");
-//
-// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// List<Pair<String, String>> connectorNames = new ArrayList<Pair<String, String>>();
-// connectorNames.add(new Pair<String, String>(server1tc.getName(), server2tc.getName()));
-//
-// final SimpleString address1 = new SimpleString("testaddress");
-//
-// final long retryInterval = 50;
-// final double retryIntervalMultiplier = 1d;
-// final int retriesBeforeFailover = 3;
-// final int maxRetriesAfterFailover = -1;
-//
-// final String flowName = "flow1";
-//
-// MessageFlowConfiguration ofconfig1 = new MessageFlowConfiguration(flowName,
-// address1.toString(),
-// null,
-// false,
-// 1,
-// -1,
-// null,
-// retryInterval,
-// retryIntervalMultiplier,
-// retriesBeforeFailover,
-// maxRetriesAfterFailover,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames);
-//
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig1);
-//
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// service0.start();
-//
-// log.info("started service0");
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// ClientSessionFactory csf2 = new ClientSessionFactoryImpl(server2tc);
-// ClientSession session2 = csf2.createSession(false, true, true);
-//
-// session0.createQueue(address1, address1, null, false, false);
-// session2.createQueue(address1, address1, null, false, false);
-// ClientProducer prod0 = session0.createProducer(address1);
-//
-// ClientConsumer cons1 = session2.createConsumer(address1);
-//
-// session2.start();
-//
-//
-//
-// //Now we will simulate a failure of the message flow connection between server1 and server2
-// //And prevent reconnection for a few tries, then it will failover
-// MessageFlow flow = service0.getServer().getClusterManager().getMessageFlows().get(flowName);
-// Forwarder forwarder = flow.getForwarders().iterator().next();
-// RemotingConnection forwardingConnection = ((ForwarderImpl)forwarder).getForwardingConnection();
-// InVMConnector.failOnCreateConnection = true;
-// InVMConnector.numberOfFailures = retriesBeforeFailover;
-// forwardingConnection.fail(new MessagingException(MessagingException.NOT_CONNECTED));
-//
-// final int numMessages = 10;
-//
-// SimpleString propKey = new SimpleString("propkey");
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0.send(message);
-// }
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage r1 = cons1.receive(500);
-// assertNotNull(r1);
-// assertEquals(i, r1.getProperty(propKey));
-// }
-//
-// session0.close();
-// session2.close();
-//
-// service0.stop();
-// service1.stop();
-// service2.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service2.getServer().getRemotingService().getConnections().size());
-// }
-//
-// public void testFailoverThenReconnectAfterFailover() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createMessagingService(0, service0Params);
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// MessagingService service1 = createMessagingService(1, service1Params);
-//
-// Map<String, Object> service2Params = new HashMap<String, Object>();
-// MessagingService service2 = createMessagingService(2, service2Params, true);
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params,
-// "server0tc");
-//
-// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-//
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params,
-// "server1tc");
-//
-// TransportConfiguration server2tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service2Params,
-// "server2tc");
-//
-// connectors.put(server1tc.getName(), server1tc);
-//
-// connectors.put(server2tc.getName(), server2tc);
-//
-// service1.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// service1.getServer().getConfiguration().setBackupConnectorName(server2tc.getName());
-//
-// service2.getServer().getConfiguration().setBackup(true);
-//
-// service1.start();
-//
-// service2.start();
-//
-// log.info("Started service1 and service2");
-//
-// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// List<Pair<String, String>> connectorNames = new ArrayList<Pair<String, String>>();
-// connectorNames.add(new Pair<String, String>(server1tc.getName(), server2tc.getName()));
-//
-// final SimpleString address1 = new SimpleString("testaddress");
-//
-// final long retryInterval = 50;
-// final double retryIntervalMultiplier = 1d;
-// final int retriesBeforeFailover = 3;
-// final int maxRetriesAfterFailover = 3;
-//
-// final String flowName = "flow1";
-//
-// MessageFlowConfiguration ofconfig1 = new MessageFlowConfiguration(flowName,
-// address1.toString(),
-// null,
-// false,
-// 1,
-// -1,
-// null,
-// retryInterval,
-// retryIntervalMultiplier,
-// retriesBeforeFailover,
-// maxRetriesAfterFailover,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames);
-//
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig1);
-//
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// service0.start();
-//
-// log.info("started service0");
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// ClientSessionFactory csf2 = new ClientSessionFactoryImpl(server2tc);
-// ClientSession session2 = csf2.createSession(false, true, true);
-//
-// session0.createQueue(address1, address1, null, false, false);
-// session2.createQueue(address1, address1, null, false, false);
-// ClientProducer prod0 = session0.createProducer(address1);
-//
-// ClientConsumer cons1 = session2.createConsumer(address1);
-//
-// session2.start();
-//
-// //Now we will simulate a failure of the message flow connection between server1 and server2
-// //And prevent reconnection for a few tries, then it will failover
-// MessageFlow flow = service0.getServer().getClusterManager().getMessageFlows().get(flowName);
-// Forwarder forwarder = flow.getForwarders().iterator().next();
-// RemotingConnection forwardingConnection = ((ForwarderImpl)forwarder).getForwardingConnection();
-// InVMConnector.failOnCreateConnection = true;
-// InVMConnector.numberOfFailures = retriesBeforeFailover;
-// forwardingConnection.fail(new MessagingException(MessagingException.NOT_CONNECTED));
-//
-// //Now we should be failed over so fail again and should reconnect
-// forwardingConnection = ((ForwarderImpl)forwarder).getForwardingConnection();
-// InVMConnector.resetFailures();
-// InVMConnector.failOnCreateConnection = true;
-// InVMConnector.numberOfFailures = retriesBeforeFailover - 1;
-// forwardingConnection.fail(new MessagingException(MessagingException.NOT_CONNECTED));
-//
-// final int numMessages = 10;
-//
-// SimpleString propKey = new SimpleString("propkey");
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0.send(message);
-// }
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage r1 = cons1.receive(500);
-// assertNotNull(r1);
-// assertEquals(i, r1.getProperty(propKey));
-// }
-//
-// session0.close();
-// session2.close();
-//
-// service0.stop();
-// service1.stop();
-// service2.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service2.getServer().getRemotingService().getConnections().size());
-// }
-//
-// public void testAutomaticReconnectSingleServer() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createMessagingService(0, service0Params);
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// MessagingService service1 = createMessagingService(1, service1Params);
-// service1.start();
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params,
-// "server0tc");
-//
-// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-//
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params,
-// "server1tc");
-//
-// connectors.put(server1tc.getName(), server1tc);
-//
-//
-// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// List<Pair<String, String>> connectorNames = new ArrayList<Pair<String, String>>();
-// connectorNames.add(new Pair<String, String>(server1tc.getName(), null));
-//
-// final SimpleString address1 = new SimpleString("testaddress");
-//
-// final long retryInterval = 50;
-// final double retryIntervalMultiplier = 1d;
-// final int retriesBeforeFailover = 3;
-// final int maxRetriesAfterFailover = -1;
-//
-// final String flowName = "flow1";
-//
-// MessageFlowConfiguration ofconfig1 = new MessageFlowConfiguration(flowName,
-// address1.toString(),
-// null,
-// false,
-// 1,
-// -1,
-// null,
-// retryInterval,
-// retryIntervalMultiplier,
-// retriesBeforeFailover,
-// maxRetriesAfterFailover,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames);
-//
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig1);
-//
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// service0.start();
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-// ClientSession session1 = csf1.createSession(false, true, true);
-//
-// session0.createQueue(address1, address1, null, false, false);
-// session1.createQueue(address1, address1, null, false, false);
-// ClientProducer prod0 = session0.createProducer(address1);
-//
-// ClientConsumer cons1 = session1.createConsumer(address1);
-//
-// session1.start();
-//
-// //Now we will simulate a failure of the message flow connection between server1 and server2
-// //And prevent reconnection for a few tries, then it will reconnect without failing over
-// MessageFlow flow = service0.getServer().getClusterManager().getMessageFlows().get(flowName);
-// Forwarder forwarder = flow.getForwarders().iterator().next();
-// RemotingConnection forwardingConnection = ((ForwarderImpl)forwarder).getForwardingConnection();
-// InVMConnector.failOnCreateConnection = true;
-// InVMConnector.numberOfFailures = retriesBeforeFailover - 1;
-// forwardingConnection.fail(new MessagingException(MessagingException.NOT_CONNECTED));
-//
-// final int numMessages = 10;
-//
-// SimpleString propKey = new SimpleString("propkey");
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0.send(message);
-// }
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage r1 = cons1.receive(500);
-// assertNotNull(r1);
-// assertEquals(i, r1.getProperty(propKey));
-// }
-//
-// session0.close();
-// session1.close();
-//
-// service0.stop();
-// service1.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// }
-//
-// public void testNonAutomaticReconnectSingleServer() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createMessagingService(0, service0Params);
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// MessagingService service1 = createMessagingService(1, service1Params);
-// service1.start();
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params,
-// "server0tc");
-//
-// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-//
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params,
-// "server1tc");
-//
-// connectors.put(server1tc.getName(), server1tc);
-//
-//
-// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// List<Pair<String, String>> connectorNames = new ArrayList<Pair<String, String>>();
-// connectorNames.add(new Pair<String, String>(server1tc.getName(), null));
-//
-// final SimpleString address1 = new SimpleString("testaddress");
-//
-// final long retryInterval = 50;
-// final double retryIntervalMultiplier = 1d;
-// final int retriesBeforeFailover = 3;
-// final int maxRetriesAfterFailover = 0;
-//
-// final String flowName = "flow1";
-//
-// MessageFlowConfiguration ofconfig1 = new MessageFlowConfiguration(flowName,
-// address1.toString(),
-// null,
-// false,
-// 1,
-// -1,
-// null,
-// retryInterval,
-// retryIntervalMultiplier,
-// retriesBeforeFailover,
-// maxRetriesAfterFailover,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames);
-//
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig1);
-//
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// service0.start();
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-// ClientSession session1 = csf1.createSession(false, true, true);
-//
-// session0.createQueue(address1, address1, null, false, false);
-// session1.createQueue(address1, address1, null, false, false);
-// ClientProducer prod0 = session0.createProducer(address1);
-//
-// ClientConsumer cons1 = session1.createConsumer(address1);
-//
-// session1.start();
-//
-// //Now we will simulate a failure of the message flow connection between server1 and server2
-// //And prevent reconnection for a few tries, then it will reconnect without failing over
-// MessageFlow flow = service0.getServer().getClusterManager().getMessageFlows().get(flowName);
-// Forwarder forwarder = flow.getForwarders().iterator().next();
-// RemotingConnection forwardingConnection = ((ForwarderImpl)forwarder).getForwardingConnection();
-// InVMConnector.failOnCreateConnection = true;
-// InVMConnector.numberOfFailures = retriesBeforeFailover * 2;
-// forwardingConnection.fail(new MessagingException(MessagingException.NOT_CONNECTED));
-//
-// final int numMessages = 10;
-//
-// SimpleString propKey = new SimpleString("propkey");
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0.send(message);
-// }
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage r1 = cons1.receive(500);
-// assertNotNull(r1);
-// assertEquals(i, r1.getProperty(propKey));
-// }
-//
-// //Now fail it again
-//
-// InVMConnector.resetFailures();
-// forwardingConnection = ((ForwarderImpl)forwarder).getForwardingConnection();
-// InVMConnector.failOnCreateConnection = true;
-// InVMConnector.numberOfFailures = retriesBeforeFailover * 2;
-// forwardingConnection.fail(new MessagingException(MessagingException.NOT_CONNECTED));
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0.send(message);
-// }
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage r1 = cons1.receive(500);
-// assertNotNull(r1);
-// assertEquals(i, r1.getProperty(propKey));
-// }
-//
-// session0.close();
-// session1.close();
-//
-// service0.stop();
-// service1.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// }
-
- // Package protected ---------------------------------------------
-
- // Protected -----------------------------------------------------
-
- @Override
- protected void setUp() throws Exception
- {
- }
-
- @Override
- protected void tearDown() throws Exception
- {
- InVMConnector.resetFailures();
-
- assertEquals(0, InVMRegistry.instance.size());
- }
-
- // Private -------------------------------------------------------
-
- // Inner classes -------------------------------------------------
-}
Deleted: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowRestartTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowRestartTest.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowRestartTest.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -1,638 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source Copyright 2005-2008, Red Hat
- * Middleware LLC, and individual contributors by the @authors tag. See the
- * copyright.txt in the distribution for a full listing of individual
- * contributors.
- *
- * This is free software; you can redistribute it and/or modify it under the
- * terms of the GNU Lesser General Public License as published by the Free
- * Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This software is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
- * details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this software; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF
- * site: http://www.fsf.org.
- */
-
-package org.jboss.messaging.tests.integration.cluster.distribution;
-
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL_MULTIPLIER;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_MAX_HOPS;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_USE_DUPLICATE_DETECTION;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.jboss.messaging.core.client.ClientConsumer;
-import org.jboss.messaging.core.client.ClientMessage;
-import org.jboss.messaging.core.client.ClientProducer;
-import org.jboss.messaging.core.client.ClientSession;
-import org.jboss.messaging.core.client.ClientSessionFactory;
-import org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl;
-import org.jboss.messaging.core.config.TransportConfiguration;
-import org.jboss.messaging.core.config.cluster.MessageFlowConfiguration;
-import org.jboss.messaging.core.logging.Logger;
-import org.jboss.messaging.core.remoting.impl.invm.InVMRegistry;
-import org.jboss.messaging.core.remoting.impl.invm.TransportConstants;
-import org.jboss.messaging.core.server.MessagingService;
-import org.jboss.messaging.tests.util.ServiceTestBase;
-import org.jboss.messaging.util.Pair;
-import org.jboss.messaging.util.SimpleString;
-
-/**
- *
- * A MessageFlowRestartTest
- *
- * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
- *
- * Created 24 Nov 2008 14:26:45
- *
- *
- */
-public class MessageFlowRestartTest extends ServiceTestBase
-{
- private static final Logger log = Logger.getLogger(MessageFlowRestartTest.class);
-
- // Constants -----------------------------------------------------
-
- // Attributes ----------------------------------------------------
-
- // Static --------------------------------------------------------
-
- // Constructors --------------------------------------------------
-
- // Public --------------------------------------------------------
-
-
- public void testFoo()
- {
- }
-
-//
-// public void testRestartOutflow() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createClusteredServiceWithParams(0, true, service0Params);
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// service1Params.put(TransportConstants.SERVER_ID_PROP_NAME, 1);
-// MessagingService service1 = createClusteredServiceWithParams(1, true, service1Params);
-//
-// //We don't start server 1 at this point
-//
-// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-//
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params,
-// "connector1");
-// connectors.put(server1tc.getName(), server1tc);
-//
-// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// List<Pair<String, String>> connectorNames = new ArrayList<Pair<String, String>>();
-// connectorNames.add(new Pair<String, String>(server1tc.getName(), null));
-//
-// final SimpleString testAddress = new SimpleString("testaddress");
-//
-// MessageFlowConfiguration ofconfig = new MessageFlowConfiguration("outflow1",
-// testAddress.toString(),
-// null,
-// false,
-// 1,
-// -1,
-// null,
-// DEFAULT_RETRY_INTERVAL,
-// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-// 0,
-// 0,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames);
-//
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig);
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// log.info("starting service0");
-// service0.start();
-//
-// log.info("started service");
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params);
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// session0.createQueue(testAddress, testAddress, null, false, false);
-//
-// ClientProducer prod0 = session0.createProducer(testAddress);
-//
-// ClientConsumer cons0 = session0.createConsumer(testAddress);
-//
-// session0.start();
-//
-// final int numMessages = 10;
-//
-// final SimpleString propKey = new SimpleString("testkey");
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(true);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0.send(message);
-// }
-//
-// log.info("sent messages");
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage rmessage0 = cons0.receive(1000);
-// assertNotNull(rmessage0);
-// assertEquals(i, rmessage0.getProperty(propKey));
-// }
-//
-// // At this point the messages should be in the store and forward queue for server 1
-//
-// // Now shutdown server 0 and start servers 1 and 0
-//
-// service0.stop();
-//
-// service1.start();
-//
-// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-// ClientSession session1 = csf1.createSession(false, true, true);
-//
-// session1.createQueue(testAddress, testAddress, null, false, false);
-//
-// service0.start();
-//
-// csf0 = new ClientSessionFactoryImpl(server0tc);
-// session0 = csf0.createSession(false, true, true);
-//
-// session0.createQueue(testAddress, testAddress, null, false, false);
-//
-// cons0 = session0.createConsumer(testAddress);
-//
-// session0.start();
-//
-// ClientConsumer cons1 = session1.createConsumer(testAddress);
-//
-// session1.start();
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage rmessage0 = cons1.receive(1000);
-// assertNotNull(rmessage0);
-// assertEquals(i, rmessage0.getProperty(propKey));
-// }
-//
-// ClientMessage rmessage = cons0.receive(1000);
-//
-// assertNull(rmessage);
-//
-// service0.stop();
-// service1.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// }
-////
-//// public void testStaticListRoundRobin() throws Exception
-//// {
-//// Map<String, Object> service0Params = new HashMap<String, Object>();
-//// MessagingService service0 = createMessagingService(0, service0Params);
-////
-//// Map<String, Object> service1Params = new HashMap<String, Object>();
-//// MessagingService service1 = createMessagingService(1, service1Params);
-//// service1.start();
-////
-//// Map<String, Object> service2Params = new HashMap<String, Object>();
-//// MessagingService service2 = createMessagingService(2, service2Params);
-//// service2.start();
-////
-//// Map<String, Object> service3Params = new HashMap<String, Object>();
-//// MessagingService service3 = createMessagingService(3, service3Params);
-//// service3.start();
-////
-//// Map<String, Object> service4Params = new HashMap<String, Object>();
-//// MessagingService service4 = createMessagingService(4, service4Params);
-//// service4.start();
-////
-//// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-////
-//// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-//// service1Params,
-//// "connector1");
-//// connectors.put(server1tc.getName(), server1tc);
-////
-//// TransportConfiguration server2tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-//// service2Params,
-//// "connector2");
-//// connectors.put(server2tc.getName(), server2tc);
-////
-//// TransportConfiguration server3tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-//// service3Params,
-//// "connector3");
-//// connectors.put(server3tc.getName(), server3tc);
-////
-//// TransportConfiguration server4tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-//// service4Params,
-//// "connector4");
-//// connectors.put(server4tc.getName(), server4tc);
-////
-//// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-////
-//// List<Pair<String, String>> connectorNames = new ArrayList<Pair<String, String>>();
-//// connectorNames.add(new Pair<String, String>(server1tc.getName(), null));
-//// connectorNames.add(new Pair<String, String>(server2tc.getName(), null));
-//// connectorNames.add(new Pair<String, String>(server3tc.getName(), null));
-//// connectorNames.add(new Pair<String, String>(server4tc.getName(), null));
-////
-//// final SimpleString testAddress = new SimpleString("testaddress");
-////
-//// MessageFlowConfiguration ofconfig = new MessageFlowConfiguration("outflow1",
-//// testAddress.toString(),
-//// null,
-//// true,
-//// 1,
-//// -1,
-//// null,
-//// DEFAULT_RETRY_INTERVAL,
-//// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-//// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-//// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-//// DEFAULT_USE_DUPLICATE_DETECTION,
-//// connectorNames);
-//// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-//// ofconfigs.add(ofconfig);
-//// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-////
-//// service0.start();
-////
-//// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-//// service0Params);
-////
-//// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-//// ClientSession session0 = csf0.createSession(false, true, true);
-////
-//// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-//// ClientSession session1 = csf1.createSession(false, true, true);
-////
-//// ClientSessionFactory csf2 = new ClientSessionFactoryImpl(server2tc);
-//// ClientSession session2 = csf2.createSession(false, true, true);
-////
-//// ClientSessionFactory csf3 = new ClientSessionFactoryImpl(server3tc);
-//// ClientSession session3 = csf3.createSession(false, true, true);
-////
-//// ClientSessionFactory csf4 = new ClientSessionFactoryImpl(server4tc);
-//// ClientSession session4 = csf4.createSession(false, true, true);
-////
-//// session0.createQueue(testAddress, testAddress, null, false, false);
-//// session1.createQueue(testAddress, testAddress, null, false, false);
-//// session2.createQueue(testAddress, testAddress, null, false, false);
-//// session3.createQueue(testAddress, testAddress, null, false, false);
-//// session4.createQueue(testAddress, testAddress, null, false, false);
-////
-//// ClientProducer prod0 = session0.createProducer(testAddress);
-////
-//// ClientConsumer cons0 = session0.createConsumer(testAddress);
-//// ClientConsumer cons1 = session1.createConsumer(testAddress);
-//// ClientConsumer cons2 = session2.createConsumer(testAddress);
-//// ClientConsumer cons3 = session3.createConsumer(testAddress);
-//// ClientConsumer cons4 = session4.createConsumer(testAddress);
-////
-//// session0.start();
-////
-//// session1.start();
-//// session2.start();
-//// session3.start();
-//// session4.start();
-////
-//// final int numMessages = 10;
-////
-//// final SimpleString propKey = new SimpleString("testkey");
-////
-//// for (int i = 0; i < numMessages; i++)
-//// {
-//// ClientMessage message = session0.createClientMessage(false);
-//// message.putIntProperty(propKey, i);
-//// message.getBody().flip();
-////
-//// prod0.send(message);
-//// }
-////
-//// // Refs should be round-robin'd in the same order the connectors are specified in the outflow
-//// // With the local consumer being last since it was created last
-////
-//// ArrayList<ClientConsumer> consumers = new ArrayList<ClientConsumer>();
-////
-//// consumers.add(cons1);
-//// consumers.add(cons2);
-//// consumers.add(cons3);
-//// consumers.add(cons4);
-//// consumers.add(cons0);
-////
-//// int count = 0;
-//// for (int i = 0; i < numMessages; i++)
-//// {
-//// ClientConsumer consumer = consumers.get(count);
-////
-//// count++;
-//// if (count == consumers.size())
-//// {
-//// count = 0;
-//// }
-////
-//// ClientMessage msg = consumer.receive(1000);
-////
-//// assertNotNull(msg);
-////
-//// assertEquals(i, msg.getProperty(propKey));
-////
-//// msg.acknowledge();
-//// }
-////
-//// session0.close();
-//// session1.close();
-//// session2.close();
-//// session3.close();
-//// session4.close();
-////
-//// service0.stop();
-//// service1.stop();
-//// service2.stop();
-//// service3.stop();
-//// service4.stop();
-////
-//// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-//// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-//// assertEquals(0, service2.getServer().getRemotingService().getConnections().size());
-//// assertEquals(0, service3.getServer().getRemotingService().getConnections().size());
-//// assertEquals(0, service4.getServer().getRemotingService().getConnections().size());
-//// }
-////
-////
-//// public void testMultipleFlows() throws Exception
-//// {
-//// Map<String, Object> service0Params = new HashMap<String, Object>();
-//// MessagingService service0 = createMessagingService(0, service0Params);
-////
-//// Map<String, Object> service1Params = new HashMap<String, Object>();
-//// MessagingService service1 = createMessagingService(1, service1Params);
-//// service1.start();
-////
-//// Map<String, Object> service2Params = new HashMap<String, Object>();
-//// MessagingService service2 = createMessagingService(2, service2Params);
-//// service2.start();
-////
-//// Map<String, Object> service3Params = new HashMap<String, Object>();
-//// MessagingService service3 = createMessagingService(3, service3Params);
-//// service3.start();
-////
-//// Map<String, Object> service4Params = new HashMap<String, Object>();
-//// MessagingService service4 = createMessagingService(4, service4Params);
-//// service4.start();
-////
-//// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-////
-//// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-//// service1Params,
-//// "connector1");
-//// connectors.put(server1tc.getName(), server1tc);
-////
-//// TransportConfiguration server2tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-//// service2Params,
-//// "connector2");
-//// connectors.put(server2tc.getName(), server2tc);
-////
-//// TransportConfiguration server3tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-//// service3Params,
-//// "connector3");
-//// connectors.put(server3tc.getName(), server3tc);
-////
-//// TransportConfiguration server4tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-//// service4Params,
-//// "connector4");
-//// connectors.put(server4tc.getName(), server4tc);
-////
-//// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-////
-//// List<Pair<String, String>> connectorNames1 = new ArrayList<Pair<String, String>>();
-//// connectorNames1.add(new Pair<String, String>(server1tc.getName(), null));
-////
-//// List<Pair<String, String>> connectorNames2 = new ArrayList<Pair<String, String>>();
-//// connectorNames2.add(new Pair<String, String>(server2tc.getName(), null));
-////
-//// List<Pair<String, String>> connectorNames3 = new ArrayList<Pair<String, String>>();
-//// connectorNames3.add(new Pair<String, String>(server3tc.getName(), null));
-////
-//// List<Pair<String, String>> connectorNames4 = new ArrayList<Pair<String, String>>();
-//// connectorNames4.add(new Pair<String, String>(server4tc.getName(), null));
-////
-//// final SimpleString testAddress = new SimpleString("testaddress");
-////
-//// MessageFlowConfiguration ofconfig1 = new MessageFlowConfiguration("flow1",
-//// testAddress.toString(),
-//// "beatle='john'",
-//// false,
-//// 1,
-//// -1,
-//// null,
-//// DEFAULT_RETRY_INTERVAL,
-//// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-//// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-//// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-//// DEFAULT_USE_DUPLICATE_DETECTION,
-//// connectorNames1);
-//// MessageFlowConfiguration ofconfig2 = new MessageFlowConfiguration("flow2",
-//// testAddress.toString(),
-//// "beatle='paul'",
-//// false,
-//// 1,
-//// -1,
-//// null,
-//// DEFAULT_RETRY_INTERVAL,
-//// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-//// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-//// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-//// DEFAULT_USE_DUPLICATE_DETECTION,
-//// connectorNames2);
-//// MessageFlowConfiguration ofconfig3 = new MessageFlowConfiguration("flow3",
-//// testAddress.toString(),
-//// "beatle='george'",
-//// false,
-//// 1,
-//// -1,
-//// null,
-//// DEFAULT_RETRY_INTERVAL,
-//// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-//// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-//// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-//// DEFAULT_USE_DUPLICATE_DETECTION,
-//// connectorNames3);
-//// MessageFlowConfiguration ofconfig4 = new MessageFlowConfiguration("flow4",
-//// testAddress.toString(),
-//// "beatle='ringo'",
-//// false,
-//// 1,
-//// -1,
-//// null,
-//// DEFAULT_RETRY_INTERVAL,
-//// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-//// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-//// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-//// DEFAULT_USE_DUPLICATE_DETECTION,
-//// connectorNames4);
-////
-//// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-//// ofconfigs.add(ofconfig1);
-//// ofconfigs.add(ofconfig2);
-//// ofconfigs.add(ofconfig3);
-//// ofconfigs.add(ofconfig4);
-//// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-////
-//// service0.start();
-////
-//// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-//// service0Params);
-////
-//// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-//// ClientSession session0 = csf0.createSession(false, true, true);
-////
-//// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-//// ClientSession session1 = csf1.createSession(false, true, true);
-////
-//// ClientSessionFactory csf2 = new ClientSessionFactoryImpl(server2tc);
-//// ClientSession session2 = csf2.createSession(false, true, true);
-////
-//// ClientSessionFactory csf3 = new ClientSessionFactoryImpl(server3tc);
-//// ClientSession session3 = csf3.createSession(false, true, true);
-////
-//// ClientSessionFactory csf4 = new ClientSessionFactoryImpl(server4tc);
-//// ClientSession session4 = csf4.createSession(false, true, true);
-////
-//// session0.createQueue(testAddress, testAddress, null, false, false);
-//// session1.createQueue(testAddress, testAddress, null, false, false);
-//// session2.createQueue(testAddress, testAddress, null, false, false);
-//// session3.createQueue(testAddress, testAddress, null, false, false);
-//// session4.createQueue(testAddress, testAddress, null, false, false);
-////
-//// ClientProducer prod0 = session0.createProducer(testAddress);
-////
-//// ClientConsumer cons1 = session1.createConsumer(testAddress);
-//// ClientConsumer cons2 = session2.createConsumer(testAddress);
-//// ClientConsumer cons3 = session3.createConsumer(testAddress);
-//// ClientConsumer cons4 = session4.createConsumer(testAddress);
-////
-//// session1.start();
-//// session2.start();
-//// session3.start();
-//// session4.start();
-////
-//// SimpleString propKey = new SimpleString("beatle");
-////
-//// ClientMessage messageJohn = session0.createClientMessage(false);
-//// messageJohn.putStringProperty(propKey, new SimpleString("john"));
-//// messageJohn.getBody().flip();
-////
-//// ClientMessage messagePaul = session0.createClientMessage(false);
-//// messagePaul.putStringProperty(propKey, new SimpleString("paul"));
-//// messagePaul.getBody().flip();
-////
-//// ClientMessage messageGeorge = session0.createClientMessage(false);
-//// messageGeorge.putStringProperty(propKey, new SimpleString("george"));
-//// messageGeorge.getBody().flip();
-////
-//// ClientMessage messageRingo = session0.createClientMessage(false);
-//// messageRingo.putStringProperty(propKey, new SimpleString("ringo"));
-//// messageRingo.getBody().flip();
-////
-//// ClientMessage messageOsama = session0.createClientMessage(false);
-//// messageOsama.putStringProperty(propKey, new SimpleString("osama"));
-//// messageOsama.getBody().flip();
-////
-//// prod0.send(messageJohn);
-//// prod0.send(messagePaul);
-//// prod0.send(messageGeorge);
-//// prod0.send(messageRingo);
-//// prod0.send(messageOsama);
-////
-//// ClientMessage r1 = cons1.receive(1000);
-//// assertNotNull(r1);
-//// assertEquals(new SimpleString("john"), r1.getProperty(propKey));
-//// r1 = cons1.receiveImmediate();
-//// assertNull(r1);
-////
-//// ClientMessage r2 = cons2.receive(1000);
-//// assertNotNull(r2);
-//// assertEquals(new SimpleString("paul"), r2.getProperty(propKey));
-//// r2 = cons2.receiveImmediate();
-//// assertNull(r2);
-////
-//// ClientMessage r3 = cons3.receive(1000);
-//// assertNotNull(r3);
-//// assertEquals(new SimpleString("george"), r3.getProperty(propKey));
-//// r3 = cons3.receiveImmediate();
-//// assertNull(r3);
-////
-//// ClientMessage r4 = cons4.receive(1000);
-//// assertNotNull(r4);
-//// assertEquals(new SimpleString("ringo"), r4.getProperty(propKey));
-//// r4 = cons4.receiveImmediate();
-//// assertNull(r4);
-////
-//// session0.close();
-//// session1.close();
-//// session2.close();
-//// session3.close();
-//// session4.close();
-////
-//// service0.stop();
-//// service1.stop();
-//// service2.stop();
-//// service3.stop();
-//// service4.stop();
-////
-//// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-//// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-//// assertEquals(0, service2.getServer().getRemotingService().getConnections().size());
-//// assertEquals(0, service3.getServer().getRemotingService().getConnections().size());
-//// assertEquals(0, service4.getServer().getRemotingService().getConnections().size());
-//// }
-//
- // Package protected ---------------------------------------------
-
- // Protected -----------------------------------------------------
-
- @Override
- protected void setUp() throws Exception
- {
- super.clearData();
- }
-
- @Override
- protected void tearDown() throws Exception
- {
- assertEquals(0, InVMRegistry.instance.size());
- }
-
- // Private -------------------------------------------------------
-
- // Inner classes -------------------------------------------------
-}
-
-
Deleted: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowTestBase.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowTestBase.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowTestBase.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -1,99 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005-2008, Red Hat Middleware LLC, and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-package org.jboss.messaging.tests.integration.cluster.distribution;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import junit.framework.TestCase;
-
-import org.jboss.messaging.core.config.Configuration;
-import org.jboss.messaging.core.config.TransportConfiguration;
-import org.jboss.messaging.core.config.impl.ConfigurationImpl;
-import org.jboss.messaging.core.remoting.impl.invm.TransportConstants;
-import org.jboss.messaging.core.server.MessagingService;
-import org.jboss.messaging.core.server.impl.MessagingServiceImpl;
-
-/**
- * A MessageFlowTestBase
- *
- * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
- *
- * Created 21 Nov 2008 10:32:23
- *
- *
- */
-public abstract class MessageFlowTestBase extends TestCase
-{
- public void testFoo()
- {
- }
-
-
- protected MessagingService createMessagingServiceNIO(final int id, final Map<String, Object> params)
- {
- Configuration serviceConf = new ConfigurationImpl();
- serviceConf.setClustered(true);
- serviceConf.setSecurityEnabled(false);
- serviceConf.setJournalMinFiles(2);
- serviceConf.setJournalFileSize(100 * 1024);
- params.put(TransportConstants.SERVER_ID_PROP_NAME, id);
- serviceConf.getAcceptorConfigurations()
- .add(new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMAcceptorFactory",
- params));
- MessagingService service = MessagingServiceImpl.newMessagingService(serviceConf);
- return service;
- }
-
- protected MessagingService createMessagingService(final int id, final Map<String, Object> params)
- {
- Configuration serviceConf = new ConfigurationImpl();
- serviceConf.setClustered(true);
- serviceConf.setSecurityEnabled(false);
- params.put(TransportConstants.SERVER_ID_PROP_NAME, id);
- serviceConf.getAcceptorConfigurations()
- .add(new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMAcceptorFactory",
- params));
- MessagingService service = MessagingServiceImpl.newNullStorageMessagingService(serviceConf);
- return service;
- }
-
- protected MessagingService createMessagingService(final int id, final Map<String, Object> params, final boolean backup)
- {
- Configuration serviceConf = new ConfigurationImpl();
- serviceConf.setClustered(true);
- serviceConf.setSecurityEnabled(false);
- serviceConf.setBackup(backup);
- params.put(TransportConstants.SERVER_ID_PROP_NAME, id);
- serviceConf.getAcceptorConfigurations()
- .add(new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMAcceptorFactory",
- params));
- MessagingService service = MessagingServiceImpl.newNullStorageMessagingService(serviceConf);
- return service;
- }
-
- protected MessagingService createMessagingService(final int id)
- {
- return this.createMessagingService(id, new HashMap<String, Object>());
- }
-}
Deleted: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowTransformerTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowTransformerTest.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowTransformerTest.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -1,196 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source Copyright 2005-2008, Red Hat
- * Middleware LLC, and individual contributors by the @authors tag. See the
- * copyright.txt in the distribution for a full listing of individual
- * contributors.
- *
- * This is free software; you can redistribute it and/or modify it under the
- * terms of the GNU Lesser General Public License as published by the Free
- * Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This software is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
- * details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this software; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF
- * site: http://www.fsf.org.
- */
-
-package org.jboss.messaging.tests.integration.cluster.distribution;
-
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_AFTER_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_BEFORE_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL_MULTIPLIER;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_MAX_HOPS;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_USE_DUPLICATE_DETECTION;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.jboss.messaging.core.client.ClientConsumer;
-import org.jboss.messaging.core.client.ClientMessage;
-import org.jboss.messaging.core.client.ClientProducer;
-import org.jboss.messaging.core.client.ClientSession;
-import org.jboss.messaging.core.client.ClientSessionFactory;
-import org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl;
-import org.jboss.messaging.core.config.TransportConfiguration;
-import org.jboss.messaging.core.config.cluster.MessageFlowConfiguration;
-import org.jboss.messaging.core.logging.Logger;
-import org.jboss.messaging.core.remoting.impl.invm.InVMRegistry;
-import org.jboss.messaging.core.server.MessagingService;
-import org.jboss.messaging.util.Pair;
-import org.jboss.messaging.util.SimpleString;
-
-/**
- *
- * A MessageFlowWildcardTest
- *
- * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
- *
- * Created 15 Nov 2008 08:19:07
- *
- *
- */
-public class MessageFlowTransformerTest extends MessageFlowTestBase
-{
- private static final Logger log = Logger.getLogger(MessageFlowTransformerTest.class);
-
- // Constants -----------------------------------------------------
-
- // Attributes ----------------------------------------------------
-
- // Static --------------------------------------------------------
-
- // Constructors --------------------------------------------------
-
-// // Public --------------------------------------------------------
-
- public void testFoo()
- {
- }
-
-//
-// public void testWithTransformer() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createMessagingService(0, service0Params);
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// MessagingService service1 = createMessagingService(1, service1Params);
-// service1.start();
-//
-// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params,
-// "connector1");
-// connectors.put(server1tc.getName(), server1tc);
-// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// final SimpleString address1 = new SimpleString("address1");
-//
-// List<Pair<String, String>> connectorNames = new ArrayList<Pair<String, String>>();
-// connectorNames.add(new Pair<String, String>(server1tc.getName(), null));
-//
-// MessageFlowConfiguration ofconfig = new MessageFlowConfiguration("outflow1",
-// "address1",
-// null,
-// false,
-// 1,
-// -1,
-// "org.jboss.messaging.tests.integration.cluster.distribution.SimpleTransformer",
-// DEFAULT_RETRY_INTERVAL,
-// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames);
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig);
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// service0.start();
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params);
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-//
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-//
-// ClientSession session1 = csf1.createSession(false, true, true);
-//
-// session0.createQueue(address1, address1, null, false, false);
-//
-// session1.createQueue(address1, address1, null, false, false);
-//
-// ClientProducer prod0 = session0.createProducer(address1);
-//
-// ClientConsumer cons1 = session1.createConsumer(address1);
-//
-// session1.start();
-//
-// final int numMessages = 100;
-//
-// final SimpleString propKey = new SimpleString("wibble");
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putStringProperty(propKey, new SimpleString("bing"));
-// message.getBody().putString("doo be doo be doo be doo");
-// message.getBody().flip();
-//
-// prod0.send(message);
-// }
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage rmessage = cons1.receive(1000);
-//
-// assertNotNull(rmessage);
-//
-// SimpleString val = (SimpleString)rmessage.getProperty(propKey);
-// assertEquals(new SimpleString("bong"), val);
-//
-// String sval = rmessage.getBody().getString();
-// assertEquals("dee be dee be dee be dee", sval);
-// }
-//
-// service0.stop();
-// service1.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// }
-
- // Package protected ---------------------------------------------
-
- // Protected -----------------------------------------------------
-
- @Override
- protected void setUp() throws Exception
- {
- }
-
- @Override
- protected void tearDown() throws Exception
- {
- assertEquals(0, InVMRegistry.instance.size());
- }
-
- // Private -------------------------------------------------------
-
- // Inner classes -------------------------------------------------
-}
Deleted: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowWildcardTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowWildcardTest.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowWildcardTest.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -1,306 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source Copyright 2005-2008, Red Hat
- * Middleware LLC, and individual contributors by the @authors tag. See the
- * copyright.txt in the distribution for a full listing of individual
- * contributors.
- *
- * This is free software; you can redistribute it and/or modify it under the
- * terms of the GNU Lesser General Public License as published by the Free
- * Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This software is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
- * details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this software; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF
- * site: http://www.fsf.org.
- */
-
-package org.jboss.messaging.tests.integration.cluster.distribution;
-
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_AFTER_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_BEFORE_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL_MULTIPLIER;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_MAX_HOPS;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_USE_DUPLICATE_DETECTION;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.jboss.messaging.core.client.ClientConsumer;
-import org.jboss.messaging.core.client.ClientMessage;
-import org.jboss.messaging.core.client.ClientProducer;
-import org.jboss.messaging.core.client.ClientSession;
-import org.jboss.messaging.core.client.ClientSessionFactory;
-import org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl;
-import org.jboss.messaging.core.config.TransportConfiguration;
-import org.jboss.messaging.core.config.cluster.MessageFlowConfiguration;
-import org.jboss.messaging.core.logging.Logger;
-import org.jboss.messaging.core.remoting.impl.invm.InVMRegistry;
-import org.jboss.messaging.core.server.MessagingService;
-import org.jboss.messaging.util.Pair;
-import org.jboss.messaging.util.SimpleString;
-
-/**
- *
- * A MessageFlowWildcardTest
- *
- * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
- *
- * Created 15 Nov 2008 08:19:07
- *
- *
- */
-public class MessageFlowWildcardTest extends MessageFlowTestBase
-{
- private static final Logger log = Logger.getLogger(MessageFlowWildcardTest.class);
-
- // Constants -----------------------------------------------------
-
- // Attributes ----------------------------------------------------
-
- // Static --------------------------------------------------------
-
- // Constructors --------------------------------------------------
-
- // Public --------------------------------------------------------
-//
-// public void testWithWildcard() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createMessagingService(0, service0Params);
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// MessagingService service1 = createMessagingService(1, service1Params);
-// service1.start();
-//
-// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params,
-// "connector1");
-// connectors.put(server1tc.getName(), server1tc);
-// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// final SimpleString address1 = new SimpleString("cheese.stilton");
-//
-// final SimpleString address2 = new SimpleString("cheese.wensleydale");
-//
-// final SimpleString address3 = new SimpleString("wine.shiraz");
-//
-// final SimpleString address4 = new SimpleString("wine.cabernet");
-//
-// final SimpleString match1 = new SimpleString("cheese.#");
-//
-// List<Pair<String, String>> connectorNames = new ArrayList<Pair<String, String>>();
-// connectorNames.add(new Pair<String, String>(server1tc.getName(), null));
-//
-// MessageFlowConfiguration ofconfig = new MessageFlowConfiguration("outflow1",
-// match1.toString(),
-// null,
-// false,
-// 1,
-// -1,
-// null,
-// DEFAULT_RETRY_INTERVAL,
-// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames);
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig);
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// service0.start();
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params);
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-//
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-//
-// ClientSession session1 = csf1.createSession(false, true, true);
-//
-// session0.createQueue(address1, address1, null, false, false);
-// session0.createQueue(address2, address2, null, false, false);
-// session0.createQueue(address3, address3, null, false, false);
-// session0.createQueue(address4, address4, null, false, false);
-//
-// session1.createQueue(address1, address1, null, false, false);
-// session1.createQueue(address2, address2, null, false, false);
-// session1.createQueue(address3, address3, null, false, false);
-// session1.createQueue(address4, address4, null, false, false);
-//
-// ClientProducer prod0_1 = session0.createProducer(address1);
-// ClientProducer prod0_2 = session0.createProducer(address2);
-// ClientProducer prod0_3 = session0.createProducer(address3);
-// ClientProducer prod0_4 = session0.createProducer(address4);
-//
-// ClientConsumer cons0_1 = session0.createConsumer(address1);
-// ClientConsumer cons0_2 = session0.createConsumer(address2);
-// ClientConsumer cons0_3 = session0.createConsumer(address3);
-// ClientConsumer cons0_4 = session0.createConsumer(address4);
-//
-// ClientConsumer cons1_1 = session1.createConsumer(address1);
-// ClientConsumer cons1_2 = session1.createConsumer(address2);
-// ClientConsumer cons1_3 = session1.createConsumer(address3);
-// ClientConsumer cons1_4 = session1.createConsumer(address4);
-//
-// session0.start();
-//
-// session1.start();
-//
-// final int numMessages = 100;
-//
-// final SimpleString propKey = new SimpleString("testkey");
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0_1.send(message);
-// }
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0_2.send(message);
-// }
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0_3.send(message);
-// }
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0_4.send(message);
-// }
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage rmessage1 = cons0_1.receive(1000);
-//
-// assertNotNull(rmessage1);
-//
-// assertEquals(i, rmessage1.getProperty(propKey));
-//
-// ClientMessage rmessage2 = cons0_2.receive(1000);
-//
-// assertNotNull(rmessage2);
-//
-// assertEquals(i, rmessage2.getProperty(propKey));
-//
-// ClientMessage rmessage3 = cons0_3.receive(1000);
-//
-// assertNotNull(rmessage3);
-//
-// assertEquals(i, rmessage3.getProperty(propKey));
-//
-// ClientMessage rmessage4 = cons0_4.receive(1000);
-//
-// assertNotNull(rmessage4);
-//
-// assertEquals(i, rmessage4.getProperty(propKey));
-// }
-//
-// ClientMessage rmessage1 = cons0_1.receiveImmediate();
-//
-// assertNull(rmessage1);
-//
-// ClientMessage rmessage2 = cons0_2.receiveImmediate();
-//
-// assertNull(rmessage2);
-//
-// ClientMessage rmessage3 = cons0_3.receiveImmediate();
-//
-// assertNull(rmessage3);
-//
-// ClientMessage rmessage4 = cons0_4.receiveImmediate();
-//
-// assertNull(rmessage4);
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// rmessage1 = cons1_1.receive(1000);
-//
-// assertNotNull(rmessage1);
-//
-// assertEquals(i, rmessage1.getProperty(propKey));
-//
-// rmessage2 = cons1_2.receive(1000);
-//
-// assertNotNull(rmessage2);
-//
-// assertEquals(i, rmessage2.getProperty(propKey));
-// }
-//
-// rmessage1 = cons1_1.receiveImmediate();
-//
-// assertNull(rmessage1);
-//
-// rmessage2 = cons1_2.receiveImmediate();
-//
-// assertNull(rmessage2);
-//
-// rmessage3 = cons1_3.receiveImmediate();
-//
-// assertNull(rmessage3);
-//
-// rmessage4 = cons1_4.receiveImmediate();
-//
-// assertNull(rmessage4);
-//
-// session0.close();
-//
-// session1.close();
-//
-// service0.stop();
-// service1.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// }
-
- // Package protected ---------------------------------------------
-
- // Protected -----------------------------------------------------
-
- @Override
- protected void setUp() throws Exception
- {
- }
-
- @Override
- protected void tearDown() throws Exception
- {
- assertEquals(0, InVMRegistry.instance.size());
- }
-
- // Private -------------------------------------------------------
-
- // Inner classes -------------------------------------------------
-}
Deleted: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowWithFilterTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowWithFilterTest.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/MessageFlowWithFilterTest.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -1,231 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source Copyright 2005-2008, Red Hat
- * Middleware LLC, and individual contributors by the @authors tag. See the
- * copyright.txt in the distribution for a full listing of individual
- * contributors.
- *
- * This is free software; you can redistribute it and/or modify it under the
- * terms of the GNU Lesser General Public License as published by the Free
- * Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This software is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
- * details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this software; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF
- * site: http://www.fsf.org.
- */
-
-package org.jboss.messaging.tests.integration.cluster.distribution;
-
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_AFTER_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_BEFORE_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL_MULTIPLIER;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_MAX_HOPS;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_USE_DUPLICATE_DETECTION;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.jboss.messaging.core.client.ClientConsumer;
-import org.jboss.messaging.core.client.ClientMessage;
-import org.jboss.messaging.core.client.ClientProducer;
-import org.jboss.messaging.core.client.ClientSession;
-import org.jboss.messaging.core.client.ClientSessionFactory;
-import org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl;
-import org.jboss.messaging.core.config.TransportConfiguration;
-import org.jboss.messaging.core.config.cluster.MessageFlowConfiguration;
-import org.jboss.messaging.core.logging.Logger;
-import org.jboss.messaging.core.remoting.impl.invm.InVMRegistry;
-import org.jboss.messaging.core.server.MessagingService;
-import org.jboss.messaging.util.Pair;
-import org.jboss.messaging.util.SimpleString;
-
-/**
- *
- * A MessageFlowWithFilterTest
- *
- * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
- *
- * Created 15 Nov 2008 08:58:49
- *
- *
- */
-public class MessageFlowWithFilterTest extends MessageFlowTestBase
-{
- private static final Logger log = Logger.getLogger(MessageFlowWithFilterTest.class);
-
- // Constants -----------------------------------------------------
-
- // Attributes ----------------------------------------------------
-
- // Static --------------------------------------------------------
-
- // Constructors --------------------------------------------------
-
- // Public --------------------------------------------------------
-//
-// public void testWithWildcard() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createMessagingService(0, service0Params);
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// MessagingService service1 = createMessagingService(1, service1Params);
-// service1.start();
-//
-// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params,
-// "connector1");
-// connectors.put(server1tc.getName(), server1tc);
-// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// final SimpleString address1 = new SimpleString("testaddress");
-//
-// final String filter = "selectorkey='ORANGES'";
-//
-// List<Pair<String, String>> connectorNames = new ArrayList<Pair<String, String>>();
-// connectorNames.add(new Pair<String, String>(server1tc.getName(), null));
-//
-// MessageFlowConfiguration ofconfig = new MessageFlowConfiguration("outflow1",
-// address1.toString(),
-// filter,
-// false,
-// 1,
-// -1,
-// null,
-// DEFAULT_RETRY_INTERVAL,
-// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames);
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig);
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// service0.start();
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params);
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-//
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-//
-// ClientSession session1 = csf1.createSession(false, true, true);
-//
-// session0.createQueue(address1, address1, null, false, false);
-//
-// session1.createQueue(address1, address1, null, false, false);
-//
-// ClientProducer prod0_1 = session0.createProducer(address1);
-//
-// ClientConsumer cons0_1 = session0.createConsumer(address1);
-//
-// ClientConsumer cons1_1 = session1.createConsumer(address1);
-//
-// session0.start();
-//
-// session1.start();
-//
-// final int numMessages = 100;
-//
-// final SimpleString propKey = new SimpleString("testkey");
-//
-// final SimpleString propKey2 = new SimpleString("selectorkey");
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.putStringProperty(propKey2, new SimpleString("ORANGES"));
-// message.getBody().flip();
-//
-// prod0_1.send(message);
-// }
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.putStringProperty(propKey2, new SimpleString("APPLES"));
-// message.getBody().flip();
-//
-// prod0_1.send(message);
-// }
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage rmessage1 = cons0_1.receive(1000);
-//
-// assertNotNull(rmessage1);
-//
-// assertEquals(i, rmessage1.getProperty(propKey));
-//
-// ClientMessage rmessage2 = cons1_1.receive(1000);
-//
-// assertNotNull(rmessage2);
-//
-// assertEquals(i, rmessage2.getProperty(propKey));
-// }
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage rmessage1 = cons0_1.receive(1000);
-//
-// assertNotNull(rmessage1);
-//
-// assertEquals(i, rmessage1.getProperty(propKey));
-// }
-//
-// ClientMessage rmessage1 = cons0_1.receiveImmediate();
-//
-// assertNull(rmessage1);
-//
-// ClientMessage rmessage2 = cons1_1.receiveImmediate();
-//
-// assertNull(rmessage2);
-//
-// session0.close();
-//
-// session1.close();
-//
-// service0.stop();
-// service1.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// }
-
- // Package protected ---------------------------------------------
-
- // Protected -----------------------------------------------------
-
- @Override
- protected void setUp() throws Exception
- {
- }
-
- @Override
- protected void tearDown() throws Exception
- {
- assertEquals(0, InVMRegistry.instance.size());
- }
-
- // Private -------------------------------------------------------
-
- // Inner classes -------------------------------------------------
-}
Deleted: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/SimpleTransformer.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/SimpleTransformer.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/SimpleTransformer.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -1,74 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source
- * Copyright 2005-2008, Red Hat Middleware LLC, and individual contributors
- * by the @authors tag. See the copyright.txt in the distribution for a
- * full listing of individual contributors.
- *
- * This is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation; either version 2.1 of
- * the License, or (at your option) any later version.
- *
- * This software is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Lesser General Public License for more details.
- *
- * You should have received a copy of the GNU Lesser General Public
- * License along with this software; if not, write to the Free
- * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
- * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
- */
-
-
-package org.jboss.messaging.tests.integration.cluster.distribution;
-
-import org.jboss.messaging.core.logging.Logger;
-import org.jboss.messaging.core.remoting.spi.MessagingBuffer;
-import org.jboss.messaging.core.server.ServerMessage;
-import org.jboss.messaging.core.server.cluster.Transformer;
-import org.jboss.messaging.util.SimpleString;
-
-/**
- * A SimpleTransformer
- *
- * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
- *
- * Created 21 Nov 2008 11:44:37
- *
- *
- */
-public class SimpleTransformer implements Transformer
-{
- private static final Logger log = Logger.getLogger(SimpleTransformer.class);
-
- public ServerMessage transform(final ServerMessage message)
- {
- SimpleString oldProp = (SimpleString)message.getProperty(new SimpleString("wibble"));
-
- if (!oldProp.equals(new SimpleString("bing")))
- {
- throw new IllegalStateException("Wrong property value!!");
- }
-
- //Change a property
- message.putStringProperty(new SimpleString("wibble"), new SimpleString("bong"));
-
- //Change the body
- MessagingBuffer buffer = message.getBody();
-
- String str = buffer.getString();
-
- if (!str.equals("doo be doo be doo be doo"))
- {
- throw new IllegalStateException("Wrong body!!");
- }
-
- buffer.flip();
-
- buffer.putString("dee be dee be dee be dee");
-
- return message;
- }
-
-}
Deleted: trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/StaticFlowTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/StaticFlowTest.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/cluster/distribution/StaticFlowTest.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -1,671 +0,0 @@
-/*
- * JBoss, Home of Professional Open Source Copyright 2005-2008, Red Hat
- * Middleware LLC, and individual contributors by the @authors tag. See the
- * copyright.txt in the distribution for a full listing of individual
- * contributors.
- *
- * This is free software; you can redistribute it and/or modify it under the
- * terms of the GNU Lesser General Public License as published by the Free
- * Software Foundation; either version 2.1 of the License, or (at your option)
- * any later version.
- *
- * This software is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
- * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
- * details.
- *
- * You should have received a copy of the GNU Lesser General Public License
- * along with this software; if not, write to the Free Software Foundation,
- * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA, or see the FSF
- * site: http://www.fsf.org.
- */
-
-package org.jboss.messaging.tests.integration.cluster.distribution;
-
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_AFTER_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_MAX_RETRIES_BEFORE_FAILOVER;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL;
-import static org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl.DEFAULT_RETRY_INTERVAL_MULTIPLIER;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_MAX_HOPS;
-import static org.jboss.messaging.core.config.impl.ConfigurationImpl.DEFAULT_USE_DUPLICATE_DETECTION;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
-
-import org.jboss.messaging.core.client.ClientConsumer;
-import org.jboss.messaging.core.client.ClientMessage;
-import org.jboss.messaging.core.client.ClientProducer;
-import org.jboss.messaging.core.client.ClientSession;
-import org.jboss.messaging.core.client.ClientSessionFactory;
-import org.jboss.messaging.core.client.impl.ClientSessionFactoryImpl;
-import org.jboss.messaging.core.config.TransportConfiguration;
-import org.jboss.messaging.core.config.cluster.MessageFlowConfiguration;
-import org.jboss.messaging.core.logging.Logger;
-import org.jboss.messaging.core.remoting.impl.invm.InVMRegistry;
-import org.jboss.messaging.core.server.MessagingService;
-import org.jboss.messaging.util.Pair;
-import org.jboss.messaging.util.SimpleString;
-
-/**
- *
- * A StaticFlowTest
- *
- * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
- *
- * Created 24 Nov 2008 14:26:45
- *
- *
- */
-public class StaticFlowTest extends MessageFlowTestBase
-{
- private static final Logger log = Logger.getLogger(StaticFlowTest.class);
-
- // Constants -----------------------------------------------------
-
- // Attributes ----------------------------------------------------
-
- // Static --------------------------------------------------------
-
- // Constructors --------------------------------------------------
-
- // Public --------------------------------------------------------
-//
-// public void testStaticListOutflow() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createMessagingService(0, service0Params);
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// MessagingService service1 = createMessagingService(1, service1Params);
-// service1.start();
-//
-// Map<String, Object> service2Params = new HashMap<String, Object>();
-// MessagingService service2 = createMessagingService(2, service2Params);
-// service2.start();
-//
-// Map<String, Object> service3Params = new HashMap<String, Object>();
-// MessagingService service3 = createMessagingService(3, service3Params);
-// service3.start();
-//
-// Map<String, Object> service4Params = new HashMap<String, Object>();
-// MessagingService service4 = createMessagingService(4, service4Params);
-// service4.start();
-//
-// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-//
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params,
-// "connector1");
-// connectors.put(server1tc.getName(), server1tc);
-//
-// TransportConfiguration server2tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service2Params,
-// "connector2");
-// connectors.put(server2tc.getName(), server2tc);
-//
-// TransportConfiguration server3tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service3Params,
-// "connector3");
-// connectors.put(server3tc.getName(), server3tc);
-//
-// TransportConfiguration server4tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service4Params,
-// "connector4");
-// connectors.put(server4tc.getName(), server4tc);
-//
-// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// List<Pair<String, String>> connectorNames = new ArrayList<Pair<String, String>>();
-// connectorNames.add(new Pair<String, String>(server1tc.getName(), null));
-// connectorNames.add(new Pair<String, String>(server2tc.getName(), null));
-// connectorNames.add(new Pair<String, String>(server3tc.getName(), null));
-// connectorNames.add(new Pair<String, String>(server4tc.getName(), null));
-//
-// final SimpleString testAddress = new SimpleString("testaddress");
-//
-// MessageFlowConfiguration ofconfig = new MessageFlowConfiguration("outflow1",
-// testAddress.toString(),
-// null,
-// false,
-// 1,
-// -1,
-// null,
-// DEFAULT_RETRY_INTERVAL,
-// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames);
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig);
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// service0.start();
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params);
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-// ClientSession session1 = csf1.createSession(false, true, true);
-//
-// ClientSessionFactory csf2 = new ClientSessionFactoryImpl(server2tc);
-// ClientSession session2 = csf2.createSession(false, true, true);
-//
-// ClientSessionFactory csf3 = new ClientSessionFactoryImpl(server3tc);
-// ClientSession session3 = csf3.createSession(false, true, true);
-//
-// ClientSessionFactory csf4 = new ClientSessionFactoryImpl(server4tc);
-// ClientSession session4 = csf4.createSession(false, true, true);
-//
-// session0.createQueue(testAddress, testAddress, null, false, false);
-// session1.createQueue(testAddress, testAddress, null, false, false);
-// session2.createQueue(testAddress, testAddress, null, false, false);
-// session3.createQueue(testAddress, testAddress, null, false, false);
-// session4.createQueue(testAddress, testAddress, null, false, false);
-//
-// ClientProducer prod0 = session0.createProducer(testAddress);
-//
-// ClientConsumer cons0 = session0.createConsumer(testAddress);
-// ClientConsumer cons1 = session1.createConsumer(testAddress);
-// ClientConsumer cons2 = session2.createConsumer(testAddress);
-// ClientConsumer cons3 = session3.createConsumer(testAddress);
-// ClientConsumer cons4 = session4.createConsumer(testAddress);
-//
-// session0.start();
-//
-// session1.start();
-// session2.start();
-// session3.start();
-// session4.start();
-//
-// final int numMessages = 100;
-//
-// final SimpleString propKey = new SimpleString("testkey");
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0.send(message);
-// }
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage rmessage0 = cons0.receive(1000);
-// assertNotNull(rmessage0);
-// assertEquals(i, rmessage0.getProperty(propKey));
-//
-// ClientMessage rmessage1 = cons1.receive(1000);
-// assertNotNull(rmessage1);
-// assertEquals(i, rmessage1.getProperty(propKey));
-//
-// ClientMessage rmessage2 = cons2.receive(1000);
-// assertNotNull(rmessage2);
-// assertEquals(i, rmessage2.getProperty(propKey));
-//
-// ClientMessage rmessage3 = cons3.receive(1000);
-// assertNotNull(rmessage3);
-// assertEquals(i, rmessage3.getProperty(propKey));
-//
-// ClientMessage rmessage4 = cons4.receive(1000);
-// assertNotNull(rmessage4);
-// assertEquals(i, rmessage4.getProperty(propKey));
-// }
-//
-// session0.close();
-// session1.close();
-// session2.close();
-// session3.close();
-// session4.close();
-//
-// service0.stop();
-// service1.stop();
-// service2.stop();
-// service3.stop();
-// service4.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service2.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service3.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service4.getServer().getRemotingService().getConnections().size());
-// }
-//
-// public void testStaticListRoundRobin() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createMessagingService(0, service0Params);
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// MessagingService service1 = createMessagingService(1, service1Params);
-// service1.start();
-//
-// Map<String, Object> service2Params = new HashMap<String, Object>();
-// MessagingService service2 = createMessagingService(2, service2Params);
-// service2.start();
-//
-// Map<String, Object> service3Params = new HashMap<String, Object>();
-// MessagingService service3 = createMessagingService(3, service3Params);
-// service3.start();
-//
-// Map<String, Object> service4Params = new HashMap<String, Object>();
-// MessagingService service4 = createMessagingService(4, service4Params);
-// service4.start();
-//
-// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-//
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params,
-// "connector1");
-// connectors.put(server1tc.getName(), server1tc);
-//
-// TransportConfiguration server2tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service2Params,
-// "connector2");
-// connectors.put(server2tc.getName(), server2tc);
-//
-// TransportConfiguration server3tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service3Params,
-// "connector3");
-// connectors.put(server3tc.getName(), server3tc);
-//
-// TransportConfiguration server4tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service4Params,
-// "connector4");
-// connectors.put(server4tc.getName(), server4tc);
-//
-// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// List<Pair<String, String>> connectorNames = new ArrayList<Pair<String, String>>();
-// connectorNames.add(new Pair<String, String>(server1tc.getName(), null));
-// connectorNames.add(new Pair<String, String>(server2tc.getName(), null));
-// connectorNames.add(new Pair<String, String>(server3tc.getName(), null));
-// connectorNames.add(new Pair<String, String>(server4tc.getName(), null));
-//
-// final SimpleString testAddress = new SimpleString("testaddress");
-//
-// MessageFlowConfiguration ofconfig = new MessageFlowConfiguration("outflow1",
-// testAddress.toString(),
-// null,
-// true,
-// 1,
-// -1,
-// null,
-// DEFAULT_RETRY_INTERVAL,
-// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames);
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig);
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// service0.start();
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params);
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-// ClientSession session1 = csf1.createSession(false, true, true);
-//
-// ClientSessionFactory csf2 = new ClientSessionFactoryImpl(server2tc);
-// ClientSession session2 = csf2.createSession(false, true, true);
-//
-// ClientSessionFactory csf3 = new ClientSessionFactoryImpl(server3tc);
-// ClientSession session3 = csf3.createSession(false, true, true);
-//
-// ClientSessionFactory csf4 = new ClientSessionFactoryImpl(server4tc);
-// ClientSession session4 = csf4.createSession(false, true, true);
-//
-// session0.createQueue(testAddress, testAddress, null, false, false);
-// session1.createQueue(testAddress, testAddress, null, false, false);
-// session2.createQueue(testAddress, testAddress, null, false, false);
-// session3.createQueue(testAddress, testAddress, null, false, false);
-// session4.createQueue(testAddress, testAddress, null, false, false);
-//
-// ClientProducer prod0 = session0.createProducer(testAddress);
-//
-// ClientConsumer cons0 = session0.createConsumer(testAddress);
-// ClientConsumer cons1 = session1.createConsumer(testAddress);
-// ClientConsumer cons2 = session2.createConsumer(testAddress);
-// ClientConsumer cons3 = session3.createConsumer(testAddress);
-// ClientConsumer cons4 = session4.createConsumer(testAddress);
-//
-// session0.start();
-//
-// session1.start();
-// session2.start();
-// session3.start();
-// session4.start();
-//
-// final int numMessages = 10;
-//
-// final SimpleString propKey = new SimpleString("testkey");
-//
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientMessage message = session0.createClientMessage(false);
-// message.putIntProperty(propKey, i);
-// message.getBody().flip();
-//
-// prod0.send(message);
-// }
-//
-// // Refs should be round-robin'd in the same order the connectors are specified in the outflow
-// // With the local consumer being last since it was created last
-//
-// ArrayList<ClientConsumer> consumers = new ArrayList<ClientConsumer>();
-//
-// consumers.add(cons1);
-// consumers.add(cons2);
-// consumers.add(cons3);
-// consumers.add(cons4);
-// consumers.add(cons0);
-//
-// int count = 0;
-// for (int i = 0; i < numMessages; i++)
-// {
-// ClientConsumer consumer = consumers.get(count);
-//
-// count++;
-// if (count == consumers.size())
-// {
-// count = 0;
-// }
-//
-// ClientMessage msg = consumer.receive(1000);
-//
-// assertNotNull(msg);
-//
-// assertEquals(i, msg.getProperty(propKey));
-//
-// msg.acknowledge();
-// }
-//
-// session0.close();
-// session1.close();
-// session2.close();
-// session3.close();
-// session4.close();
-//
-// service0.stop();
-// service1.stop();
-// service2.stop();
-// service3.stop();
-// service4.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service2.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service3.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service4.getServer().getRemotingService().getConnections().size());
-// }
-//
-//
-// public void testMultipleFlows() throws Exception
-// {
-// Map<String, Object> service0Params = new HashMap<String, Object>();
-// MessagingService service0 = createMessagingService(0, service0Params);
-//
-// Map<String, Object> service1Params = new HashMap<String, Object>();
-// MessagingService service1 = createMessagingService(1, service1Params);
-// service1.start();
-//
-// Map<String, Object> service2Params = new HashMap<String, Object>();
-// MessagingService service2 = createMessagingService(2, service2Params);
-// service2.start();
-//
-// Map<String, Object> service3Params = new HashMap<String, Object>();
-// MessagingService service3 = createMessagingService(3, service3Params);
-// service3.start();
-//
-// Map<String, Object> service4Params = new HashMap<String, Object>();
-// MessagingService service4 = createMessagingService(4, service4Params);
-// service4.start();
-//
-// Map<String, TransportConfiguration> connectors = new HashMap<String, TransportConfiguration>();
-//
-// TransportConfiguration server1tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service1Params,
-// "connector1");
-// connectors.put(server1tc.getName(), server1tc);
-//
-// TransportConfiguration server2tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service2Params,
-// "connector2");
-// connectors.put(server2tc.getName(), server2tc);
-//
-// TransportConfiguration server3tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service3Params,
-// "connector3");
-// connectors.put(server3tc.getName(), server3tc);
-//
-// TransportConfiguration server4tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service4Params,
-// "connector4");
-// connectors.put(server4tc.getName(), server4tc);
-//
-// service0.getServer().getConfiguration().setConnectorConfigurations(connectors);
-//
-// List<Pair<String, String>> connectorNames1 = new ArrayList<Pair<String, String>>();
-// connectorNames1.add(new Pair<String, String>(server1tc.getName(), null));
-//
-// List<Pair<String, String>> connectorNames2 = new ArrayList<Pair<String, String>>();
-// connectorNames2.add(new Pair<String, String>(server2tc.getName(), null));
-//
-// List<Pair<String, String>> connectorNames3 = new ArrayList<Pair<String, String>>();
-// connectorNames3.add(new Pair<String, String>(server3tc.getName(), null));
-//
-// List<Pair<String, String>> connectorNames4 = new ArrayList<Pair<String, String>>();
-// connectorNames4.add(new Pair<String, String>(server4tc.getName(), null));
-//
-// final SimpleString testAddress = new SimpleString("testaddress");
-//
-// MessageFlowConfiguration ofconfig1 = new MessageFlowConfiguration("flow1",
-// testAddress.toString(),
-// "beatle='john'",
-// false,
-// 1,
-// -1,
-// null,
-// DEFAULT_RETRY_INTERVAL,
-// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames1);
-// MessageFlowConfiguration ofconfig2 = new MessageFlowConfiguration("flow2",
-// testAddress.toString(),
-// "beatle='paul'",
-// false,
-// 1,
-// -1,
-// null,
-// DEFAULT_RETRY_INTERVAL,
-// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames2);
-// MessageFlowConfiguration ofconfig3 = new MessageFlowConfiguration("flow3",
-// testAddress.toString(),
-// "beatle='george'",
-// false,
-// 1,
-// -1,
-// null,
-// DEFAULT_RETRY_INTERVAL,
-// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames3);
-// MessageFlowConfiguration ofconfig4 = new MessageFlowConfiguration("flow4",
-// testAddress.toString(),
-// "beatle='ringo'",
-// false,
-// 1,
-// -1,
-// null,
-// DEFAULT_RETRY_INTERVAL,
-// DEFAULT_RETRY_INTERVAL_MULTIPLIER,
-// DEFAULT_MAX_RETRIES_BEFORE_FAILOVER,
-// DEFAULT_MAX_RETRIES_AFTER_FAILOVER,
-// DEFAULT_USE_DUPLICATE_DETECTION,
-// DEFAULT_MAX_HOPS,
-// connectorNames4);
-//
-// Set<MessageFlowConfiguration> ofconfigs = new HashSet<MessageFlowConfiguration>();
-// ofconfigs.add(ofconfig1);
-// ofconfigs.add(ofconfig2);
-// ofconfigs.add(ofconfig3);
-// ofconfigs.add(ofconfig4);
-// service0.getServer().getConfiguration().setMessageFlowConfigurations(ofconfigs);
-//
-// service0.start();
-//
-// TransportConfiguration server0tc = new TransportConfiguration("org.jboss.messaging.core.remoting.impl.invm.InVMConnectorFactory",
-// service0Params);
-//
-// ClientSessionFactory csf0 = new ClientSessionFactoryImpl(server0tc);
-// ClientSession session0 = csf0.createSession(false, true, true);
-//
-// ClientSessionFactory csf1 = new ClientSessionFactoryImpl(server1tc);
-// ClientSession session1 = csf1.createSession(false, true, true);
-//
-// ClientSessionFactory csf2 = new ClientSessionFactoryImpl(server2tc);
-// ClientSession session2 = csf2.createSession(false, true, true);
-//
-// ClientSessionFactory csf3 = new ClientSessionFactoryImpl(server3tc);
-// ClientSession session3 = csf3.createSession(false, true, true);
-//
-// ClientSessionFactory csf4 = new ClientSessionFactoryImpl(server4tc);
-// ClientSession session4 = csf4.createSession(false, true, true);
-//
-// session0.createQueue(testAddress, testAddress, null, false, false);
-// session1.createQueue(testAddress, testAddress, null, false, false);
-// session2.createQueue(testAddress, testAddress, null, false, false);
-// session3.createQueue(testAddress, testAddress, null, false, false);
-// session4.createQueue(testAddress, testAddress, null, false, false);
-//
-// ClientProducer prod0 = session0.createProducer(testAddress);
-//
-// ClientConsumer cons1 = session1.createConsumer(testAddress);
-// ClientConsumer cons2 = session2.createConsumer(testAddress);
-// ClientConsumer cons3 = session3.createConsumer(testAddress);
-// ClientConsumer cons4 = session4.createConsumer(testAddress);
-//
-// session1.start();
-// session2.start();
-// session3.start();
-// session4.start();
-//
-// SimpleString propKey = new SimpleString("beatle");
-//
-// ClientMessage messageJohn = session0.createClientMessage(false);
-// messageJohn.putStringProperty(propKey, new SimpleString("john"));
-// messageJohn.getBody().flip();
-//
-// ClientMessage messagePaul = session0.createClientMessage(false);
-// messagePaul.putStringProperty(propKey, new SimpleString("paul"));
-// messagePaul.getBody().flip();
-//
-// ClientMessage messageGeorge = session0.createClientMessage(false);
-// messageGeorge.putStringProperty(propKey, new SimpleString("george"));
-// messageGeorge.getBody().flip();
-//
-// ClientMessage messageRingo = session0.createClientMessage(false);
-// messageRingo.putStringProperty(propKey, new SimpleString("ringo"));
-// messageRingo.getBody().flip();
-//
-// ClientMessage messageOsama = session0.createClientMessage(false);
-// messageOsama.putStringProperty(propKey, new SimpleString("osama"));
-// messageOsama.getBody().flip();
-//
-// prod0.send(messageJohn);
-// prod0.send(messagePaul);
-// prod0.send(messageGeorge);
-// prod0.send(messageRingo);
-// prod0.send(messageOsama);
-//
-// ClientMessage r1 = cons1.receive(1000);
-// assertNotNull(r1);
-// assertEquals(new SimpleString("john"), r1.getProperty(propKey));
-// r1 = cons1.receiveImmediate();
-// assertNull(r1);
-//
-// ClientMessage r2 = cons2.receive(1000);
-// assertNotNull(r2);
-// assertEquals(new SimpleString("paul"), r2.getProperty(propKey));
-// r2 = cons2.receiveImmediate();
-// assertNull(r2);
-//
-// ClientMessage r3 = cons3.receive(1000);
-// assertNotNull(r3);
-// assertEquals(new SimpleString("george"), r3.getProperty(propKey));
-// r3 = cons3.receiveImmediate();
-// assertNull(r3);
-//
-// ClientMessage r4 = cons4.receive(1000);
-// assertNotNull(r4);
-// assertEquals(new SimpleString("ringo"), r4.getProperty(propKey));
-// r4 = cons4.receiveImmediate();
-// assertNull(r4);
-//
-// session0.close();
-// session1.close();
-// session2.close();
-// session3.close();
-// session4.close();
-//
-// service0.stop();
-// service1.stop();
-// service2.stop();
-// service3.stop();
-// service4.stop();
-//
-// assertEquals(0, service0.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service1.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service2.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service3.getServer().getRemotingService().getConnections().size());
-// assertEquals(0, service4.getServer().getRemotingService().getConnections().size());
-// }
-
- // Package protected ---------------------------------------------
-
- // Protected -----------------------------------------------------
-
- @Override
- protected void setUp() throws Exception
- {
- }
-
- @Override
- protected void tearDown() throws Exception
- {
- assertEquals(0, InVMRegistry.instance.size());
- }
-
- // Private -------------------------------------------------------
-
- // Inner classes -------------------------------------------------
-}
-
Modified: trunk/tests/src/org/jboss/messaging/tests/integration/management/BridgeControlTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/management/BridgeControlTest.java 2009-01-20 18:08:57 UTC (rev 5670)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/management/BridgeControlTest.java 2009-01-20 22:13:24 UTC (rev 5671)
@@ -77,8 +77,7 @@
randomDouble(),
randomPositiveInt(),
randomPositiveInt(),
- randomBoolean(),
- randomPositiveInt(),
+ randomBoolean(),
connectorPair);
}
More information about the jboss-cvs-commits
mailing list