[jboss-cvs] JBoss Messaging SVN: r4520 - in trunk: src/config and 20 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu Jun 19 09:27:18 EDT 2008
Author: timfox
Date: 2008-06-19 09:27:17 -0400 (Thu, 19 Jun 2008)
New Revision: 4520
Modified:
trunk/examples/messaging/src/org/jboss/messaging/example/SimpleExample.java
trunk/src/config/jbm-beans.xml
trunk/src/config/jbm-standalone-beans.xml
trunk/src/main/org/jboss/messaging/core/client/ClientConnection.java
trunk/src/main/org/jboss/messaging/core/client/impl/ClientBrowserImpl.java
trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionFactoryImpl.java
trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionImpl.java
trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionInternal.java
trunk/src/main/org/jboss/messaging/core/client/impl/ClientConsumerImpl.java
trunk/src/main/org/jboss/messaging/core/client/impl/ClientProducerImpl.java
trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionImpl.java
trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionInternal.java
trunk/src/main/org/jboss/messaging/core/management/MessagingServerManagement.java
trunk/src/main/org/jboss/messaging/core/management/impl/MessagingServerManagementImpl.java
trunk/src/main/org/jboss/messaging/core/remoting/impl/RemotingConnectionImpl.java
trunk/src/main/org/jboss/messaging/core/remoting/impl/mina/MinaConnector.java
trunk/src/main/org/jboss/messaging/core/security/impl/SecurityStoreImpl.java
trunk/src/main/org/jboss/messaging/core/server/ConnectionManager.java
trunk/src/main/org/jboss/messaging/core/server/MessagingServer.java
trunk/src/main/org/jboss/messaging/core/server/ServerConnection.java
trunk/src/main/org/jboss/messaging/core/server/impl/ConnectionManagerImpl.java
trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerImpl.java
trunk/src/main/org/jboss/messaging/core/server/impl/ServerBrowserImpl.java
trunk/src/main/org/jboss/messaging/core/server/impl/ServerConnectionImpl.java
trunk/src/main/org/jboss/messaging/core/server/impl/ServerConsumerImpl.java
trunk/src/main/org/jboss/messaging/core/server/impl/ServerProducerImpl.java
trunk/src/main/org/jboss/messaging/core/server/impl/ServerSessionImpl.java
trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java
trunk/src/main/org/jboss/messaging/util/ByteBufferWrapper.java
trunk/tests/jms-tests/src/org/jboss/test/messaging/JBMServerTestCase.java
trunk/tests/jms-tests/src/org/jboss/test/messaging/tools/container/LocalTestServer.java
trunk/tests/jms-tests/src/org/jboss/test/messaging/tools/container/RMITestServer.java
trunk/tests/jms-tests/src/org/jboss/test/messaging/tools/container/Server.java
trunk/tests/src/org/jboss/messaging/tests/integration/core/remoting/impl/ClientCrashTest.java
trunk/tests/src/org/jboss/messaging/tests/integration/core/remoting/impl/PacketFilterTest.java
trunk/tests/src/org/jboss/messaging/tests/integration/jms/server/impl/JMSServerManagerimplTest.java
trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientBrowserImplTest.java
trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientConnectionFactoryImplTest.java
trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientConnectionImplTest.java
trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientConsumerImplTest.java
trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientProducerImplTest.java
trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientSessionImplTest.java
trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/impl/ConnectionManagerTest.java
trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/impl/INVMServerTest.java
trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/impl/mina/MinaAcceptorTest.java
trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/network/ClientNetworkFailureTest.java
trunk/tests/src/org/jboss/messaging/tests/unit/core/server/impl/MessagingServerImplTest.java
trunk/tests/src/org/jboss/messaging/tests/unit/core/server/impl/ServerConnectionImplTest.java
Log:
Invoking the law of demeter
Modified: trunk/examples/messaging/src/org/jboss/messaging/example/SimpleExample.java
===================================================================
--- trunk/examples/messaging/src/org/jboss/messaging/example/SimpleExample.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/examples/messaging/src/org/jboss/messaging/example/SimpleExample.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -69,11 +69,6 @@
messagingService = MessagingServiceImpl.newNullStorageMessagingServer(configuration);
//start the server
messagingService.start();
- //add a new binding
-
- SimpleString atestq = new SimpleString("atestq");
-
- messagingService.getServer().getPostOffice().addBinding(atestq, atestq, null, false, false);
//then we create a client as normal
Location location = new LocationImpl(TransportType.TCP, "localhost", 5400);
@@ -82,6 +77,8 @@
clientConnection = connectionFactory.createConnection();
ClientSession clientSession = clientConnection.createClientSession(false, true, true, 100, true, false);
+ SimpleString atestq = new SimpleString("atestq");
+ clientSession.createQueue(atestq, atestq, null, false, true);
ClientProducer clientProducer = clientSession.createProducer(atestq);
ClientMessage message = new ClientMessageImpl(JBossTextMessage.TYPE, false, 0,
System.currentTimeMillis(), (byte) 1);
Modified: trunk/src/config/jbm-beans.xml
===================================================================
--- trunk/src/config/jbm-beans.xml 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/config/jbm-beans.xml 2008-06-19 13:27:17 UTC (rev 4520)
@@ -23,6 +23,7 @@
</property>
</bean>-->
+<!--
<bean name="MessagingServerManagement"
class="org.jboss.messaging.core.management.impl.MessagingServerManagementImpl">
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.messaging:service=MessagingServerManagement",exposedInterface=org.jboss.messaging.core.management.MessagingServerManagement.class)</annotation>
@@ -30,6 +31,7 @@
<inject bean="MessagingServer"/>
</property>
</bean>
+-->
<bean name="MessagingServer" class="org.jboss.messaging.core.server.impl.MessagingServerImpl">
<property name="storageManager">
@@ -64,9 +66,11 @@
<bean name="JMSServerManager" class="org.jboss.messaging.jms.server.impl.JMSServerManagerImpl">
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.messaging:service=JMSServerManager",exposedInterface=org.jboss.messaging.jms.server.JMSServerManager.class)</annotation>
- <property name="messagingServerManagement">
- <inject bean="MessagingServerManagement"/>
- </property>
+ <constructor>
+ <parameter>
+ <inject bean="MessagingServer" property="serverManagement"/>
+ </parameter>
+ </constructor>
</bean>
<bean name="JMSServerDeployer" class="org.jboss.messaging.jms.server.impl.JMSServerDeployer">
Modified: trunk/src/config/jbm-standalone-beans.xml
===================================================================
--- trunk/src/config/jbm-standalone-beans.xml 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/config/jbm-standalone-beans.xml 2008-06-19 13:27:17 UTC (rev 4520)
@@ -26,7 +26,7 @@
<bean name="JBMSecurityManager" class="org.jboss.messaging.core.security.impl.JBMSecurityManagerImpl">
<constructor>
- <parameter>false</parameter>
+ <parameter>false</parameter>
</constructor>
</bean>
@@ -41,6 +41,7 @@
</property>
</bean>
+<!--
<bean name="MessagingServerManagement"
class="org.jboss.messaging.core.management.impl.MessagingServerManagementImpl">
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.messaging:service=MessagingServerManagement",exposedInterface=org.jboss.messaging.core.management.MessagingServerManagement.class)</annotation>
@@ -48,6 +49,7 @@
<inject bean="MessagingServer"/>
</property>
</bean>
+-->
<bean name="MessagingServer" class="org.jboss.messaging.core.server.impl.MessagingServerImpl">
<depends>QueueSettingsDeployer</depends>
@@ -83,9 +85,11 @@
<bean name="JMSServerManager" class="org.jboss.messaging.jms.server.impl.JMSServerManagerImpl">
<annotation>@org.jboss.aop.microcontainer.aspects.jmx.JMX(name="jboss.messaging:service=JMSServerManager",exposedInterface=org.jboss.messaging.jms.server.JMSServerManager.class)</annotation>
- <property name="messagingServerManagement">
- <inject bean="MessagingServerManagement"/>
- </property>
+ <constructor>
+ <parameter>
+ <inject bean="MessagingServer" property="serverManagement"/>
+ </parameter>
+ </constructor>
</bean>
<bean name="JMSServerDeployer" class="org.jboss.messaging.jms.server.impl.JMSServerDeployer">
Modified: trunk/src/main/org/jboss/messaging/core/client/ClientConnection.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/ClientConnection.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/client/ClientConnection.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -51,7 +51,5 @@
Version getServerVersion();
- ClientConnectionFactory getConnectionFactory();
-
void cleanUp();
}
Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ClientBrowserImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ClientBrowserImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientBrowserImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -51,19 +51,25 @@
private final RemotingConnection remotingConnection;
+ private final long sessionTargetID;
+
private volatile boolean closed;
// Static ---------------------------------------------------------------------------------------
// Constructors ---------------------------------------------------------------------------------
- public ClientBrowserImpl(final ClientSessionInternal session, final long serverTargetID)
+ public ClientBrowserImpl(final ClientSessionInternal session, final long serverTargetID,
+ final RemotingConnection remotingConnection,
+ final long sessionTargetID)
{
- this.remotingConnection = session.getConnection().getRemotingConnection();
+ this.remotingConnection = remotingConnection;
this.serverTargetID = serverTargetID;
this.session = session;
+
+ this.sessionTargetID = sessionTargetID;
}
// ClientBrowser implementation -----------------------------------------------------------------
@@ -77,7 +83,7 @@
try
{
- remotingConnection.sendBlocking(serverTargetID, session.getServerTargetID(), new PacketImpl(PacketImpl.CLOSE));
+ remotingConnection.sendBlocking(serverTargetID, sessionTargetID, new PacketImpl(PacketImpl.CLOSE));
}
finally
{
@@ -103,7 +109,7 @@
{
checkClosed();
- remotingConnection.sendBlocking(serverTargetID, session.getServerTargetID(), new PacketImpl(PacketImpl.SESS_BROWSER_RESET));
+ remotingConnection.sendBlocking(serverTargetID, sessionTargetID, new PacketImpl(PacketImpl.SESS_BROWSER_RESET));
}
public boolean hasNextMessage() throws MessagingException
@@ -111,7 +117,7 @@
checkClosed();
SessionBrowserHasNextMessageResponseMessage response =
- (SessionBrowserHasNextMessageResponseMessage)remotingConnection.sendBlocking(serverTargetID, session.getServerTargetID(), new PacketImpl(PacketImpl.SESS_BROWSER_HASNEXTMESSAGE));
+ (SessionBrowserHasNextMessageResponseMessage)remotingConnection.sendBlocking(serverTargetID, sessionTargetID, new PacketImpl(PacketImpl.SESS_BROWSER_HASNEXTMESSAGE));
return response.hasNext();
}
@@ -121,7 +127,7 @@
checkClosed();
ReceiveMessage response =
- (ReceiveMessage)remotingConnection.sendBlocking(serverTargetID, session.getServerTargetID(), new PacketImpl(PacketImpl.SESS_BROWSER_NEXTMESSAGE));
+ (ReceiveMessage)remotingConnection.sendBlocking(serverTargetID, sessionTargetID, new PacketImpl(PacketImpl.SESS_BROWSER_NEXTMESSAGE));
return response.getClientMessage();
}
Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionFactoryImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionFactoryImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionFactoryImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -27,6 +27,7 @@
import org.jboss.messaging.core.client.Location;
import org.jboss.messaging.core.exception.MessagingException;
import org.jboss.messaging.core.logging.Logger;
+import org.jboss.messaging.core.remoting.PacketDispatcher;
import org.jboss.messaging.core.remoting.RemotingConnection;
import org.jboss.messaging.core.remoting.RemotingConnectionFactory;
import org.jboss.messaging.core.remoting.impl.RemotingConnectionFactoryImpl;
@@ -185,7 +186,8 @@
CreateConnectionResponse response =
(CreateConnectionResponse)remotingConnection.sendBlocking(0, 0, request);
- return new ClientConnectionImpl(this, response.getConnectionTargetID(), remotingConnection, response.getServerVersion());
+ return new ClientConnectionImpl(this, response.getConnectionTargetID(), remotingConnection,
+ response.getServerVersion(), remotingConnection.getPacketDispatcher());
}
catch (Throwable t)
{
Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -21,11 +21,15 @@
*/
package org.jboss.messaging.core.client.impl;
+import java.util.HashSet;
+import java.util.Set;
+
import org.jboss.messaging.core.client.ClientConnectionFactory;
import org.jboss.messaging.core.client.ClientSession;
import org.jboss.messaging.core.client.RemotingSessionListener;
import org.jboss.messaging.core.exception.MessagingException;
import org.jboss.messaging.core.logging.Logger;
+import org.jboss.messaging.core.remoting.PacketDispatcher;
import org.jboss.messaging.core.remoting.RemotingConnection;
import org.jboss.messaging.core.remoting.impl.wireformat.ConnectionCreateSessionMessage;
import org.jboss.messaging.core.remoting.impl.wireformat.ConnectionCreateSessionResponseMessage;
@@ -33,9 +37,6 @@
import org.jboss.messaging.core.version.Version;
import org.jboss.messaging.util.ConcurrentHashSet;
-import java.util.HashSet;
-import java.util.Set;
-
/**
* The client-side Connection connectionFactory class.
*
@@ -69,6 +70,8 @@
private final ClientConnectionFactory connectionFactory;
+ private final PacketDispatcher dispatcher;
+
private volatile boolean closed;
// Static ---------------------------------------------------------------------------------------
@@ -78,7 +81,8 @@
public ClientConnectionImpl(final ClientConnectionFactory connectionFactory,
final long serverTargetID,
final RemotingConnection connection,
- final Version serverVersion)
+ final Version serverVersion,
+ final PacketDispatcher dispatcher)
{
this.connectionFactory = connectionFactory;
@@ -87,6 +91,8 @@
this.remotingConnection = connection;
this.serverVersion = serverVersion;
+
+ this.dispatcher = dispatcher;
}
// ClientConnection implementation --------------------------------------------------------------
@@ -104,7 +110,8 @@
ClientSessionInternal session =
new ClientSessionImpl(this, response.getSessionID(), xa, ackBatchSize, cacheProducers,
- autoCommitSends, autoCommitAcks, blockOnAcknowledge);
+ autoCommitSends, autoCommitAcks, blockOnAcknowledge,
+ remotingConnection, connectionFactory, dispatcher);
addSession(session);
@@ -201,10 +208,10 @@
return serverVersion;
}
- public ClientConnectionFactory getConnectionFactory()
- {
- return connectionFactory;
- }
+// public ClientConnectionFactory getConnectionFactory()
+// {
+// return connectionFactory;
+// }
// Public ---------------------------------------------------------------------------------------
Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionInternal.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionInternal.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionInternal.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -37,11 +37,12 @@
*/
public interface ClientConnectionInternal extends ClientConnection
{
- RemotingConnection getRemotingConnection();
-
void addSession(ClientSessionInternal session);
void removeSession(ClientSessionInternal session);
Set<ClientSession> getSessions();
+
+ //For testing only
+ RemotingConnection getRemotingConnection();
}
Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ClientConsumerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ClientConsumerImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientConsumerImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -22,20 +22,21 @@
package org.jboss.messaging.core.client.impl;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Future;
+import java.util.concurrent.TimeUnit;
+
import org.jboss.messaging.core.client.ClientMessage;
import org.jboss.messaging.core.client.MessageHandler;
import org.jboss.messaging.core.exception.MessagingException;
import org.jboss.messaging.core.list.PriorityLinkedList;
import org.jboss.messaging.core.list.impl.PriorityLinkedListImpl;
import org.jboss.messaging.core.logging.Logger;
+import org.jboss.messaging.core.remoting.PacketDispatcher;
import org.jboss.messaging.core.remoting.RemotingConnection;
import org.jboss.messaging.core.remoting.impl.wireformat.ConsumerFlowCreditMessage;
import org.jboss.messaging.core.remoting.impl.wireformat.PacketImpl;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Future;
-import java.util.concurrent.TimeUnit;
-
/**
* @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
* @author <a href="mailto:ovidiu at feodorov.com">Ovidiu Feodorov</a>
@@ -69,7 +70,11 @@
private final ExecutorService sessionExecutor;
+ private final long sessionTargetID;
+
private final RemotingConnection remotingConnection;
+
+ private final PacketDispatcher dispatcher;
private final int clientWindowSize;
@@ -107,7 +112,11 @@
public ClientConsumerImpl(final ClientSessionInternal session, final long targetID,
final long clientTargetID,
final int clientWindowSize,
- final boolean direct)
+ final boolean direct,
+ final RemotingConnection remotingConnection,
+ final PacketDispatcher dispatcher,
+ final ExecutorService executorService,
+ final long sessionTargetID)
{
this.targetID = targetID;
@@ -115,10 +124,14 @@
this.session = session;
- this.sessionExecutor = session.getExecutorService();
+ this.sessionTargetID = sessionTargetID;
- this.remotingConnection = session.getConnection().getRemotingConnection();
+ this.sessionExecutor = executorService;
+ this.remotingConnection = remotingConnection;
+
+ this.dispatcher = dispatcher;
+
this.clientWindowSize = clientWindowSize;
this.direct = direct;
@@ -273,9 +286,9 @@
receiverThread = null;
- remotingConnection.sendBlocking(targetID, session.getServerTargetID(), new PacketImpl(PacketImpl.CLOSE));
+ remotingConnection.sendBlocking(targetID, sessionTargetID, new PacketImpl(PacketImpl.CLOSE));
- remotingConnection.getPacketDispatcher().unregister(clientTargetID);
+ dispatcher.unregister(clientTargetID);
}
finally
{
@@ -305,7 +318,7 @@
receiverThread = null;
- remotingConnection.getPacketDispatcher().unregister(clientTargetID);
+ dispatcher.unregister(clientTargetID);
}
finally
{
@@ -320,8 +333,6 @@
}
}
-
-
public boolean isClosed()
{
return closed;
@@ -463,7 +474,7 @@
if (creditsToSend >= clientWindowSize)
{
- remotingConnection.sendOneWay(targetID, session.getServerTargetID(), new ConsumerFlowCreditMessage(creditsToSend));
+ remotingConnection.sendOneWay(targetID, sessionTargetID, new ConsumerFlowCreditMessage(creditsToSend));
creditsToSend = 0;
}
Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ClientProducerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ClientProducerImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientProducerImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -22,17 +22,18 @@
package org.jboss.messaging.core.client.impl;
+import java.util.concurrent.Semaphore;
+
import org.jboss.messaging.core.client.AcknowledgementHandler;
import org.jboss.messaging.core.client.ClientMessage;
import org.jboss.messaging.core.exception.MessagingException;
import org.jboss.messaging.core.logging.Logger;
+import org.jboss.messaging.core.remoting.PacketDispatcher;
import org.jboss.messaging.core.remoting.RemotingConnection;
import org.jboss.messaging.core.remoting.impl.wireformat.ProducerSendMessage;
import org.jboss.messaging.util.SimpleString;
import org.jboss.messaging.util.TokenBucketLimiter;
-import java.util.concurrent.Semaphore;
-
/**
* The client-side Producer connectionFactory class.
*
@@ -64,6 +65,8 @@
private final RemotingConnection remotingConnection;
+ private final PacketDispatcher dispatcher;
+
private volatile boolean closed;
//For limit throttling
@@ -81,7 +84,9 @@
private final boolean creditFlowControl;
private final int initialWindowSize;
-
+
+ private final long sessionTargetID;
+
// Static ---------------------------------------------------------------------------------------
// Constructors ---------------------------------------------------------------------------------
@@ -93,7 +98,10 @@
final TokenBucketLimiter rateLimiter,
final boolean blockOnNonPersistentSend,
final boolean blockOnPersistentSend,
- final int initialCredits)
+ final int initialCredits,
+ final RemotingConnection remotingConnection,
+ final PacketDispatcher dispatcher,
+ final long sessionTargetID)
{
this.session = session;
@@ -103,8 +111,12 @@
this.address = address;
- this.remotingConnection = session.getConnection().getRemotingConnection();
+ this.remotingConnection = remotingConnection;
+ this.dispatcher = dispatcher;
+
+ this.sessionTargetID = sessionTargetID;
+
this.rateLimiter = rateLimiter;
this.blockOnNonPersistentSend = blockOnNonPersistentSend;
@@ -158,7 +170,7 @@
session.removeProducer(this);
- remotingConnection.getPacketDispatcher().unregister(clientTargetID);
+ dispatcher.unregister(clientTargetID);
closed = true;
}
@@ -167,7 +179,7 @@
{
session.removeProducer(this);
- remotingConnection.getPacketDispatcher().unregister(clientTargetID);
+ dispatcher.unregister(clientTargetID);
closed = true;
}
@@ -241,11 +253,11 @@
if (sendBlocking)
{
- remotingConnection.sendBlocking(serverTargetID, session.getServerTargetID(), message);
+ remotingConnection.sendBlocking(serverTargetID, sessionTargetID, message);
}
else
{
- remotingConnection.sendOneWay(serverTargetID, session.getServerTargetID(), message);
+ remotingConnection.sendOneWay(serverTargetID, sessionTargetID, message);
}
//We only flow control with non-anonymous producers
Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -21,24 +21,61 @@
*/
package org.jboss.messaging.core.client.impl;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+
+import javax.transaction.xa.XAException;
+import javax.transaction.xa.XAResource;
+import javax.transaction.xa.Xid;
+
import org.jboss.messaging.core.client.ClientBrowser;
+import org.jboss.messaging.core.client.ClientConnectionFactory;
import org.jboss.messaging.core.client.ClientConsumer;
import org.jboss.messaging.core.client.ClientProducer;
import org.jboss.messaging.core.exception.MessagingException;
import org.jboss.messaging.core.logging.Logger;
import org.jboss.messaging.core.remoting.Packet;
+import org.jboss.messaging.core.remoting.PacketDispatcher;
import org.jboss.messaging.core.remoting.RemotingConnection;
-import org.jboss.messaging.core.remoting.impl.wireformat.*;
+import org.jboss.messaging.core.remoting.impl.wireformat.ConsumerFlowCreditMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.PacketImpl;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionAcknowledgeMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionAddDestinationMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionBindingQueryMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionBindingQueryResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCancelMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCreateBrowserMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCreateBrowserResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCreateConsumerMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCreateConsumerResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCreateProducerMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCreateProducerResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCreateQueueMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionDeleteQueueMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionQueueQueryMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionQueueQueryResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionRemoveDestinationMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXACommitMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAEndMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAForgetMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAGetInDoubtXidsResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAGetTimeoutResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAJoinMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAPrepareMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAResumeMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXARollbackMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXASetTimeoutMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXASetTimeoutResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAStartMessage;
import org.jboss.messaging.util.SimpleString;
import org.jboss.messaging.util.TokenBucketLimiterImpl;
-import javax.transaction.xa.XAException;
-import javax.transaction.xa.XAResource;
-import javax.transaction.xa.Xid;
-import java.util.*;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-
/**
* @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
* @author <a href="mailto:ovidiu at feodorov.com">Ovidiu Feodorov</a>
@@ -82,6 +119,10 @@
private final Map<SimpleString, ClientProducerInternal> producerCache;
+ private final ClientConnectionFactory connectionFactory;
+
+ private final PacketDispatcher dispatcher;
+
private volatile boolean closed;
private boolean acked = true;
@@ -113,7 +154,10 @@
final boolean xa,
final int lazyAckBatchSize, final boolean cacheProducers,
final boolean autoCommitSends, final boolean autoCommitAcks,
- final boolean blockOnAcknowledge) throws MessagingException
+ final boolean blockOnAcknowledge,
+ final RemotingConnection remotingConnection,
+ final ClientConnectionFactory connectionFactory,
+ final PacketDispatcher dispatcher) throws MessagingException
{
if (lazyAckBatchSize < -1 || lazyAckBatchSize == 0)
{
@@ -124,8 +168,12 @@
this.connection = connection;
- this.remotingConnection = connection.getRemotingConnection();
+ this.remotingConnection = remotingConnection;
+ this.connectionFactory = connectionFactory;
+
+ this.dispatcher = dispatcher;
+
this.cacheProducers = cacheProducers;
//TODO - we should use OrderedExecutorFactory and a pool here
@@ -224,8 +272,8 @@
checkClosed();
return createConsumer(queueName, filterString, noLocal, autoDeleteQueue, direct,
- connection.getConnectionFactory().getDefaultConsumerWindowSize(),
- connection.getConnectionFactory().getDefaultConsumerMaxRate());
+ connectionFactory.getDefaultConsumerWindowSize(),
+ connectionFactory.getDefaultConsumerMaxRate());
}
public ClientConsumer createConsumer(final SimpleString queueName, final SimpleString filterString, final boolean noLocal,
@@ -234,7 +282,7 @@
{
checkClosed();
- long clientTargetID = remotingConnection.getPacketDispatcher().generateID();
+ long clientTargetID = dispatcher.generateID();
SessionCreateConsumerMessage request =
new SessionCreateConsumerMessage(clientTargetID, queueName, filterString, noLocal, autoDeleteQueue,
@@ -268,11 +316,12 @@
}
ClientConsumerInternal consumer =
- new ClientConsumerImpl(this, response.getConsumerTargetID(), clientTargetID, clientWindowSize, direct);
+ new ClientConsumerImpl(this, response.getConsumerTargetID(), clientTargetID, clientWindowSize, direct,
+ remotingConnection, dispatcher, executorService, serverTargetID);
addConsumer(consumer);
- remotingConnection.getPacketDispatcher().register(new ClientConsumerPacketHandler(consumer, clientTargetID));
+ dispatcher.register(new ClientConsumerPacketHandler(consumer, clientTargetID));
//Now we send window size credits to start the consumption
//We even send it if windowSize == -1, since we need to start the consumer
@@ -296,7 +345,7 @@
SessionCreateBrowserResponseMessage response = (SessionCreateBrowserResponseMessage)remotingConnection.sendBlocking(serverTargetID, serverTargetID, request);
- ClientBrowser browser = new ClientBrowserImpl(this, response.getBrowserTargetID());
+ ClientBrowser browser = new ClientBrowserImpl(this, response.getBrowserTargetID(), remotingConnection, serverTargetID);
addBrowser(browser);
@@ -307,8 +356,8 @@
{
checkClosed();
- return createProducer(address, connection.getConnectionFactory().getDefaultProducerWindowSize(),
- connection.getConnectionFactory().getDefaultProducerMaxRate());
+ return createProducer(address, connectionFactory.getDefaultProducerWindowSize(),
+ connectionFactory.getDefaultProducerMaxRate());
}
public ClientProducer createRateLimitedProducer(SimpleString address, int rate) throws MessagingException
@@ -328,8 +377,8 @@
private ClientProducer createProducer(final SimpleString address, final int windowSize, final int maxRate) throws MessagingException
{
return createProducer(address, windowSize, maxRate,
- connection.getConnectionFactory().isDefaultBlockOnNonPersistentSend(),
- connection.getConnectionFactory().isDefaultBlockOnPersistentSend());
+ connectionFactory.isDefaultBlockOnNonPersistentSend(),
+ connectionFactory.isDefaultBlockOnPersistentSend());
}
public ClientProducer createProducer(final SimpleString address, final int windowSize, final int maxRate,
@@ -347,7 +396,7 @@
if (producer == null)
{
- long clientTargetID = remotingConnection.getPacketDispatcher().generateID();
+ long clientTargetID = dispatcher.generateID();
SessionCreateProducerMessage request = new SessionCreateProducerMessage(clientTargetID, address, windowSize, maxRate);
@@ -363,9 +412,12 @@
response.getMaxRate() == -1 ? null : new TokenBucketLimiterImpl(response.getMaxRate(), false),
autoCommitSends && blockOnNonPersistentSend,
autoCommitSends && blockOnPersistentSend,
- response.getInitialCredits());
+ response.getInitialCredits(),
+ remotingConnection,
+ dispatcher,
+ serverTargetID);
- remotingConnection.getPacketDispatcher().register(new ClientProducerPacketHandler(producer, clientTargetID));
+ dispatcher.register(new ClientProducerPacketHandler(producer, clientTargetID));
}
addProducer(producer);
@@ -736,8 +788,8 @@
ClientSessionImpl other = (ClientSessionImpl)xares;
- return connection.getRemotingConnection().getLocation()
- .equals(other.getConnection().getRemotingConnection().getLocation());
+ return remotingConnection.getLocation()
+ .equals(other.remotingConnection.getLocation());
}
public int prepare(final Xid xid) throws XAException
Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionInternal.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionInternal.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionInternal.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -24,7 +24,6 @@
import java.util.Map;
import java.util.Set;
-import java.util.concurrent.ExecutorService;
import org.jboss.messaging.core.client.ClientBrowser;
import org.jboss.messaging.core.client.ClientSession;
@@ -65,6 +64,4 @@
Set<ClientBrowser> getBrowsers();
Map<SimpleString, ClientProducerInternal> getProducerCache();
-
- ExecutorService getExecutorService();
}
Modified: trunk/src/main/org/jboss/messaging/core/management/MessagingServerManagement.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/management/MessagingServerManagement.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/management/MessagingServerManagement.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -23,9 +23,12 @@
package org.jboss.messaging.core.management;
import java.util.List;
+import java.util.Set;
import org.jboss.messaging.core.config.Configuration;
+import org.jboss.messaging.core.security.Role;
import org.jboss.messaging.core.server.Queue;
+import org.jboss.messaging.core.settings.impl.QueueSettings;
import org.jboss.messaging.util.SimpleString;
/**
@@ -36,6 +39,8 @@
*/
public interface MessagingServerManagement
{
+ int getConnectionCount();
+
/**
* is the server started
* @return true if the server is running
@@ -88,6 +93,14 @@
*/
void removeAllMessagesForAddress(SimpleString address) throws Exception;
+ void setSecurityForAddress(String address, Set<Role> roles) throws Exception;
+
+ void removeSecurityForAddress(String address) throws Exception;
+
+ Set<Role> getSecurityForAddress(String address) throws Exception;
+
+ void setQueueAttributes(String queueName, QueueSettings settings) throws Exception;
+
/**
* remove all the messages for a specific binding
* @param name the name of the binding
Modified: trunk/src/main/org/jboss/messaging/core/management/impl/MessagingServerManagementImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/management/impl/MessagingServerManagementImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/management/impl/MessagingServerManagementImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -24,13 +24,19 @@
import java.util.ArrayList;
import java.util.List;
+import java.util.Set;
import org.jboss.messaging.core.config.Configuration;
import org.jboss.messaging.core.management.MessagingServerManagement;
+import org.jboss.messaging.core.persistence.StorageManager;
import org.jboss.messaging.core.postoffice.Binding;
-import org.jboss.messaging.core.server.MessagingComponent;
+import org.jboss.messaging.core.postoffice.PostOffice;
+import org.jboss.messaging.core.security.Role;
+import org.jboss.messaging.core.server.ConnectionManager;
import org.jboss.messaging.core.server.MessagingServer;
import org.jboss.messaging.core.server.Queue;
+import org.jboss.messaging.core.settings.HierarchicalRepository;
+import org.jboss.messaging.core.settings.impl.QueueSettings;
import org.jboss.messaging.util.SimpleString;
/**
@@ -44,9 +50,9 @@
* @author <a href="mailto:ataylor at redhat.com>Andy Taylor</a>
*/
//@JMX(name = "jboss.messaging:service=MessagingServerManagement", exposedInterface = MessagingServerManagement.class)
-public class MessagingServerManagementImpl implements MessagingServerManagement, MessagingComponent
+public class MessagingServerManagementImpl implements MessagingServerManagement
{
- private MessagingServer messagingServer;
+ //private MessagingServer messagingServer;
// private HashMap<String, MessageCounter> currentCounters = new HashMap<String, MessageCounter>();
//
@@ -55,58 +61,96 @@
// private ScheduledExecutorService scheduler;
//
// private int maxMessageCounters = 20;
-
- public void setMessagingServer(MessagingServer messagingServer)
+
+ private final PostOffice postOffice;
+
+ private final StorageManager storageManager;
+
+ private final Configuration configuration;
+
+ private final ConnectionManager connectionManager;
+
+ private final MessagingServer server;
+
+ private HierarchicalRepository<Set<Role>> securityRepository;
+
+ private HierarchicalRepository<QueueSettings> queueSettingsRepository;
+
+
+
+ public MessagingServerManagementImpl(final PostOffice postOffice, final StorageManager storageManager,
+ final Configuration configuration,
+ final ConnectionManager connectionManager,
+ final HierarchicalRepository<Set<Role>> securityRepository,
+ final HierarchicalRepository<QueueSettings> queueSettingsRepository,
+ final MessagingServer server)
{
- this.messagingServer = messagingServer;
+ this.postOffice = postOffice;
+
+ this.storageManager = storageManager;
+
+ this.configuration = configuration;
+
+ this.connectionManager = connectionManager;
+
+ this.server = server;
+
+ this.securityRepository = securityRepository;
+
+ this.queueSettingsRepository = queueSettingsRepository;
}
public boolean isStarted()
{
- return messagingServer.isStarted();
+ return server.isStarted();
}
public void createQueue(SimpleString address, SimpleString name) throws Exception
{
- if (messagingServer.getPostOffice().getBinding(name) == null)
+ if (postOffice.getBinding(name) == null)
{
- messagingServer.getPostOffice().addBinding(address, name, null, true, false);
+ postOffice.addBinding(address, name, null, true, false);
}
}
+
+ public int getConnectionCount()
+ {
+ return connectionManager.size();
+ }
public void destroyQueue(SimpleString name) throws Exception
{
- Binding binding = messagingServer.getPostOffice().getBinding(name);
+ Binding binding = postOffice.getBinding(name);
if (binding != null)
{
Queue queue = binding.getQueue();
- queue.deleteAllReferences(messagingServer.getStorageManager());
+ queue.deleteAllReferences(storageManager);
- messagingServer.getPostOffice().removeBinding(queue.getName());
+ postOffice.removeBinding(queue.getName());
}
}
public boolean addDestination(SimpleString address) throws Exception
{
- return messagingServer.getPostOffice().addDestination(address, false);
+ return postOffice.addDestination(address, false);
}
public boolean removeDestination(SimpleString address) throws Exception
{
- return messagingServer.getPostOffice().removeDestination(address, false);
+ return postOffice.removeDestination(address, false);
}
public void removeAllMessagesForAddress(SimpleString address) throws Exception
{
- List<Binding> bindings = messagingServer.getPostOffice().getBindingsForAddress(address);
+ List<Binding> bindings = postOffice.getBindingsForAddress(address);
for (Binding binding : bindings)
{
Queue queue = binding.getQueue();
- queue.deleteAllReferences(messagingServer.getStorageManager());
+ queue.deleteAllReferences(storageManager);
}
}
//
@@ -163,7 +207,7 @@
public List<Queue> getQueuesForAddress(SimpleString address) throws Exception
{
List<Queue> queues = new ArrayList<Queue>();
- List<Binding> bindings = messagingServer.getPostOffice().getBindingsForAddress(address);
+ List<Binding> bindings = postOffice.getBindingsForAddress(address);
for (Binding binding : bindings)
{
@@ -177,6 +221,28 @@
{
return getQueue(queue).getMessageCount();
}
+
+ public void setSecurityForAddress(String address, Set<Role> roles) throws Exception
+ {
+ this.securityRepository.addMatch(address, roles);
+ }
+
+ public void removeSecurityForAddress(String address) throws Exception
+ {
+ this.securityRepository.removeMatch(address);
+ }
+
+ public Set<Role> getSecurityForAddress(String address) throws Exception
+ {
+ return this.securityRepository.getMatch(address);
+ }
+
+ public void setQueueAttributes(String queueName, QueueSettings settings) throws Exception
+ {
+ this.queueSettingsRepository.addMatch(queueName, settings);
+ }
+
+
//
// public int getMaxMessageCounters()
// {
@@ -396,7 +462,7 @@
public Configuration getConfiguration()
{
- return messagingServer.getConfiguration();
+ return configuration;
}
// Private ---------------------------------------------------------------------------
@@ -404,7 +470,7 @@
private Queue getQueue(SimpleString queueName) throws Exception
{
- Binding binding = messagingServer.getPostOffice().getBinding(queueName);
+ Binding binding = postOffice.getBinding(queueName);
if (binding == null)
{
throw new IllegalArgumentException("No queue with name " + queueName);
@@ -415,19 +481,19 @@
- public void start() throws Exception
- {
- //scheduler = Executors.newScheduledThreadPool(maxMessageCounters);
- }
+// public void start() throws Exception
+// {
+// //scheduler = Executors.newScheduledThreadPool(maxMessageCounters);
+// }
+//
+// public void stop() throws Exception
+// {
+//// if (scheduler != null)
+//// {
+//// scheduler.shutdown();
+//// }
+// }
- public void stop() throws Exception
- {
-// if (scheduler != null)
-// {
-// scheduler.shutdown();
-// }
- }
-
// protected void finalize() throws Throwable
// {
// super.finalize();
Modified: trunk/src/main/org/jboss/messaging/core/remoting/impl/RemotingConnectionImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/remoting/impl/RemotingConnectionImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/remoting/impl/RemotingConnectionImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -83,7 +83,11 @@
connector = ConnectorRegistryFactory.getRegistry().getConnector(location, connectionParams);
+ log.info("*** getting connector " + connector);
+
session = connector.connect();
+
+ log.info("** got session " + session.getID());
if (log.isDebugEnabled())
log.debug("Using " + connector + " to connect to " + location);
Modified: trunk/src/main/org/jboss/messaging/core/remoting/impl/mina/MinaConnector.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/remoting/impl/mina/MinaConnector.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/remoting/impl/mina/MinaConnector.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -165,6 +165,8 @@
throw new IOException("Cannot connect to " + address.toString());
}
session = future.getSession();
+
+ log.info("Got mina session " + session);
MinaSession minaSession = new MinaSession(session);
//register a handler for dealing with server pings
Modified: trunk/src/main/org/jboss/messaging/core/security/impl/SecurityStoreImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/security/impl/SecurityStoreImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/security/impl/SecurityStoreImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -115,7 +115,8 @@
String saddress = address.toString();
Set<Role> roles = securityRepository.getMatch(saddress);
- if(!securityManager.validateUserAndRole(conn.getUsername(), conn.getPassword(), roles, checkType))
+
+ if (!securityManager.validateUserAndRole(conn.getUsername(), conn.getPassword(), roles, checkType))
{
throw new MessagingException(MessagingException.SECURITY_EXCEPTION, "Unable to validate user: " + conn.getUsername());
}
Modified: trunk/src/main/org/jboss/messaging/core/server/ConnectionManager.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/ConnectionManager.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/server/ConnectionManager.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -56,4 +56,6 @@
* @return List<ServerConnection>
*/
List<ServerConnection> getActiveConnections();
+
+ int size();
}
Modified: trunk/src/main/org/jboss/messaging/core/server/MessagingServer.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/MessagingServer.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/server/MessagingServer.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -22,23 +22,20 @@
package org.jboss.messaging.core.server;
+import java.util.Set;
+
import org.jboss.messaging.core.config.Configuration;
+import org.jboss.messaging.core.management.MessagingServerManagement;
import org.jboss.messaging.core.persistence.StorageManager;
-import org.jboss.messaging.core.postoffice.PostOffice;
import org.jboss.messaging.core.remoting.PacketReturner;
import org.jboss.messaging.core.remoting.RemotingService;
import org.jboss.messaging.core.remoting.impl.wireformat.CreateConnectionResponse;
import org.jboss.messaging.core.security.JBMSecurityManager;
import org.jboss.messaging.core.security.Role;
-import org.jboss.messaging.core.security.SecurityStore;
import org.jboss.messaging.core.settings.HierarchicalRepository;
import org.jboss.messaging.core.settings.impl.QueueSettings;
-import org.jboss.messaging.core.transaction.ResourceManager;
import org.jboss.messaging.core.version.Version;
-import org.jboss.messaging.util.ExecutorFactory;
-import java.util.Set;
-
/**
* This interface defines the internal interface of the Messaging Server exposed
* to other components of the server.
@@ -53,8 +50,6 @@
*/
public interface MessagingServer extends MessagingComponent
{
- //The pluggable components
-
void setConfiguration(Configuration configuration);
Configuration getConfiguration();
@@ -71,32 +66,17 @@
void setSecurityManager(JBMSecurityManager securityManager);
-
- //Access to hard wired components
-
- PostOffice getPostOffice();
-
- ConnectionManager getConnectionManager();
-
- HierarchicalRepository<Set<Role>> getSecurityRepository();
-
- SecurityStore getSecurityStore();
-
- HierarchicalRepository<QueueSettings> getQueueSettingsRepository();
-
- ExecutorFactory getExecutorFactory();
-
- ResourceManager getResourceManager();
-
Version getVersion();
- //Operations
-
CreateConnectionResponse createConnection(String username, String password,
int incrementingVersion,
PacketReturner returner) throws Exception;
-
-
+
boolean isStarted();
+ MessagingServerManagement getServerManagement();
+
+ HierarchicalRepository<Set<Role>> getSecurityRepository();
+
+ HierarchicalRepository<QueueSettings> getQueueSettingsRepository();
}
Modified: trunk/src/main/org/jboss/messaging/core/server/ServerConnection.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/ServerConnection.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/server/ServerConnection.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -38,8 +38,6 @@
{
long getID();
- MessagingServer getServer();
-
ConnectionCreateSessionResponseMessage createSession(boolean xa, boolean autoCommitSends, boolean autoCommitAcks,
PacketReturner returner) throws Exception;
Modified: trunk/src/main/org/jboss/messaging/core/server/impl/ConnectionManagerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/impl/ConnectionManagerImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/server/impl/ConnectionManagerImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -110,6 +110,11 @@
}
return list;
}
+
+ public synchronized int size()
+ {
+ return endpoints.size();
+ }
// FailureListener implementation --------------------------------------------------------------
Modified: trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/server/impl/MessagingServerImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -34,11 +34,14 @@
import org.jboss.messaging.core.config.Configuration;
import org.jboss.messaging.core.exception.MessagingException;
import org.jboss.messaging.core.logging.Logger;
+import org.jboss.messaging.core.management.MessagingServerManagement;
+import org.jboss.messaging.core.management.impl.MessagingServerManagementImpl;
import org.jboss.messaging.core.persistence.StorageManager;
import org.jboss.messaging.core.postoffice.PostOffice;
import org.jboss.messaging.core.postoffice.impl.PostOfficeImpl;
import org.jboss.messaging.core.remoting.ConnectorRegistryFactory;
import org.jboss.messaging.core.remoting.Interceptor;
+import org.jboss.messaging.core.remoting.PacketDispatcher;
import org.jboss.messaging.core.remoting.PacketReturner;
import org.jboss.messaging.core.remoting.RemotingService;
import org.jboss.messaging.core.remoting.impl.wireformat.CreateConnectionResponse;
@@ -98,6 +101,8 @@
private HierarchicalRepository<Set<Role>> securityRepository;
private ResourceManager resourceManager;
private MessagingServerPacketHandler serverPacketHandler;
+ private MessagingServerManagement serverManagement;
+ private PacketDispatcher dispatcher;
// plugins
@@ -183,6 +188,7 @@
scheduledExecutor = new ScheduledThreadPoolExecutor(configuration.getScheduledThreadPoolMaxSize(), new JBMThreadFactory("JBM-scheduled-threads"));
resourceManager = new ResourceManagerImpl(0);
remotingService.addRemotingSessionListener(sessionListener);
+ dispatcher = remotingService.getDispatcher();
postOffice.start();
serverPacketHandler = new MessagingServerPacketHandler(this);
ClassLoader loader = Thread.currentThread().getContextClassLoader();
@@ -198,9 +204,12 @@
log.warn("Error instantiating interceptor \"" + interceptorClass + "\"", e);
}
}
+ serverManagement = new MessagingServerManagementImpl(postOffice, storageManager, configuration,
+ connectionManager, securityRepository,
+ queueSettingsRepository, this);
//Register the handler as the last thing - since after that users will be able to connect
started = true;
- getRemotingService().getDispatcher().register(serverPacketHandler);
+ dispatcher.register(serverPacketHandler);
}
public synchronized void stop() throws Exception
@@ -210,7 +219,7 @@
return;
}
- getRemotingService().getDispatcher().unregister(serverPacketHandler.getID());
+ dispatcher.unregister(serverPacketHandler.getID());
remotingService.removeRemotingSessionListener(sessionListener);
securityStore = null;
@@ -227,6 +236,7 @@
queueFactory = null;
resourceManager = null;
serverPacketHandler = null;
+ serverManagement = null;
ConnectorRegistryFactory.getRegistry().clear();
started = false;
@@ -294,51 +304,24 @@
{
return securityManager;
}
-
- //The hardwired components
- public PostOffice getPostOffice()
- {
- return postOffice;
- }
-
- public ConnectionManager getConnectionManager()
- {
- return connectionManager;
- }
-
+ //This is needed for the security deployer
public HierarchicalRepository<Set<Role>> getSecurityRepository()
{
return securityRepository;
}
- public SecurityStore getSecurityStore()
- {
- return securityStore;
- }
-
+ //This is needed for the queue settings deployer
public HierarchicalRepository<QueueSettings> getQueueSettingsRepository()
{
return queueSettingsRepository;
}
-
- public ExecutorFactory getExecutorFactory()
- {
- return executorFactory;
- }
- public ResourceManager getResourceManager()
- {
- return resourceManager;
- }
-
public Version getVersion()
{
return version;
}
- //Operations
-
public boolean isStarted()
{
return started;
@@ -354,6 +337,7 @@
throw new MessagingException(MessagingException.INCOMPATIBLE_CLIENT_SERVER_VERSIONS,
"client not compatible with version: " + version.getFullVersion());
}
+
// Authenticate. Successful autentication will place a new SubjectContext on thread local,
// which will be used in the authorization process. However, we need to make sure we clean
// up thread local immediately after we used the information, otherwise some other people
@@ -363,15 +347,26 @@
long sessionID = returner.getSessionID();
+ log.info("****Session id is " + sessionID);
+
final ServerConnection connection =
- new ServerConnectionImpl(this, username, password, sessionID);
+ new ServerConnectionImpl(username, password, sessionID,
+ postOffice, connectionManager,
+ dispatcher, storageManager,
+ queueSettingsRepository, resourceManager,
+ securityStore, executorFactory);
connectionManager.registerConnection(sessionID, connection);
- remotingService.getDispatcher().register(new ServerConnectionPacketHandler(connection));
+ dispatcher.register(new ServerConnectionPacketHandler(connection));
return new CreateConnectionResponse(connection.getID(), version);
}
+
+ public MessagingServerManagement getServerManagement()
+ {
+ return serverManagement;
+ }
// Public ---------------------------------------------------------------------------------------
Modified: trunk/src/main/org/jboss/messaging/core/server/impl/ServerBrowserImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/impl/ServerBrowserImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/server/impl/ServerBrowserImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -39,6 +39,7 @@
import org.jboss.messaging.core.logging.Logger;
import org.jboss.messaging.core.message.Message;
import org.jboss.messaging.core.remoting.Packet;
+import org.jboss.messaging.core.remoting.PacketDispatcher;
import org.jboss.messaging.core.remoting.PacketHandler;
import org.jboss.messaging.core.remoting.PacketReturner;
import org.jboss.messaging.core.remoting.impl.wireformat.PacketImpl;
@@ -74,15 +75,16 @@
private final Queue destination;
private final Filter filter;
private Iterator<ServerMessage> iterator;
-
+
// Constructors ---------------------------------------------------------------------------------
public ServerBrowserImpl(final ServerSession session,
- final Queue destination, final String messageFilter) throws Exception
+ final Queue destination, final String messageFilter,
+ final PacketDispatcher dispatcher) throws Exception
{
this.session = session;
- this.id = session.getConnection().getServer().getRemotingService().getDispatcher().generateID();
+ this.id = dispatcher.generateID();
this.destination = destination;
Modified: trunk/src/main/org/jboss/messaging/core/server/impl/ServerConnectionImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/impl/ServerConnectionImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/server/impl/ServerConnectionImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -24,20 +24,25 @@
import java.util.HashSet;
import java.util.Set;
+import java.util.concurrent.Executor;
import org.jboss.messaging.core.logging.Logger;
+import org.jboss.messaging.core.persistence.StorageManager;
import org.jboss.messaging.core.postoffice.Binding;
import org.jboss.messaging.core.postoffice.PostOffice;
import org.jboss.messaging.core.remoting.PacketDispatcher;
import org.jboss.messaging.core.remoting.PacketReturner;
-import org.jboss.messaging.core.remoting.RemotingService;
import org.jboss.messaging.core.remoting.impl.wireformat.ConnectionCreateSessionResponseMessage;
+import org.jboss.messaging.core.security.SecurityStore;
import org.jboss.messaging.core.server.ConnectionManager;
-import org.jboss.messaging.core.server.MessagingServer;
import org.jboss.messaging.core.server.Queue;
import org.jboss.messaging.core.server.ServerConnection;
import org.jboss.messaging.core.server.ServerSession;
+import org.jboss.messaging.core.settings.HierarchicalRepository;
+import org.jboss.messaging.core.settings.impl.QueueSettings;
+import org.jboss.messaging.core.transaction.ResourceManager;
import org.jboss.messaging.util.ConcurrentHashSet;
+import org.jboss.messaging.util.ExecutorFactory;
import org.jboss.messaging.util.SimpleString;
/**
@@ -72,46 +77,63 @@
private final Set<Queue> temporaryQueues = new ConcurrentHashSet<Queue>();
private final Set<SimpleString> temporaryDestinations = new ConcurrentHashSet<SimpleString>();
-
- private final MessagingServer server;
-
+
private volatile boolean started;
- //We cache some of the service locally
-
private final PostOffice postOffice;
private final ConnectionManager connectionManager;
private final PacketDispatcher dispatcher;
+ private final StorageManager storageManager;
+
+ private final HierarchicalRepository<QueueSettings> queueSettingsRepository;
+
+ private final ResourceManager resourceManager;
+
+ private final SecurityStore securityStore;
+
+ private final ExecutorFactory executorFactory;
+
private volatile boolean closed;
// Constructors ---------------------------------------------------------------------------------
- public ServerConnectionImpl(final MessagingServer server,
- final String username, final String password,
- final long remotingClientSessionID)
- {
- RemotingService rs = server.getRemotingService();
-
- this.dispatcher = rs.getDispatcher();
-
- this.id = dispatcher.generateID();
-
+ public ServerConnectionImpl(final String username, final String password,
+ final long remotingClientSessionID,
+ final PostOffice postOffice,
+ final ConnectionManager connectionManager,
+ final PacketDispatcher packetDispatcher,
+ final StorageManager storageManager,
+ final HierarchicalRepository<QueueSettings> queueSettingsRepository,
+ final ResourceManager resourceManager,
+ final SecurityStore securityStore,
+ final ExecutorFactory executorFactory)
+ {
this.username = username;
this.password = password;
this.remotingClientSessionID = remotingClientSessionID;
- started = false;
+ this.postOffice = postOffice;
- this.server = server;
+ this.connectionManager = connectionManager;
- this.postOffice = server.getPostOffice();
+ this.dispatcher = packetDispatcher;
- this.connectionManager = server.getConnectionManager();
+ this.storageManager = storageManager;
+
+ this.queueSettingsRepository = queueSettingsRepository;
+
+ this.resourceManager = resourceManager;
+
+ this.securityStore = securityStore;
+
+ this.executorFactory = executorFactory;
+
+ this.id = dispatcher.generateID();
}
// ServerConnection implementation ------------------------------------------------------------
@@ -121,11 +143,6 @@
return id;
}
- public MessagingServer getServer()
- {
- return server;
- }
-
public ConnectionCreateSessionResponseMessage createSession(final boolean xa, final boolean autoCommitSends,
final boolean autoCommitAcks,
final PacketReturner returner) throws Exception
@@ -140,10 +157,15 @@
}
protected ServerSession doCreateSession(final boolean autoCommitSends, final boolean autoCommitAcks,
- final boolean xa, final PacketReturner returner)
+ final boolean xa, final PacketReturner returner)
throws Exception
{
- return new ServerSessionImpl(this, autoCommitSends, autoCommitAcks, xa, returner);
+ Executor executor = executorFactory.getExecutor();
+
+ return new ServerSessionImpl(this, autoCommitSends, autoCommitAcks, xa, returner,
+ storageManager, postOffice, queueSettingsRepository,
+ resourceManager, securityStore, dispatcher,
+ executor);
}
public void start() throws Exception
@@ -237,6 +259,7 @@
{
throw new IllegalStateException("Connection already has temporary queue " + queue);
}
+
temporaryQueues.add(queue);
}
@@ -254,6 +277,7 @@
{
throw new IllegalStateException("Connection already has temporary destination " + address);
}
+
temporaryDestinations.add(address);
}
@@ -279,7 +303,7 @@
public void addSession(final ServerSession session)
{
- this.sessions.add(session);
+ sessions.add(session);
}
public Set<Queue> getTemporaryQueues()
Modified: trunk/src/main/org/jboss/messaging/core/server/impl/ServerConsumerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/impl/ServerConsumerImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/server/impl/ServerConsumerImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -28,9 +28,9 @@
import org.jboss.messaging.core.logging.Logger;
import org.jboss.messaging.core.persistence.StorageManager;
import org.jboss.messaging.core.postoffice.PostOffice;
+import org.jboss.messaging.core.remoting.PacketDispatcher;
import org.jboss.messaging.core.server.HandleStatus;
import org.jboss.messaging.core.server.MessageReference;
-import org.jboss.messaging.core.server.MessagingServer;
import org.jboss.messaging.core.server.Queue;
import org.jboss.messaging.core.server.ServerConsumer;
import org.jboss.messaging.core.server.ServerMessage;
@@ -46,11 +46,6 @@
* @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
* @author <a href="mailto:jmesnil at redhat.com">Jeff Mesnil</a>
*
- * Partially derived from JBM 1.x version by:
- *
- * @author <a href="mailto:ovidiu at feodorov.com">Ovidiu Feodorov</a>
- * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
- *
* @version <tt>$Revision: 3783 $</tt> $Id: ServerConsumerImpl.java 3783 2008-02-25 12:15:14Z timfox $
*/
public class ServerConsumerImpl implements ServerConsumer
@@ -87,7 +82,6 @@
private boolean started;
- //We cache some of the service locally
private final StorageManager storageManager;
private final HierarchicalRepository<QueueSettings> queueSettingsRepository;
@@ -100,7 +94,11 @@
final Queue messageQueue, final boolean noLocal, final Filter filter,
final boolean autoDeleteQueue, final boolean enableFlowControl, final int maxRate,
final long connectionID,
- final boolean started)
+ final boolean started,
+ final StorageManager storageManager,
+ final HierarchicalRepository<QueueSettings> queueSettingsRepository,
+ final PostOffice postOffice,
+ final PacketDispatcher dispatcher)
{
this.clientTargetID = clientTargetID;
@@ -116,8 +114,6 @@
this.session = session;
- MessagingServer server = session.getConnection().getServer();
-
this.started = started;
if (enableFlowControl)
@@ -129,13 +125,13 @@
availableCredits = null;
}
- this.storageManager = server.getStorageManager();
+ this.storageManager = storageManager;
- this.queueSettingsRepository = server.getQueueSettingsRepository();
+ this.queueSettingsRepository = queueSettingsRepository;
- this.postOffice = server.getPostOffice();
+ this.postOffice = postOffice;
- this.id = server.getRemotingService().getDispatcher().generateID();
+ this.id = dispatcher.generateID();
messageQueue.addConsumer(this);
}
Modified: trunk/src/main/org/jboss/messaging/core/server/impl/ServerProducerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/impl/ServerProducerImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/server/impl/ServerProducerImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -27,6 +27,7 @@
import org.jboss.messaging.core.logging.Logger;
import org.jboss.messaging.core.postoffice.FlowController;
import org.jboss.messaging.core.remoting.Packet;
+import org.jboss.messaging.core.remoting.PacketDispatcher;
import org.jboss.messaging.core.remoting.PacketReturner;
import org.jboss.messaging.core.remoting.impl.wireformat.ProducerFlowCreditMessage;
import org.jboss.messaging.core.server.ServerMessage;
@@ -69,9 +70,10 @@
final SimpleString address,
final PacketReturner sender,
final FlowController flowController,
- final int windowSize) throws Exception
+ final int windowSize,
+ final PacketDispatcher dispatcher) throws Exception
{
- this.id = session.getConnection().getServer().getRemotingService().getDispatcher().generateID();
+ this.id = dispatcher.generateID();
this.clientTargetID = clientTargetID;
Modified: trunk/src/main/org/jboss/messaging/core/server/impl/ServerSessionImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/server/impl/ServerSessionImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/core/server/impl/ServerSessionImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -123,9 +123,7 @@
private final Executor executor;
private Transaction tx;
-
- //We cache some of the services locally
-
+
private final StorageManager storageManager;
private final HierarchicalRepository<QueueSettings> queueSettingsRepository;
@@ -141,10 +139,18 @@
// Constructors
// ---------------------------------------------------------------------------------
- public ServerSessionImpl(final ServerConnection connection, final boolean autoCommitSends,
+ public ServerSessionImpl(final ServerConnection connection,
+ final boolean autoCommitSends,
final boolean autoCommitAcks,
final boolean xa,
- final PacketReturner sender) throws Exception
+ final PacketReturner sender,
+ final StorageManager storageManager,
+ final PostOffice postOffice,
+ final HierarchicalRepository<QueueSettings> queueSettingsRepository,
+ final ResourceManager resourceManager,
+ final SecurityStore securityStore,
+ final PacketDispatcher packetDispatcher,
+ final Executor executor) throws Exception
{
this.autoCommitSends = autoCommitSends;
@@ -153,17 +159,22 @@
this.connection = connection;
this.sender = sender;
+
+ this.storageManager = storageManager;
- MessagingServer server = connection.getServer();
-
- this.storageManager = server.getStorageManager();
- this.postOffice = server.getPostOffice();
- this.queueSettingsRepository = server.getQueueSettingsRepository();
- this.resourceManager = server.getResourceManager();
- this.securityStore = server.getSecurityStore();
- this.dispatcher = server.getRemotingService().getDispatcher();
+ this.postOffice = postOffice;
+
+ this.queueSettingsRepository = queueSettingsRepository;
+
+ this.resourceManager = resourceManager;
+
+ this.securityStore = securityStore;
+
+ this.dispatcher = packetDispatcher;
+
this.id = dispatcher.generateID();
- this.executor = server.getExecutorFactory().getExecutor();
+
+ this.executor = executor;
if (!xa)
{
@@ -285,6 +296,7 @@
{
securityStore.check(msg.getDestination(), CheckType.WRITE, connection);
}
+
catch (MessagingException e)
{
if (!autoCommitSends)
@@ -992,7 +1004,11 @@
ServerConsumer consumer =
new ServerConsumerImpl(this, clientTargetID, binding.getQueue(), noLocal, filter,
autoDeleteQueue, windowSize != -1, maxRate, connection.getID(),
- connection.isStarted());
+ connection.isStarted(),
+ storageManager,
+ queueSettingsRepository,
+ postOffice,
+ dispatcher);
dispatcher.register(new ServerConsumerPacketHandler(consumer));
@@ -1071,7 +1087,10 @@
securityStore.check(binding.getAddress(), CheckType.READ, connection);
- ServerBrowserImpl browser = new ServerBrowserImpl(this, binding.getQueue(), filterString == null ? null : filterString.toString());
+ ServerBrowserImpl browser =
+ new ServerBrowserImpl(this, binding.getQueue(),
+ filterString == null ? null : filterString.toString(),
+ dispatcher);
browsers.add(browser);
@@ -1108,7 +1127,8 @@
final int serverWindowSize = windowToUse == -1 ? -1 : (int)(windowToUse * 0.75);
ServerProducerImpl producer
- = new ServerProducerImpl(this, clientTargetID, address, sender, flowController, serverWindowSize);
+ = new ServerProducerImpl(this, clientTargetID, address, sender, flowController, serverWindowSize,
+ dispatcher);
producers.add(producer);
Modified: trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -63,11 +63,11 @@
private final Map<String, List<String>> connectionFactoryBindings = new HashMap<String, List<String>>();
- private MessagingServerManagement messagingServerManagement;
-
- public void setMessagingServerManagement(final MessagingServerManagement messagingServerManagement)
+ private final MessagingServerManagement messagingServerManagement;
+
+ public JMSServerManagerImpl(final MessagingServerManagement serverManager)
{
- this.messagingServerManagement = messagingServerManagement;
+ messagingServerManagement = serverManager;
}
/**
Modified: trunk/src/main/org/jboss/messaging/util/ByteBufferWrapper.java
===================================================================
--- trunk/src/main/org/jboss/messaging/util/ByteBufferWrapper.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/src/main/org/jboss/messaging/util/ByteBufferWrapper.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -226,7 +226,9 @@
if (b == NULL)
{
return null;
- } else {
+ }
+ else
+ {
return getSimpleString();
}
}
Modified: trunk/tests/jms-tests/src/org/jboss/test/messaging/JBMServerTestCase.java
===================================================================
--- trunk/tests/jms-tests/src/org/jboss/test/messaging/JBMServerTestCase.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/jms-tests/src/org/jboss/test/messaging/JBMServerTestCase.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -585,9 +585,13 @@
protected void removeAllMessages(String destName, boolean isQueue, int server) throws Exception
{
if (isQueue)
+ {
servers.get(server).removeAllMessagesForQueue(destName);
+ }
else
+ {
servers.get(server).removeAllMessagesForTopic(destName);
+ }
}
public void dropTables() throws Exception
@@ -595,21 +599,7 @@
dropAllTables();
}
-
-// public StorageManager getPersistenceManager()
-// {
-// try
-// {
-// return servers.get(0).getPersistenceManager();
-// }
-// catch (Exception e)
-// {
-// //will never happen as always is local
-// return null;
-// }
-// }
-
- protected void dropAllTables() throws Exception
+ private void dropAllTables() throws Exception
{
log.info("DROPPING ALL TABLES FROM DATABASE!");
@@ -723,9 +713,7 @@
protected static void assertActiveConnectionsOnTheServer(int expectedSize)
throws Exception
{
- ConnectionManager cm = servers.get(0).getMessagingServer()
- .getConnectionManager();
- assertEquals(expectedSize, cm.getActiveConnections().size());
+ assertEquals(expectedSize, servers.get(0).getMessagingServer().getServerManagement().getConnectionCount());
}
public static void deployConnectionFactory(String clientId, String objectName,
@@ -809,42 +797,6 @@
servers.get(server).undeployConnectionFactory(objectName);
}
- private void clearDatabase() throws Exception
- {
- if (databaseClearer == null)
- {
- JBMBootstrapServer bootstrap = new JBMBootstrapServer(new String[]{"datasource.xml", "transaction-manager.xml", "database-clearer.xml"});
- bootstrap.run();
- databaseClearer = (DatabaseClearer) bootstrap.getKernel().getRegistry().getEntry("DatabaseClearer").getTarget();
- databaseClearer.deleteAllData();
- }
- else
- {
- databaseClearer.deleteData();
- }
- }
-
- /*protected void deployAdministeredObjects() throws Exception
- {
-
- ServerManagement.deployTopic("Topic1");
- ServerManagement.deployTopic("Topic2");
- ServerManagement.deployTopic("Topic3");
- ServerManagement.deployQueue("Queue1");
- ServerManagement.deployQueue("Queue2");
- ServerManagement.deployQueue("Queue3");
- ServerManagement.deployQueue("Queue4");
-
- ic = getInitialContext();
- cf = (JBossConnectionFactory) ic.lookup("/ConnectionFactory");
- topic1 = (Topic) ic.lookup("/topic/Topic1");
- topic2 = (Topic) ic.lookup("/topic/Topic2");
- topic3 = (Topic) ic.lookup("/topic/Topic3");
- queue1 = (Queue) ic.lookup("/queue/Queue1");
- queue2 = (Queue) ic.lookup("/queue/Queue2");
- queue3 = (Queue) ic.lookup("/queue/Queue3");
- queue4 = (Queue) ic.lookup("/queue/Queue4");
- }*/
protected List listAllSubscriptionsForTopic(String s) throws Exception
{
return servers.get(0).listAllSubscriptionsForTopic(s);
@@ -872,7 +824,7 @@
protected void setSecurityConfigOnManager(boolean b, String s, HashSet<Role> lockedConf) throws Exception
{
- servers.get(0).setSecurityConfigOnManager(b, s, lockedConf);
+ servers.get(0).configureSecurityForDestination(s, b, lockedConf);
}
protected void setRedeliveryDelayOnDestination(String dest, boolean isQueue, long delay) throws Exception
@@ -880,15 +832,6 @@
servers.get(0).setRedeliveryDelayOnDestination(dest, isQueue, delay);
}
-// protected void setDefaultRedeliveryDelay(long delay) throws Exception
-// {
-// servers.get(0).setDefaultRedeliveryDelay(delay);
-// }
-
- /*public TransactionManager getTransactionManager()
- {
- return databaseClearer.getTransactionManager();
- }*/
protected void kill(int i) throws Exception
{
log.info("Attempting to kill server " + i);
Modified: trunk/tests/jms-tests/src/org/jboss/test/messaging/tools/container/LocalTestServer.java
===================================================================
--- trunk/tests/jms-tests/src/org/jboss/test/messaging/tools/container/LocalTestServer.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/jms-tests/src/org/jboss/test/messaging/tools/container/LocalTestServer.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -31,12 +31,9 @@
import java.util.Properties;
import java.util.Set;
-import javax.jms.InvalidDestinationException;
import javax.management.NotificationListener;
import javax.management.ObjectName;
-import javax.naming.Context;
import javax.naming.InitialContext;
-import javax.naming.NameNotFoundException;
import javax.sql.DataSource;
import javax.transaction.TransactionManager;
import javax.transaction.UserTransaction;
@@ -48,7 +45,7 @@
import org.jboss.messaging.core.settings.impl.QueueSettings;
import org.jboss.messaging.jms.server.JMSServerManager;
import org.jboss.messaging.microcontainer.JBMBootstrapServer;
-import org.jboss.messaging.util.JNDIUtil;
+import org.jboss.messaging.util.SimpleString;
import org.jboss.test.messaging.tools.ConfigurationHelper;
import org.jboss.test.messaging.tools.ServerManagement;
import org.jboss.test.messaging.tools.jboss.MBeanConfigurationElement;
@@ -84,11 +81,6 @@
private ServiceContainer sc;
- // service dependencies
- private ObjectName persistenceManagerObjectName;
- private ObjectName postOfficeObjectName;
- private ObjectName jmsUserManagerObjectName;
-
// the server MBean itself
private ObjectName serverPeerObjectName;
@@ -446,24 +438,6 @@
return serverPeerObjectName;
}
-// /**
-// * Only for in-VM use!
-// */
-// public MessageStore getMessageStore() throws Exception
-// {
-// return getServerPeer().getMessageStore();
-// }
-
-// public DestinationManager getDestinationManager() throws Exception
-// {
-// return getServerPeer().getDestinationManager();
-// }
-//
-// public StorageManager getPersistenceManager()
-// {
-// return getServerPeer().getPersistenceManagerInstance();
-// }
-
/**
* Only for in-VM use!
*/
@@ -471,78 +445,6 @@
{
return getMessagingServer();
}
-
-// public void deployTopic(String name, String jndiName, boolean clustered) throws Exception
-// {
-// deployDestination(false, name, jndiName, clustered);
-// }
-//
-// public void deployTopic(String name, String jndiName, int fullSize, int pageSize,
-// int downCacheSize, boolean clustered) throws Exception
-// {
-// deployDestination(false, name, jndiName, fullSize, pageSize, downCacheSize, clustered);
-// }
-//
-// public void deployTopicProgrammatically(String name, String jndiName) throws Exception
-// {
-// deployTopic(name, jndiName, false);
-// }
-//
-// public void deployQueue(String name, String jndiName, boolean clustered) throws Exception
-// {
-// deployDestination(true, name, jndiName, clustered);
-// }
-//
-// public void deployQueue(String name, String jndiName, int fullSize, int pageSize,
-// int downCacheSize, boolean clustered) throws Exception
-// {
-// deployDestination(true, name, jndiName, fullSize, pageSize, downCacheSize, clustered);
-// }
-//
-// public void deployQueueProgrammatically(String name, String jndiName) throws Exception
-// {
-// deployQueue(name, jndiName, false);
-// }
-//
-// public void deployDestination(boolean isQueue, String name, String jndiName, boolean clustered) throws Exception
-// {
-// if (isQueue)
-// getMessagingServer().deployQueue(name, jndiName);
-// else
-// getMessagingServer().deployTopic(name, jndiName);
-// }
-//
-// public void deployDestination(boolean isQueue,
-// String name,
-// String jndiName,
-// int fullSize,
-// int pageSize,
-// int downCacheSize,
-// boolean clustered) throws Exception
-// {
-// if (isQueue)
-// getMessagingServer().deployQueue(name, jndiName, fullSize, pageSize, downCacheSize);
-// else
-// getMessagingServer().deployTopic(name, jndiName, fullSize, pageSize, downCacheSize);
-// }
-//
-// public void undeployDestination(boolean isQueue, String name) throws Exception
-// {
-// if (isQueue)
-// getMessagingServer().undeployQueue(name);
-// else
-// getMessagingServer().undeployTopic(name);
-// }
-//
-// public boolean undeployDestinationProgrammatically(boolean isQueue, String name) throws Exception
-// {
-// if (isQueue)
-// return getMessagingServer().undeployQueue(name);
-// else
-// return getMessagingServer().undeployTopic(name);
-// }
-
-
public void destroyQueue(String name, String jndiName) throws Exception
{
this.getJMSServerManager().destroyQueue(name);
@@ -563,36 +465,6 @@
this.getJMSServerManager().createTopic(name, "/topic/" + (jndiName != null ? jndiName : name));
}
- private void bindObject(String jndiName, Object object)
- throws Exception
- {
- String parentContext;
- String jndiNameInContext;
- int sepIndex = jndiName.lastIndexOf('/');
- if (sepIndex == -1)
- {
- parentContext = "";
- }
- else
- {
- parentContext = jndiName.substring(0, sepIndex);
- }
- jndiNameInContext = jndiName.substring(sepIndex + 1);
- try
- {
- getInitialContext().lookup(jndiName);
- throw new InvalidDestinationException("Destination " + jndiName + " already exists");
- }
- catch (NameNotFoundException e)
- {
- // OK
- }
-
- Context c = JNDIUtil.createContext(getInitialContext(), parentContext);
-
- c.rebind(jndiNameInContext, object);
- }
-
public void deployConnectionFactory(String clientId, String objectName,
List<String> jndiBindings) throws Exception
{
@@ -660,11 +532,11 @@
String prefix = isQueue ? "queuejms." : "topicjms.";
if (roles != null)
{
- getMessagingServer().getSecurityRepository().addMatch(prefix + destName, roles);
+ getMessagingServer().getServerManagement().setSecurityForAddress(prefix + destName, roles);
}
else
{
- getMessagingServer().getSecurityRepository().removeMatch(prefix + destName);
+ getMessagingServer().getServerManagement().removeSecurityForAddress(prefix + destName);
}
}
@@ -679,26 +551,6 @@
return null;
}
-// public Set getNodeIDView() throws Exception
-// {
-// return getServerPeer().getPostOffice().nodeIDView();
-// }
-//
-// public Map getFailoverMap() throws Exception
-// {
-// return getServerPeer().getPostOffice().getFailoverMap();
-// }
-//
-// public Map getRecoveryArea(String queueName) throws Exception
-// {
-// return getServerPeer().getPostOffice().getRecoveryArea(queueName);
-// }
-//
-// public int getRecoveryMapSize(String queueName) throws Exception
-// {
-// return getServerPeer().getPostOffice().getRecoveryMapSize(queueName);
-// }
-
public List pollNotificationListener(long listenerID) throws Exception
{
throw new IllegalStateException("Poll doesn't make sense on a local server. " +
@@ -800,29 +652,21 @@
public Set<Role> getSecurityConfig() throws Exception
{
- return getMessagingServer().getSecurityRepository().getMatch("*");
+ return getMessagingServer().getServerManagement().getSecurityForAddress("*");
}
public void setSecurityConfig(Set<Role> defConfig) throws Exception
{
- getMessagingServer().getSecurityRepository().removeMatch("*");
- getMessagingServer().getSecurityRepository().addMatch("*", defConfig);
+ getMessagingServer().getServerManagement().removeSecurityForAddress("*");
+ getMessagingServer().getServerManagement().setSecurityForAddress("*", defConfig);
}
-
- public void setSecurityConfigOnManager(boolean b, String s, Set<Role> conf) throws Exception
- {
- String prefix = b ? "queuejms." : "topicjms.";
- getMessagingServer().getSecurityRepository().addMatch(prefix + s, conf);
- }
-
-
public void setRedeliveryDelayOnDestination(String dest, boolean queue, long delay) throws Exception
{
String condition = (queue ? "queuejms." : "topicjms.") + dest;
QueueSettings queueSettings = new QueueSettings();
queueSettings.setRedeliveryDelay(delay);
- getMessagingServer().getQueueSettingsRepository().addMatch(condition, queueSettings);
+ getMessagingServer().getServerManagement().setQueueAttributes(condition, queueSettings);
}
Modified: trunk/tests/jms-tests/src/org/jboss/test/messaging/tools/container/RMITestServer.java
===================================================================
--- trunk/tests/jms-tests/src/org/jboss/test/messaging/tools/container/RMITestServer.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/jms-tests/src/org/jboss/test/messaging/tools/container/RMITestServer.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -26,7 +26,6 @@
import java.rmi.server.UnicastRemoteObject;
import java.util.Collections;
import java.util.HashMap;
-import java.util.HashSet;
import java.util.Hashtable;
import java.util.List;
import java.util.Map;
@@ -312,76 +311,11 @@
return server.isStarted();
}
-// public MessageStore getMessageStore() throws Exception
-// {
-// return server.getMessageStore();
-// }
-//
-// public DestinationManager getDestinationManager() throws Exception
-// {
-// return server.getDestinationManager();
-// }
-//
-// public StorageManager getPersistenceManager()
-// {
-// return server.getPersistenceManager();
-// }
-
public MessagingServer getServerPeer() throws Exception
{
return server.getServerPeer();
}
-// public void deployTopic(String name, String jndiName, boolean clustered) throws Exception
-// {
-// server.deployTopic(name, jndiName, clustered);
-// }
-//
-// public void deployTopic(String name,
-// String jndiName,
-// int fullSize,
-// int pageSize,
-// int downCacheSize,
-// boolean clustered) throws Exception
-// {
-// server.deployTopic(name, jndiName, fullSize, pageSize, downCacheSize, clustered);
-// }
-//
-// public void deployTopicProgrammatically(String name, String jndiName) throws Exception
-// {
-// server.deployTopicProgrammatically(name, jndiName);
-// }
-//
-// public void deployQueue(String name, String jndiName, boolean clustered) throws Exception
-// {
-// server.deployQueue(name, jndiName, clustered);
-// }
-//
-// public void deployQueue(String name,
-// String jndiName,
-// int fullSize,
-// int pageSize,
-// int downCacheSize,
-// boolean clustered) throws Exception
-// {
-// server.deployQueue(name, jndiName, fullSize, pageSize, downCacheSize, clustered);
-// }
-//
-// public void deployQueueProgrammatically(String name, String jndiName) throws Exception
-// {
-// server.deployQueueProgrammatically(name, jndiName);
-// }
-//
-// public void undeployDestination(boolean isQueue, String name) throws Exception
-// {
-// server.undeployDestination(isQueue, name);
-// }
-//
-// public boolean undeployDestinationProgrammatically(boolean isQueue, String name) throws Exception
-// {
-// return server.undeployDestinationProgrammatically(isQueue, name);
-// }
-
public void destroyQueue(String name, String jndiName) throws Exception
{
server.destroyQueue(name, jndiName);
@@ -549,24 +483,12 @@
server.setSecurityConfig(defConfig);
}
-
- public void setSecurityConfigOnManager(boolean b, String s, Set<Role> conf) throws Exception
- {
- server.setSecurityConfigOnManager(b, s, conf);
- }
-
-
public void setRedeliveryDelayOnDestination(String dest, boolean queue, long delay) throws Exception
{
server.setRedeliveryDelayOnDestination(dest, queue, delay);
}
-// public void setDefaultRedeliveryDelay(long delay) throws Exception
-// {
-// server.setDefaultRedeliveryDelay(delay);
-// }
-
public InitialContext getInitialContext() throws Exception
{
Hashtable env = new Hashtable();
Modified: trunk/tests/jms-tests/src/org/jboss/test/messaging/tools/container/Server.java
===================================================================
--- trunk/tests/jms-tests/src/org/jboss/test/messaging/tools/container/Server.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/jms-tests/src/org/jboss/test/messaging/tools/container/Server.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -266,7 +266,7 @@
void setSecurityConfig(Set<Role> defConfig) throws Exception;
- void setSecurityConfigOnManager(boolean b, String s, Set<Role> lockedConf) throws Exception;
+ //void setSecurityConfigOnManager(boolean b, String s, Set<Role> lockedConf) throws Exception;
void setRedeliveryDelayOnDestination(String dest, boolean queue, long delay) throws Exception;
Modified: trunk/tests/src/org/jboss/messaging/tests/integration/core/remoting/impl/ClientCrashTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/core/remoting/impl/ClientCrashTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/core/remoting/impl/ClientCrashTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -186,8 +186,7 @@
private void assertActiveConnections(int expectedActiveConnections)
throws Exception
{
- ConnectionManager cm = messagingService.getServer().getConnectionManager();
- assertEquals(expectedActiveConnections, cm.getActiveConnections().size());
+ assertEquals(expectedActiveConnections, messagingService.getServer().getServerManagement().getConnectionCount());
}
// Inner classes -------------------------------------------------
Modified: trunk/tests/src/org/jboss/messaging/tests/integration/core/remoting/impl/PacketFilterTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/core/remoting/impl/PacketFilterTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/core/remoting/impl/PacketFilterTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -93,13 +93,11 @@
ClientConnectionFactory cf = new ClientConnectionFactoryImpl(location);
ClientConnection conn = null;
try
- {
-
+ {
// Deploy using the API
interceptorA = new DummyInterceptor();
messagingService.getServer().getRemotingService().addInterceptor(interceptorA);
-
-
+
interceptorA.sendException=true;
try
{
@@ -117,8 +115,7 @@
conn.createClientSession(false, true, true, -1, false, false);
conn.close();
conn = null;
-
-
+
assertEquals(0, DummyInterceptorB.getCounter());
assertTrue(interceptorA.getCounter() > 0);
@@ -146,7 +143,6 @@
assertTrue(DummyInterceptorB.getCounter() > 0);
assertTrue(interceptorA.getCounter() == 0);
-
log.info("Undeploying server");
messagingService.getServer().getRemotingService().removeInterceptor(interceptorB);
@@ -188,13 +184,11 @@
ClientConnection conn = null;
try
- {
-
+ {
interceptor = new DummyInterceptor();
messagingService.getServer().getRemotingService().addInterceptor(interceptor);
- messagingService.getServer().getPostOffice().addBinding(QUEUE1, QUEUE1, null, false, false);
-
- interceptor.sendException=false;
+
+ interceptor.sendException = false;
Location location = new LocationImpl(TransportType.TCP, "localhost", ConfigurationImpl.DEFAULT_PORT);
@@ -202,6 +196,9 @@
conn = cf.createConnection();
conn.start();
ClientSession session = conn.createClientSession(false, true, true, -1, false, false);
+
+ session.createQueue(QUEUE1, QUEUE1, null, false, true);
+
ClientProducer producer = session.createProducer(QUEUE1);
String msg = "msg " + UUID.randomUUID().toString();
@@ -213,8 +210,7 @@
ClientConsumer consumer = session.createConsumer(QUEUE1);
Message m = consumer.receive(100000);
assertEquals(m.getProperty(new SimpleString("DummyInterceptor")), new SimpleString("was here"));
-
-
+
assertNotNull(m);
assertEquals(msg, m.getBody().getString());
Modified: trunk/tests/src/org/jboss/messaging/tests/integration/jms/server/impl/JMSServerManagerimplTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/integration/jms/server/impl/JMSServerManagerimplTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/jms/server/impl/JMSServerManagerimplTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -35,7 +35,6 @@
import junit.framework.TestCase;
import org.jboss.messaging.core.config.impl.ConfigurationImpl;
-import org.jboss.messaging.core.management.impl.MessagingServerManagementImpl;
import org.jboss.messaging.core.server.MessagingService;
import org.jboss.messaging.core.server.impl.MessagingServiceImpl;
import org.jboss.messaging.jms.client.JBossConnectionFactory;
@@ -53,15 +52,13 @@
protected void setUp() throws Exception
{
- jmsServerManager = new JMSServerManagerImpl();
- MessagingServerManagementImpl messagingServerManagement = new MessagingServerManagementImpl();
+
ConfigurationImpl conf = new ConfigurationImpl();
conf.getConnectionParams().setInVMOptimisationEnabled(true);
conf.setTransport(INVM);
messagingService = MessagingServiceImpl.newNullStorageMessagingServer(conf);
messagingService.start();
- jmsServerManager.setMessagingServerManagement(messagingServerManagement);
- messagingServerManagement.setMessagingServer(messagingService.getServer());
+ jmsServerManager = new JMSServerManagerImpl(messagingService.getServer().getServerManagement());
Hashtable env = new Hashtable();
env.put("java.naming.factory.initial",
"org.jboss.messaging.tests.util.InVMSingleInitialContextFactory");
Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientBrowserImplTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientBrowserImplTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientBrowserImplTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -25,6 +25,7 @@
import org.easymock.EasyMock;
import org.jboss.messaging.core.client.ClientBrowser;
import org.jboss.messaging.core.client.ClientMessage;
+import org.jboss.messaging.core.client.ClientSession;
import org.jboss.messaging.core.client.impl.ClientBrowserImpl;
import org.jboss.messaging.core.client.impl.ClientConnectionInternal;
import org.jboss.messaging.core.client.impl.ClientSessionInternal;
@@ -49,18 +50,13 @@
public void testConstructor() throws Exception
{
ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
- ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
+ final long serverTargetID = 1209102;
+ final long sessionTargetID = 19281982;
- EasyMock.replay(session, connection, rc);
-
ClientBrowser browser =
- new ClientBrowserImpl(session, 67567576);
-
- EasyMock.verify(session, connection, rc);
+ new ClientBrowserImpl(session, serverTargetID, rc, sessionTargetID);
}
public void testHasNextMessage() throws Exception
@@ -71,163 +67,129 @@
public void testNextMessage() throws Exception
{
- ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
- ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
+ ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
+ final long serverTargetID = 1209102;
+ final long sessionTargetID = 19281982;
- final long targetID = 187282;
-
- long sessionTargetID = 198271982;
-
ReceiveMessage resp = new ReceiveMessage();
- EasyMock.expect(session.getServerTargetID()).andReturn(sessionTargetID);
+ EasyMock.expect(rc.sendBlocking(serverTargetID, sessionTargetID, new PacketImpl(PacketImpl.SESS_BROWSER_NEXTMESSAGE))).andReturn(resp);
- EasyMock.expect(rc.sendBlocking(targetID, sessionTargetID, new PacketImpl(PacketImpl.SESS_BROWSER_NEXTMESSAGE))).andReturn(resp);
+ EasyMock.replay(session, rc);
- EasyMock.replay(session, connection, rc);
-
ClientBrowser browser =
- new ClientBrowserImpl(session, targetID);
+ new ClientBrowserImpl(session, serverTargetID, rc, sessionTargetID);
ClientMessage msg2 = browser.nextMessage();
assertTrue(msg2 == null);
- EasyMock.verify(session, connection, rc);
+ EasyMock.verify(session, rc);
}
public void testReset() throws Exception
{
ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
- ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
+ final long serverTargetID = 1209102;
+ final long sessionTargetID = 19281982;
+
+ ClientBrowser browser =
+ new ClientBrowserImpl(session, serverTargetID, rc, sessionTargetID);
- final long targetID = 187282;
+ EasyMock.expect(rc.sendBlocking(serverTargetID, sessionTargetID, new PacketImpl(PacketImpl.SESS_BROWSER_RESET))).andReturn(null);
- long sessionTargetID = 198271982;
+ EasyMock.replay(session, rc);
- EasyMock.expect(session.getServerTargetID()).andReturn(sessionTargetID);
-
- EasyMock.expect(rc.sendBlocking(targetID, sessionTargetID, new PacketImpl(PacketImpl.SESS_BROWSER_RESET))).andReturn(null);
-
- EasyMock.replay(session, connection, rc);
-
- ClientBrowser browser =
- new ClientBrowserImpl(session, targetID);
-
browser.reset();
- EasyMock.verify(session, connection, rc);
+ EasyMock.verify(session, rc);
}
public void testClose() throws Exception
{
- ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
- ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
+ ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
-
- EasyMock.replay(session, connection, rc);
-
- final long targetID = 187282;
-
+ final long serverTargetID = 1209102;
+ final long sessionTargetID = 19281982;
+
ClientBrowser browser =
- new ClientBrowserImpl(session, targetID);
+ new ClientBrowserImpl(session, serverTargetID, rc, sessionTargetID);
+
+ EasyMock.expect(rc.sendBlocking(serverTargetID, sessionTargetID, new PacketImpl(PacketImpl.CLOSE))).andReturn(null);
- EasyMock.verify(session, connection, rc);
-
- EasyMock.reset(session, connection, rc);
-
- long sessionTargetID = 198271982;
-
- EasyMock.expect(session.getServerTargetID()).andReturn(sessionTargetID);
-
- EasyMock.expect(rc.sendBlocking(targetID, sessionTargetID, new PacketImpl(PacketImpl.CLOSE))).andReturn(null);
-
session.removeBrowser(browser);
- EasyMock.replay(session, connection, rc);
+ EasyMock.replay(session, rc);
assertFalse(browser.isClosed());
browser.close();
- EasyMock.verify(session, connection, rc);
+ EasyMock.verify(session, rc);
assertTrue(browser.isClosed());
//Try and close again - nothing should happen
- EasyMock.reset(session, connection, rc);
+ EasyMock.reset(session, rc);
- EasyMock.replay(session, connection, rc);
+ EasyMock.replay(session, rc);
browser.close();
- EasyMock.verify(session, connection, rc);
+ EasyMock.verify(session, rc);
}
// Private -----------------------------------------------------------------------------------------------------------
private void testHasNextMessage(final boolean hasNext) throws Exception
{
- ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
- ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
+ ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
+ final long serverTargetID = 187282;
- final long targetID = 187282;
+ final long sessionTargetID = 198271982;
- long sessionTargetID = 198271982;
-
SessionBrowserHasNextMessageResponseMessage resp = new SessionBrowserHasNextMessageResponseMessage(hasNext);
- EasyMock.expect(session.getServerTargetID()).andReturn(sessionTargetID);
+ EasyMock.expect(rc.sendBlocking(serverTargetID, sessionTargetID, new PacketImpl(PacketImpl.SESS_BROWSER_HASNEXTMESSAGE))).andReturn(resp);
- EasyMock.expect(rc.sendBlocking(targetID, sessionTargetID, new PacketImpl(PacketImpl.SESS_BROWSER_HASNEXTMESSAGE))).andReturn(resp);
+ EasyMock.replay(session, rc);
- EasyMock.replay(session, connection, rc);
-
ClientBrowser browser =
- new ClientBrowserImpl(session, targetID);
+ new ClientBrowserImpl(session, serverTargetID, rc, sessionTargetID);
boolean has = browser.hasNextMessage();
assertEquals(has, hasNext);
- EasyMock.verify(session, connection, rc);
+ EasyMock.verify(session, rc);
}
public void testCleanUp() throws Exception
{
ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
- ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
-
- EasyMock.replay(session, connection, rc);
-
+ final long serverTargetID = 187282;
+
+ final long sessionTargetID = 198271982;
+
ClientBrowser browser =
- new ClientBrowserImpl(session, 67567576);
- EasyMock.verify(session, connection, rc);
- EasyMock.reset(session, connection, rc);
+ new ClientBrowserImpl(session, serverTargetID, rc, sessionTargetID);
+
session.removeBrowser(browser);
- EasyMock.replay(session, connection, rc);
+
+ EasyMock.replay(session, rc);
+
browser.cleanUp();
- EasyMock.verify(session, connection, rc);
-
+
+ EasyMock.verify(session, rc);
}
}
Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientConnectionFactoryImplTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientConnectionFactoryImplTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientConnectionFactoryImplTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -33,6 +33,7 @@
import org.jboss.messaging.core.client.impl.LocationImpl;
import org.jboss.messaging.core.exception.MessagingException;
import org.jboss.messaging.core.logging.Logger;
+import org.jboss.messaging.core.remoting.PacketDispatcher;
import org.jboss.messaging.core.remoting.RemotingConnection;
import org.jboss.messaging.core.remoting.RemotingConnectionFactory;
import org.jboss.messaging.core.remoting.TransportType;
@@ -220,6 +221,8 @@
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ PacketDispatcher dispatcher = EasyMock.createStrictMock(PacketDispatcher.class);
+
ClientConnectionFactory cf =
new ClientConnectionFactoryImpl(rcf, location, params,
32432, 4323,
@@ -244,8 +247,10 @@
EasyMock.expect(rc.sendBlocking(0, 0, request)).andReturn(response);
- EasyMock.replay(rcf, rc);
+ EasyMock.expect(rc.getPacketDispatcher()).andReturn(dispatcher);
+ EasyMock.replay(rcf, rc, dispatcher);
+
ClientConnection conn;
if (username == null)
@@ -257,7 +262,7 @@
conn = cf.createConnection(username, password);
}
- EasyMock.verify(rcf, rc);
+ EasyMock.verify(rcf, rc, dispatcher);
assertTrue(conn instanceof ClientConnectionImpl);
Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientConnectionImplTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientConnectionImplTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientConnectionImplTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -27,6 +27,7 @@
import org.jboss.messaging.core.client.impl.*;
import org.jboss.messaging.core.exception.MessagingException;
import org.jboss.messaging.core.logging.Logger;
+import org.jboss.messaging.core.remoting.PacketDispatcher;
import org.jboss.messaging.core.remoting.RemotingConnection;
import org.jboss.messaging.core.remoting.TransportType;
import org.jboss.messaging.core.remoting.impl.wireformat.ConnectionCreateSessionMessage;
@@ -49,7 +50,7 @@
{
private static final Logger log = Logger.getLogger(ClientConnectionImplTest.class);
- public void testGetAttributes() throws Exception
+ public void testConstructor() throws Exception
{
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
@@ -58,11 +59,18 @@
Location location = new LocationImpl(TransportType.TCP, "sausages");
ClientConnectionFactory cf = new ClientConnectionFactoryImpl(location);
+
+ final long serverTargetID = 12091092;
+
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+
+ EasyMock.replay(rc, pd);
+
+ ClientConnectionInternal conn = new ClientConnectionImpl(cf, serverTargetID, rc, version, pd);
+
+ EasyMock.verify(rc, pd);
- ClientConnectionInternal conn = new ClientConnectionImpl(cf, 23, rc, version);
-
assertTrue(conn.getServerVersion() == version);
- assertTrue(conn.getRemotingConnection() == rc);
}
public void testCreateSession() throws Exception
@@ -86,19 +94,21 @@
final int serverTargetID = 23;
- ClientConnectionInternal conn = new ClientConnectionImpl(cf, serverTargetID, rc, version);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+ ClientConnectionInternal conn = new ClientConnectionImpl(cf, serverTargetID, rc, version, pd);
+
rc.sendOneWay(serverTargetID, serverTargetID, new PacketImpl(PacketImpl.CONN_START));
EasyMock.expect(rc.sendBlocking(serverTargetID, serverTargetID, new PacketImpl(PacketImpl.CONN_STOP))).andReturn(null);
- EasyMock.replay(rc);
+ EasyMock.replay(rc, pd);
conn.start();
conn.stop();
- EasyMock.verify(rc);
+ EasyMock.verify(rc, pd);
}
public void testSetRemotingSessionListener() throws Exception
@@ -113,8 +123,10 @@
final int serverTargetID = 23;
- ClientConnectionInternal conn = new ClientConnectionImpl(cf, serverTargetID, rc, version);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+ ClientConnectionInternal conn = new ClientConnectionImpl(cf, serverTargetID, rc, version, pd);
+
RemotingSessionListener listener = new RemotingSessionListener()
{
public void sessionDestroyed(long sessionID, MessagingException me)
@@ -124,11 +136,11 @@
rc.setRemotingSessionListener(listener);
- EasyMock.replay(rc);
+ EasyMock.replay(rc, pd);
conn.setRemotingSessionListener(listener);
- EasyMock.verify(rc);
+ EasyMock.verify(rc, pd);
}
public void testClose() throws Exception
@@ -143,8 +155,10 @@
final int serverTargetID = 23;
- ClientConnectionInternal conn = new ClientConnectionImpl(cf, serverTargetID, rc, version);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+ ClientConnectionInternal conn = new ClientConnectionImpl(cf, serverTargetID, rc, version, pd);
+
assertFalse(conn.isClosed());
//Create some sessions
@@ -167,22 +181,22 @@
rc.stop();
- EasyMock.replay(rc, sess1, sess2, sess3);
+ EasyMock.replay(rc, pd, sess1, sess2, sess3);
conn.close();
- EasyMock.verify(rc, sess1, sess2, sess3);
+ EasyMock.verify(rc, pd, sess1, sess2, sess3);
assertTrue(conn.isClosed());
//Close again should do nothing
- EasyMock.reset(rc, sess1, sess2, sess3);
+ EasyMock.reset(rc, pd, sess1, sess2, sess3);
- EasyMock.replay(rc, sess1, sess2, sess3);
+ EasyMock.replay(rc, pd, sess1, sess2, sess3);
conn.close();
- EasyMock.verify(rc, sess1, sess2, sess3);
+ EasyMock.verify(rc, pd, sess1, sess2, sess3);
try
{
@@ -252,8 +266,10 @@
final int serverTargetID = 23;
- ClientConnectionInternal conn = new ClientConnectionImpl(cf, serverTargetID, rc, version);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+ ClientConnectionInternal conn = new ClientConnectionImpl(cf, serverTargetID, rc, version, pd);
+
//Create some sessions
ClientSessionInternal sess1 = EasyMock.createStrictMock(ClientSessionInternal.class);
@@ -299,11 +315,13 @@
ClientConnectionFactory cf = new ClientConnectionFactoryImpl(location);
- final int connTargetID = 17267162;
+ final int serverTargetID = 17267162;
Version version = new VersionImpl("uqysuyqs", 1, 1, 1, 12, "uqysuays");
- ClientConnection conn = new ClientConnectionImpl(cf, connTargetID, rc, version);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+
+ ClientConnectionInternal conn = new ClientConnectionImpl(cf, serverTargetID, rc, version, pd);
ConnectionCreateSessionMessage request = new ConnectionCreateSessionMessage(true, true, true);
@@ -311,14 +329,15 @@
ConnectionCreateSessionResponseMessage response = new ConnectionCreateSessionResponseMessage(sessionTargetID);
- EasyMock.expect(rc.sendBlocking(connTargetID, connTargetID, request)).andReturn(response);
+ EasyMock.expect(rc.sendBlocking(serverTargetID, serverTargetID, request)).andReturn(response);
- EasyMock.replay(rc);
+ EasyMock.replay(rc, pd);
+
ClientSession session = conn.createClientSession(true, true, true, 1);
conn.cleanUp();
assertTrue(session.isClosed());
assertTrue(conn.isClosed());
- EasyMock.verify(rc);
+ EasyMock.verify(rc, pd);
}
@@ -330,11 +349,13 @@
ClientConnectionFactory cf = new ClientConnectionFactoryImpl(location);
- final int connTargetID = 17267162;
+ final int serverTargetID = 17267162;
Version version = new VersionImpl("uqysuyqs", 1, 1, 1, 12, "uqysuays");
- ClientConnection conn = new ClientConnectionImpl(cf, connTargetID, rc, version);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+
+ ClientConnectionInternal conn = new ClientConnectionImpl(cf, serverTargetID, rc, version, pd);
ConnectionCreateSessionMessage request = new ConnectionCreateSessionMessage(true, true, true);
@@ -342,18 +363,18 @@
ConnectionCreateSessionResponseMessage response = new ConnectionCreateSessionResponseMessage(sessionTargetID);
- EasyMock.expect(rc.sendBlocking(connTargetID, connTargetID, request)).andReturn(response).anyTimes();
+ EasyMock.expect(rc.sendBlocking(serverTargetID, serverTargetID, request)).andReturn(response).anyTimes();
- EasyMock.replay(rc);
- ClientSession session = conn.createClientSession(true, true, true, 1);
+ EasyMock.replay(rc, pd);
+ ClientSession session1 = conn.createClientSession(true, true, true, 1);
ClientSession session2 = conn.createClientSession(true, true, true, 2);
ClientSession session3 = conn.createClientSession(true, true, true, 3);
conn.cleanUp();
- assertTrue(session.isClosed());
+ assertTrue(session1.isClosed());
assertTrue(session2.isClosed());
assertTrue(session3.isClosed());
assertTrue(conn.isClosed());
- EasyMock.verify(rc);
+ EasyMock.verify(rc, pd);
}
@@ -379,21 +400,23 @@
cf.setDefaultBlockOnAcknowledge(!blockOnAcknowledge); // Should be ignored
}
- final int connTargetID = 17267162;
+ final int serverTargetID = 17267162;
Version version = new VersionImpl("uqysuyqs", 1, 1, 1, 12, "uqysuays");
+
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+
+ ClientConnectionInternal conn = new ClientConnectionImpl(cf, serverTargetID, rc, version, pd);
- ClientConnection conn = new ClientConnectionImpl(cf, connTargetID, rc, version);
-
ConnectionCreateSessionMessage request = new ConnectionCreateSessionMessage(xa, autoCommitSends, autoCommitAcks);
final int sessionTargetID = 12127162;
ConnectionCreateSessionResponseMessage response = new ConnectionCreateSessionResponseMessage(sessionTargetID);
- EasyMock.expect(rc.sendBlocking(connTargetID, connTargetID, request)).andReturn(response);
+ EasyMock.expect(rc.sendBlocking(serverTargetID, serverTargetID, request)).andReturn(response);
- EasyMock.replay(rc);
+ EasyMock.replay(rc, pd);
ClientSession session;
@@ -413,6 +436,6 @@
assertEquals(autoCommitAcks, session.isAutoCommitAcks());
assertEquals(blockOnAcknowledge, session.isBlockOnAcknowledge());
- EasyMock.verify(rc);
+ EasyMock.verify(rc, pd);
}
}
Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientConsumerImplTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientConsumerImplTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientConsumerImplTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -62,20 +62,15 @@
testConstructor(6565, 71627162, -1, false);
testConstructor(6565, 71627162, -1, true);
}
-
-
+
public void testHandleMessageNoHandler() throws Exception
{
ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
ExecutorService executor = EasyMock.createStrictMock(ExecutorService.class);
-
-
- EasyMock.expect(session.getExecutorService()).andReturn(executor);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
-
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+
final int numMessages = 10;
List<ClientMessage> msgs = new ArrayList<ClientMessage>();
@@ -89,18 +84,18 @@
EasyMock.expect(msg.getPriority()).andReturn((byte)4); //default priority
}
- EasyMock.replay(session, connection, rc, executor);
+ EasyMock.replay(session, connection, rc, executor, pd);
EasyMock.replay(msgs.toArray());
ClientConsumerInternal consumer =
- new ClientConsumerImpl(session, 54545, 54544, 545454, false);
-
+ new ClientConsumerImpl(session, 675765, 67565, 787, false, rc, pd, executor, 878787);
+
for (ClientMessage msg: msgs)
{
consumer.handleMessage(msg);
}
- EasyMock.verify(session, connection, rc, executor);
+ EasyMock.verify(session, connection, rc, executor, pd);
EasyMock.verify(msgs.toArray());
assertEquals(numMessages, consumer.getBufferSize());
@@ -112,12 +107,8 @@
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
ExecutorService executor = EasyMock.createStrictMock(ExecutorService.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
-
- EasyMock.expect(session.getExecutorService()).andReturn(executor);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
-
final int numMessages = 10;
List<ClientMessage> msgs = new ArrayList<ClientMessage>();
@@ -133,11 +124,11 @@
executor.execute(EasyMock.isA(Runnable.class));
}
- EasyMock.replay(session, connection, rc, executor);
+ EasyMock.replay(session, connection, rc, executor, pd);
EasyMock.replay(msgs.toArray());
ClientConsumerInternal consumer =
- new ClientConsumerImpl(session, 54545, 54544, 545454, false);
+ new ClientConsumerImpl(session, 675765, 67565, 787, false, rc, pd, executor, 878787);
consumer.setMessageHandler(new MessageHandler()
{
@@ -151,7 +142,7 @@
consumer.handleMessage(msg);
}
- EasyMock.verify(session, connection, rc, executor);
+ EasyMock.verify(session, connection, rc, executor, pd);
EasyMock.verify(msgs.toArray());
assertEquals(numMessages, consumer.getBufferSize());
@@ -163,12 +154,9 @@
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
ExecutorService executor = EasyMock.createStrictMock(ExecutorService.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
MessageHandler handler = EasyMock.createStrictMock(MessageHandler.class);
- EasyMock.expect(session.getExecutorService()).andReturn(executor);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
-
final int numMessages = 10;
List<ClientMessage> msgs = new ArrayList<ClientMessage>();
@@ -190,11 +178,11 @@
handler.onMessage(msg);
}
- EasyMock.replay(session, connection, rc, executor);
+ EasyMock.replay(session, connection, rc, executor, pd, handler);
EasyMock.replay(msgs.toArray());
ClientConsumerInternal consumer =
- new ClientConsumerImpl(session, 54545, 54544, 545454, true);
+ new ClientConsumerImpl(session, 675765, 67565, 787, true, rc, pd, executor, 878787);
consumer.setMessageHandler(handler);
@@ -203,7 +191,7 @@
consumer.handleMessage(msg);
}
- EasyMock.verify(session, connection, rc, executor);
+ EasyMock.verify(session, connection, rc, executor, pd, handler);
EasyMock.verify(msgs.toArray());
assertEquals(0, consumer.getBufferSize());
@@ -215,11 +203,9 @@
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
ExecutorService executor = EasyMock.createStrictMock(ExecutorService.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+ MessageHandler handler = EasyMock.createStrictMock(MessageHandler.class);
- EasyMock.expect(session.getExecutorService()).andReturn(executor);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
-
final int numMessages = 10;
List<ClientMessage> msgs = new ArrayList<ClientMessage>();
@@ -233,21 +219,21 @@
EasyMock.expect(msg.getPriority()).andReturn((byte)4); //default priority
}
- EasyMock.replay(session, connection, rc, executor);
+ EasyMock.replay(session, connection, rc, executor, pd);
EasyMock.replay(msgs.toArray());
ClientConsumerInternal consumer =
- new ClientConsumerImpl(session, 54545, 54544, 545454, false);
+ new ClientConsumerImpl(session, 675765, 67565, 787, false, rc, pd, executor, 878787);
for (ClientMessage msg: msgs)
{
consumer.handleMessage(msg);
}
- EasyMock.verify(session, connection, rc, executor);
+ EasyMock.verify(session, connection, rc, executor, pd);
EasyMock.verify(msgs.toArray());
- EasyMock.reset(session, connection, rc, executor);
+ EasyMock.reset(session, connection, rc, executor, pd);
EasyMock.reset(msgs.toArray());
assertEquals(numMessages, consumer.getBufferSize());
@@ -257,14 +243,13 @@
executor.execute(EasyMock.isA(Runnable.class));
}
- EasyMock.replay(session, connection, rc, executor);
+ EasyMock.replay(session, connection, rc, executor, pd, handler);
EasyMock.replay(msgs.toArray());
- MessageHandler handler = EasyMock.createStrictMock(MessageHandler.class);
consumer.setMessageHandler(handler);
- EasyMock.verify(session, connection, rc, executor);
+ EasyMock.verify(session, connection, rc, executor, pd, handler);
EasyMock.verify(msgs.toArray());
}
@@ -274,12 +259,8 @@
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
ExecutorService executor = EasyMock.createStrictMock(ExecutorService.class);
-
- EasyMock.expect(session.getExecutorService()).andStubReturn(executor);
- EasyMock.expect(session.getConnection()).andStubReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andStubReturn(rc);
-
-
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+
final int numMessages = 10;
List<ClientMessage> msgs = new ArrayList<ClientMessage>();
@@ -301,11 +282,11 @@
EasyMock.expect(msg.getEncodeSize()).andReturn(1);
}
- EasyMock.replay(session, connection, rc, executor);
+ EasyMock.replay(session, connection, rc, executor, pd);
EasyMock.replay(msgs.toArray());
ClientConsumerInternal consumer =
- new ClientConsumerImpl(session, 54545, 54544, 545454, false);
+ new ClientConsumerImpl(session, 675765, 67565, 787, false, rc, pd, executor, 878787);
for (ClientMessage msg: msgs)
{
@@ -321,7 +302,10 @@
assertTrue(msg == msgs.get(i));
}
- assertNull(consumer.receiveImmediate());
+ assertNull(consumer.receiveImmediate());
+
+ EasyMock.verify(session, connection, rc, executor, pd);
+ EasyMock.verify(msgs.toArray());
}
public void testReceiveWithTimeout() throws Exception
@@ -330,12 +314,8 @@
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
ExecutorService executor = EasyMock.createStrictMock(ExecutorService.class);
-
- EasyMock.expect(session.getExecutorService()).andStubReturn(executor);
- EasyMock.expect(session.getConnection()).andStubReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andStubReturn(rc);
-
-
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+
final int numMessages = 10;
List<ClientMessage> msgs = new ArrayList<ClientMessage>();
@@ -357,11 +337,11 @@
EasyMock.expect(msg.getEncodeSize()).andReturn(1);
}
- EasyMock.replay(session, connection, rc, executor);
+ EasyMock.replay(session, connection, rc, executor, pd);
EasyMock.replay(msgs.toArray());
ClientConsumerInternal consumer =
- new ClientConsumerImpl(session, 54545, 54544, 545454, false);
+ new ClientConsumerImpl(session, 675765, 67565, 787, false, rc, pd, executor, 878787);
for (ClientMessage msg: msgs)
{
@@ -378,6 +358,9 @@
}
assertNull(consumer.receiveImmediate());
+
+ EasyMock.verify(session, connection, rc, executor, pd);
+ EasyMock.verify(msgs.toArray());
}
public void testReceiveImmediate() throws Exception
@@ -386,12 +369,8 @@
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
ExecutorService executor = EasyMock.createStrictMock(ExecutorService.class);
-
- EasyMock.expect(session.getExecutorService()).andStubReturn(executor);
- EasyMock.expect(session.getConnection()).andStubReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andStubReturn(rc);
-
-
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+
final int numMessages = 10;
List<ClientMessage> msgs = new ArrayList<ClientMessage>();
@@ -413,11 +392,11 @@
EasyMock.expect(msg.getEncodeSize()).andReturn(1);
}
- EasyMock.replay(session, connection, rc, executor);
+ EasyMock.replay(session, connection, rc, executor, pd);
EasyMock.replay(msgs.toArray());
ClientConsumerInternal consumer =
- new ClientConsumerImpl(session, 54545, 54544, 545454, false);
+ new ClientConsumerImpl(session, 675765, 67565, 787, false, rc, pd, executor, 878787);
for (ClientMessage msg: msgs)
{
@@ -433,7 +412,10 @@
assertTrue(msg == msgs.get(i));
}
- assertNull(consumer.receiveImmediate());
+ assertNull(consumer.receiveImmediate());
+
+ EasyMock.verify(session, connection, rc, executor, pd);
+ EasyMock.verify(msgs.toArray());
}
public void testReceiveExpired() throws Exception
@@ -442,10 +424,7 @@
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
ExecutorService executor = EasyMock.createStrictMock(ExecutorService.class);
-
- EasyMock.expect(session.getExecutorService()).andStubReturn(executor);
- EasyMock.expect(session.getConnection()).andStubReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andStubReturn(rc);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
final int numMessages = 10;
@@ -468,11 +447,11 @@
EasyMock.expect(msg.getEncodeSize()).andReturn(1);
}
- EasyMock.replay(session, connection, rc, executor);
+ EasyMock.replay(session, connection, rc, executor, pd);
EasyMock.replay(msgs.toArray());
ClientConsumerInternal consumer =
- new ClientConsumerImpl(session, 54545, 54544, 545454, false);
+ new ClientConsumerImpl(session, 675765, 67565, 787, false, rc, pd, executor, 878787);
for (ClientMessage msg: msgs)
{
@@ -481,7 +460,13 @@
assertEquals(numMessages, consumer.getBufferSize());
- assertNull(consumer.receiveImmediate());
+ for (ClientMessage msg: msgs)
+ {
+ assertNull(consumer.receiveImmediate());
+ }
+
+ EasyMock.verify(session, connection, rc, executor, pd);
+ EasyMock.verify(msgs.toArray());
}
public void testCleanUp() throws Exception
@@ -490,48 +475,37 @@
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
ExecutorService executor = EasyMock.createStrictMock(ExecutorService.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
- EasyMock.expect(session.getExecutorService()).andReturn(executor);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
-
- EasyMock.replay(session, connection, rc);
-
+ final long clientTargetID = 120912;
ClientConsumerInternal consumer =
- new ClientConsumerImpl(session, 1, 2, 3, true);
+ new ClientConsumerImpl(session, 675765, clientTargetID, 787, false, rc, pd, executor, 878787);
- EasyMock.verify(session, connection, rc);
-
- EasyMock.reset(session, connection, rc);
- PacketDispatcher packetDispatcher = EasyMock.createStrictMock(PacketDispatcher.class);
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(packetDispatcher);
- packetDispatcher.unregister(2);
+ pd.unregister(clientTargetID);
session.removeConsumer(consumer);
- EasyMock.replay(session, connection, rc, packetDispatcher);
+ EasyMock.replay(session, connection, rc, executor, pd);
consumer.cleanUp();
- EasyMock.verify(session, connection, rc, packetDispatcher);
+ EasyMock.verify(session, connection, rc, executor, pd);
}
// Private -----------------------------------------------------------------------------------------------------------
private void testConstructor(final long targetID, final long clientTargetID,
- final int windowSize, final boolean direct) throws Exception
+ final int windowSize, final boolean direct) throws Exception
{
ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
ExecutorService executor = EasyMock.createStrictMock(ExecutorService.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+ final long sessionTargetID = 102912;
- EasyMock.expect(session.getExecutorService()).andReturn(executor);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
+ EasyMock.replay(session, connection, rc, executor, pd);
- EasyMock.replay(session, connection, rc);
-
ClientConsumerInternal consumer =
- new ClientConsumerImpl(session, targetID, clientTargetID, windowSize, direct);
+ new ClientConsumerImpl(session, targetID, clientTargetID, windowSize, direct, rc, pd, executor, sessionTargetID);
- EasyMock.verify(session, connection, rc);
+ EasyMock.verify(session, connection, rc, executor, pd);
assertEquals(direct, consumer.isDirect());
assertFalse(consumer.isClosed());
Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientProducerImplTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientProducerImplTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientProducerImplTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -124,20 +124,17 @@
ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
-
final int initialCredits = 7612672;
- EasyMock.replay(session, connection, rc);
+ EasyMock.replay(session, connection, rc, pd);
ClientProducerInternal producer =
new ClientProducerImpl(session, 7876L, 76767L, new SimpleString("uhasuuhs"), null,
- false, false, initialCredits);
-
- EasyMock.verify(session, connection, rc);
-
+ false, false, initialCredits,
+ rc, pd, 871872L);
+
assertEquals(initialCredits, producer.getAvailableCredits());
final int credits1 = 1928;
@@ -149,6 +146,8 @@
assertEquals(initialCredits + credits1 + credits2, producer.getAvailableCredits());
producer.receiveCredits(credits3);
assertEquals(initialCredits + credits1 + credits2 + credits3, producer.getAvailableCredits());
+
+ EasyMock.verify(session, connection, rc, pd);
}
public void testClose() throws Exception
@@ -157,28 +156,22 @@
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+
+ final long clientTargetID = 121212;
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
+ EasyMock.replay(session, connection, rc, pd);
- EasyMock.replay(session, connection, rc);
-
- final int initialCredits = 7612672;
-
- final long clientTargetID = 121212;
-
ClientProducerInternal producer =
new ClientProducerImpl(session, 7876L, clientTargetID, new SimpleString("uhasuuhs"), null,
- false, false, initialCredits);
+ false, false, 8767878,
+ rc, pd, 871872L);
assertFalse(producer.isClosed());
- EasyMock.verify(session, connection, rc);
- EasyMock.reset(session, connection, rc);
-
-
+ EasyMock.verify(session, connection, rc, pd);
+ EasyMock.reset(session, connection, rc, pd);
+
session.removeProducer(producer);
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
pd.unregister(clientTargetID);
EasyMock.replay(session, connection, rc, pd);
@@ -205,29 +198,30 @@
ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
-
- SimpleString address = new SimpleString("uhasuuhs");
-
- EasyMock.replay(session, connection, rc);
-
+ EasyMock.replay(session, connection, rc, pd);
+
+ final long clientTargetID = 121212;
+
ClientProducerInternal producer =
- new ClientProducerImpl(session, 7876L, 76767L, address, null,
- true, true, 1);
+ new ClientProducerImpl(session, 7876L, clientTargetID, new SimpleString("uhasuuhs"), null,
+ false, false, 8767878,
+ rc, pd, 871872L);
- EasyMock.verify(session, connection, rc);
+ EasyMock.verify(session, connection, rc, pd);
- EasyMock.reset(session, connection, rc);
- PacketDispatcher packetDispatcher = EasyMock.createStrictMock(PacketDispatcher.class);
+ EasyMock.reset(session, connection, rc, pd);
+
session.removeProducer(producer);
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(packetDispatcher);
- packetDispatcher.unregister(76767L);
- EasyMock.replay(session, connection, rc, packetDispatcher);
+
+ pd.unregister(clientTargetID);
+
+ EasyMock.replay(session, connection, rc, pd);
+
producer.cleanUp();
- EasyMock.verify(session, connection, rc, packetDispatcher);
+ EasyMock.verify(session, connection, rc, pd);
}
// Private ----------------------------------------------------------------------------------------
@@ -237,31 +231,29 @@
ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
-
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+
SimpleString address = new SimpleString("uhasuuhs");
final int initialCredits = 7612672;
- EasyMock.replay(session, connection, rc);
+ EasyMock.replay(session, connection, rc, pd);
TokenBucketLimiter limiter = maxRate != -1 ? new TokenBucketLimiterImpl(maxRate, false) : null;
ClientProducerInternal producer =
new ClientProducerImpl(session, 7876L, 76767L, address, limiter,
- blockOnNP, blockOnP, initialCredits);
+ blockOnNP, blockOnP, initialCredits,
+ rc, pd, 871872L);
- EasyMock.verify(session, connection, rc);
+ EasyMock.verify(session, connection, rc, pd);
assertEquals(address, producer.getAddress());
assertEquals(initialCredits, producer.getInitialWindowSize());
assertEquals(maxRate, producer.getMaxRate());
assertEquals(blockOnNP, producer.isBlockOnNonPersistentSend());
assertEquals(blockOnP, producer.isBlockOnPersistentSend());
- assertFalse(producer.isClosed());
-
+ assertFalse(producer.isClosed());
}
private void testSend(final int maxRate, final int windowSize,
@@ -273,11 +265,9 @@
ClientSessionInternal session = EasyMock.createStrictMock(ClientSessionInternal.class);
ClientConnectionInternal connection = EasyMock.createStrictMock(ClientConnectionInternal.class);
RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
ClientMessage message = EasyMock.createStrictMock(ClientMessage.class);
- EasyMock.expect(session.getConnection()).andReturn(connection);
- EasyMock.expect(connection.getRemotingConnection()).andReturn(rc);
-
if (sendAddress != null)
{
message.setDestination(sendAddress);
@@ -302,8 +292,6 @@
final long sessionTargetID = 18726178;
- EasyMock.expect(session.getServerTargetID()).andReturn(sessionTargetID);
-
if (sendBlocking)
{
EasyMock.expect(rc.sendBlocking(targetID, sessionTargetID, new ProducerSendMessage(message))).andReturn(null);
@@ -320,11 +308,12 @@
EasyMock.expect(message.getEncodeSize()).andReturn(messageSize);
}
- EasyMock.replay(session, connection, rc, message);
+ EasyMock.replay(session, connection, rc, message, pd);
ClientProducerInternal producer =
- new ClientProducerImpl(session, targetID, 76767L, prodAddress, limiter, blockOnNonPersistentSend,
- blockOnPersistentSend, windowSize);
+ new ClientProducerImpl(session, targetID, 76767L, prodAddress, limiter,
+ blockOnNonPersistentSend, blockOnPersistentSend, windowSize,
+ rc, pd, sessionTargetID);
if (sendAddress != null)
{
@@ -335,7 +324,7 @@
producer.send(message);
}
- EasyMock.verify(session, connection, rc, message);
+ EasyMock.verify(session, connection, rc, message, pd);
if (sendAddress == null && windowSize != -1)
{
Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientSessionImplTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientSessionImplTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/client/impl/ClientSessionImplTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -22,28 +22,67 @@
package org.jboss.messaging.tests.unit.core.client.impl;
+import static org.jboss.messaging.tests.util.RandomUtil.randomXid;
+
+import java.util.Arrays;
+
+import javax.transaction.xa.XAException;
+import javax.transaction.xa.XAResource;
+import javax.transaction.xa.Xid;
+
import org.easymock.EasyMock;
import org.jboss.messaging.core.client.ClientBrowser;
import org.jboss.messaging.core.client.ClientConnectionFactory;
import org.jboss.messaging.core.client.ClientSession;
import org.jboss.messaging.core.client.Location;
-import org.jboss.messaging.core.client.impl.*;
+import org.jboss.messaging.core.client.impl.ClientConnectionInternal;
+import org.jboss.messaging.core.client.impl.ClientConsumerInternal;
+import org.jboss.messaging.core.client.impl.ClientConsumerPacketHandler;
+import org.jboss.messaging.core.client.impl.ClientProducerInternal;
+import org.jboss.messaging.core.client.impl.ClientProducerPacketHandler;
+import org.jboss.messaging.core.client.impl.ClientSessionImpl;
+import org.jboss.messaging.core.client.impl.ClientSessionInternal;
+import org.jboss.messaging.core.client.impl.LocationImpl;
import org.jboss.messaging.core.exception.MessagingException;
import org.jboss.messaging.core.logging.Logger;
import org.jboss.messaging.core.remoting.Packet;
import org.jboss.messaging.core.remoting.PacketDispatcher;
import org.jboss.messaging.core.remoting.RemotingConnection;
import org.jboss.messaging.core.remoting.TransportType;
-import org.jboss.messaging.core.remoting.impl.wireformat.*;
-import static org.jboss.messaging.tests.util.RandomUtil.randomXid;
+import org.jboss.messaging.core.remoting.impl.wireformat.ConsumerFlowCreditMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.PacketImpl;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionAcknowledgeMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionAddDestinationMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionBindingQueryMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionBindingQueryResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCancelMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCreateBrowserMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCreateBrowserResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCreateConsumerMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCreateConsumerResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCreateProducerMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCreateProducerResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionCreateQueueMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionDeleteQueueMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionQueueQueryMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionQueueQueryResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionRemoveDestinationMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXACommitMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAEndMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAForgetMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAGetInDoubtXidsResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAGetTimeoutResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAJoinMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAPrepareMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAResumeMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXARollbackMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXASetTimeoutMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXASetTimeoutResponseMessage;
+import org.jboss.messaging.core.remoting.impl.wireformat.SessionXAStartMessage;
import org.jboss.messaging.tests.util.UnitTestCase;
import org.jboss.messaging.util.SimpleString;
-import javax.transaction.xa.XAException;
-import javax.transaction.xa.XAResource;
-import javax.transaction.xa.Xid;
-import java.util.Arrays;
-
/**
*
* A ClientSessionImplTest
@@ -66,10 +105,13 @@
public void testConstructorInvalidArgs() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
try
{
- new ClientSessionImpl(conn, 1, false, -2, false, false, false, false);
+ new ClientSessionImpl(conn, 1, false, -2, false, false, false, false, rc, cf, pd);
fail("Should throw exception");
}
catch (IllegalArgumentException e)
@@ -79,7 +121,7 @@
try
{
- new ClientSessionImpl(conn, 1, false, -10, false, false, false, false);
+ new ClientSessionImpl(conn, 1, false, -10, false, false, false, false, rc, cf, pd);
fail("Should throw exception");
}
catch (IllegalArgumentException e)
@@ -89,7 +131,7 @@
try
{
- new ClientSessionImpl(conn, 1, false, 0, false, false, false, false);
+ new ClientSessionImpl(conn, 1, false, 0, false, false, false, false, rc, cf, pd);
fail("Should throw exception");
}
catch (IllegalArgumentException e)
@@ -101,11 +143,10 @@
public void testCreateQueue() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
SessionCreateQueueMessage request = new SessionCreateQueueMessage(new SimpleString("blah"), new SimpleString("hagshg"),
new SimpleString("jhjhs"), false, false);
@@ -113,22 +154,21 @@
EasyMock.expect(rc.sendBlocking(targetID, targetID, request)).andReturn(null);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSession session = new ClientSessionImpl(conn, targetID, false, -1, false, false, false, false);
+ ClientSession session = new ClientSessionImpl(conn, targetID, false, -1, false, false, false, false, rc, cf, pd);
session.createQueue(request.getAddress(), request.getQueueName(), request.getFilterString(), request.isDurable(), request.isTemporary());
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
public void testDeleteQueue() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
SessionDeleteQueueMessage request = new SessionDeleteQueueMessage(new SimpleString("blah"));
@@ -136,22 +176,21 @@
EasyMock.expect(rc.sendBlocking(targetID, targetID, request)).andReturn(null);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSession session = new ClientSessionImpl(conn, targetID, false, -1, false, false, false, false);
+ ClientSession session = new ClientSessionImpl(conn, targetID, false, -1, false, false, false, false, rc, cf, pd);
session.deleteQueue(request.getQueueName());
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
public void testQueueQuery() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
SessionQueueQueryMessage request = new SessionQueueQueryMessage(new SimpleString("blah"));
@@ -161,13 +200,13 @@
EasyMock.expect(rc.sendBlocking(targetID, targetID, request)).andReturn(resp);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSession session = new ClientSessionImpl(conn, targetID, false, -1, false, false, false, false);
+ ClientSession session = new ClientSessionImpl(conn, targetID, false, -1, false, false, false, false, rc, cf, pd);
SessionQueueQueryResponseMessage resp2 = session.queueQuery(request.getQueueName());
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, rc, cf, pd);
assertTrue(resp == resp2);
}
@@ -175,11 +214,10 @@
public void testBindingQuery() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
SessionBindingQueryMessage request = new SessionBindingQueryMessage(new SimpleString("blah"));
SessionBindingQueryResponseMessage resp = new SessionBindingQueryResponseMessage();
@@ -188,13 +226,13 @@
EasyMock.expect(rc.sendBlocking(targetID, targetID, request)).andReturn(resp);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSession session = new ClientSessionImpl(conn, targetID, false, -1, false, false, false, false);
+ ClientSession session = new ClientSessionImpl(conn, targetID, false, -1, false, false, false, false, rc, cf, pd);
SessionBindingQueryResponseMessage resp2 = session.bindingQuery(request.getAddress());
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
assertTrue(resp == resp2);
}
@@ -202,10 +240,9 @@
public void testAddDestination() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
SessionAddDestinationMessage request = new SessionAddDestinationMessage(new SimpleString("blah"), true);
@@ -213,22 +250,21 @@
EasyMock.expect(rc.sendBlocking(targetID, targetID, request)).andReturn(null);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSession session = new ClientSessionImpl(conn, targetID, false, -1, false, false, false, false);
+ ClientSession session = new ClientSessionImpl(conn, targetID, false, -1, false, false, false, false, rc, cf, pd);
session.addDestination(request.getAddress(), request.isTemporary());
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
public void testRemoveDestination() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
SessionRemoveDestinationMessage request = new SessionRemoveDestinationMessage(new SimpleString("blah"), true);
@@ -236,13 +272,13 @@
EasyMock.expect(rc.sendBlocking(targetID, targetID, request)).andReturn(null);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSession session = new ClientSessionImpl(conn, targetID, false, -1, false, false, false, false);
+ ClientSession session = new ClientSessionImpl(conn, targetID, false, -1, false, false, false, false, rc, cf, pd);
session.removeDestination(request.getAddress(), true);
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
public void testCreateConsumer() throws Exception
@@ -374,13 +410,9 @@
public void testProducerCaching() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
final long sessionTargetID = 9121892;
@@ -392,8 +424,6 @@
//In create producer method
{
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
final long clientTargetID = 7676876;
EasyMock.expect(pd.generateID()).andReturn(clientTargetID);
@@ -405,17 +435,11 @@
new SessionCreateProducerResponseMessage(67765765, windowSize, maxRate);
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, request)).andReturn(resp);
-
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
+
pd.register(new ClientProducerPacketHandler(null, clientTargetID));
}
- {
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
+ {
final long clientTargetID = 54654654;
EasyMock.expect(pd.generateID()).andReturn(clientTargetID);
@@ -428,18 +452,14 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, request)).andReturn(resp);
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
pd.register(new ClientProducerPacketHandler(null, clientTargetID));
}
- EasyMock.replay(conn, rc, pd);
+ EasyMock.replay(conn, rc, cf, pd);
//Create three with address1 - only one should be actually created
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, true, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, true, false, false, false, rc, cf, pd);
assertEquals(0, session.getProducerCache().size());
@@ -481,7 +501,7 @@
assertEquals(2, session.getProducerCache().size());
- EasyMock.verify(conn, rc, pd);
+ EasyMock.verify(conn, rc, cf, pd);
assertTrue(producer1 == producer2);
assertTrue(producer2 == producer3);
@@ -493,13 +513,9 @@
public void testProducerNoCaching() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
final long sessionTargetID = 7617622;
final SimpleString address = new SimpleString("gyugg");
@@ -509,14 +525,11 @@
for (int i = 0; i < 3; i++)
{
//In create producer method
-
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
+
final long clientTargetID = i + 65655;
- EasyMock.expect(pd.generateID()).andReturn(clientTargetID);
+ EasyMock.expect(pd.generateID()).andReturn(clientTargetID);
-
SessionCreateProducerMessage request =
new SessionCreateProducerMessage(clientTargetID, address, windowSize, maxRate);
@@ -524,17 +537,13 @@
new SessionCreateProducerResponseMessage(i + 273263, windowSize, maxRate);
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, request)).andReturn(resp);
-
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
+
pd.register(new ClientProducerPacketHandler(null, clientTargetID));
}
- EasyMock.replay(conn, rc, pd);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false, rc, cf, pd);
ClientProducerInternal producer1 = (ClientProducerInternal)session.createProducer(address, windowSize, maxRate,
false, false);
@@ -548,7 +557,7 @@
false, false);
session.removeProducer(producer3);
- EasyMock.verify(conn, rc, pd);
+ EasyMock.verify(conn, rc, cf, pd);
assertFalse(producer1 == producer2);
assertFalse(producer2 == producer3);
@@ -564,8 +573,11 @@
public void testGetXAResource() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
- ClientSession session = new ClientSessionImpl(conn, 5465, false, -1, false, false, false, false);
+ ClientSession session = new ClientSessionImpl(conn, 5465, false, -1, false, false, false, false, rc, cf, pd);
XAResource res = session.getXAResource();
@@ -575,12 +587,9 @@
public void testTransactedSessionAcknowledgeNotBroken() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
final int numMessages = 100;
@@ -606,9 +615,9 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, new PacketImpl(PacketImpl.SESS_ROLLBACK))).andReturn(null);
- EasyMock.replay(conn, rc, pd, cons1, cons2);
+ EasyMock.replay(conn, rc, cf, pd, cons1, cons2);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false, rc, cf, pd);
session.addConsumer(cons1);
session.addConsumer(cons2);
@@ -635,7 +644,7 @@
session.rollback();
- EasyMock.verify(conn, rc, pd, cons1, cons2);
+ EasyMock.verify(conn, rc, cf, pd, cons1, cons2);
}
public void testAutoCommitSessionAcknowledge() throws Exception
@@ -653,12 +662,9 @@
public void testTransactedSessionAcknowledgeNotBrokenExpired() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
final int[] messages = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
@@ -673,12 +679,10 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, new PacketImpl(PacketImpl.SESS_COMMIT))).andReturn(null);
- EasyMock.replay(conn);
- EasyMock.replay(rc);
- EasyMock.replay(pd);
+ EasyMock.replay(conn, rc, cf, pd);
+
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false);
-
//Simulate some messages being delivered in a non broken sequence (i.e. what would happen with a single consumer
//on the session)
@@ -692,20 +696,15 @@
//Then commit
session.commit();
- EasyMock.verify(conn);
- EasyMock.verify(rc);
- EasyMock.verify(pd);
+ EasyMock.verify(conn, rc, cf, pd);
}
public void testTransactedSessionAcknowledgeBrokenExpired() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
final int[] messages = new int[] { 1, 3, 5, 7, 9, 2, 4, 10, 20, 21, 22, 23, 19, 18, 15, 30, 31, 32, 40, 35 };
@@ -720,11 +719,9 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, new PacketImpl(PacketImpl.SESS_COMMIT))).andReturn(null);
- EasyMock.replay(conn);
- EasyMock.replay(rc);
- EasyMock.replay(pd);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false, rc, cf, pd);
//Simulate some messages being delivered in a broken sequence (i.e. what would happen with a single consumer
//on the session)
@@ -739,9 +736,7 @@
//Then commit
session.commit();
- EasyMock.verify(conn);
- EasyMock.verify(rc);
- EasyMock.verify(pd);
+ EasyMock.verify(conn, rc, cf, pd);;
}
public void testClose() throws Exception
@@ -759,21 +754,19 @@
public void testAddRemoveProducer() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
final long sessionTargetID = 9121892;
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false, rc, cf, pd);
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
- EasyMock.reset(conn, rc);
+ EasyMock.reset(conn, rc, cf, pd);
ClientProducerInternal prod1 = EasyMock.createStrictMock(ClientProducerInternal.class);
ClientProducerInternal prod2 = EasyMock.createStrictMock(ClientProducerInternal.class);
@@ -798,21 +791,19 @@
public void testAddRemoveBrowser() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
final long sessionTargetID = 9121892;
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false, rc, cf, pd);
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
- EasyMock.reset(conn, rc);
+ EasyMock.reset(conn, rc, cf, pd);
ClientBrowser browser1 = EasyMock.createStrictMock(ClientBrowser.class);
ClientBrowser browser2 = EasyMock.createStrictMock(ClientBrowser.class);
@@ -861,11 +852,9 @@
public void testGetTransactionTimeout() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
final long sessionTargetID = 9121892;
@@ -877,72 +866,44 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, packet)).andReturn(resp);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false, rc, cf, pd);
int timeout2 = session.getTransactionTimeout();
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
assertEquals(timeout, timeout2);
}
public void testIsSameRM() throws Exception
{
+ ClientConnectionInternal conn1 = EasyMock.createStrictMock(ClientConnectionInternal.class);
+ ClientConnectionInternal conn2 = EasyMock.createStrictMock(ClientConnectionInternal.class);
+ ClientConnectionInternal conn3 = EasyMock.createStrictMock(ClientConnectionInternal.class);
+ RemotingConnection rc1 = EasyMock.createStrictMock(RemotingConnection.class);
+ RemotingConnection rc2 = EasyMock.createStrictMock(RemotingConnection.class);
+ RemotingConnection rc3 = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+
Location location1 = new LocationImpl(TransportType.TCP, "blah1");
+
Location location2 = new LocationImpl(TransportType.TCP, "blah2");
- ClientConnectionInternal conn1 = EasyMock.createStrictMock(ClientConnectionInternal.class);
- RemotingConnection rc1 = EasyMock.createStrictMock(RemotingConnection.class);
- EasyMock.expect(conn1.getRemotingConnection()).andReturn(rc1);
+ EasyMock.expect(rc1.getLocation()).andStubReturn(location1);
+ EasyMock.expect(rc2.getLocation()).andStubReturn(location1);
+ EasyMock.expect(rc3.getLocation()).andStubReturn(location2);
+
+ EasyMock.replay(conn1, conn2, conn3, rc1, rc2, rc3, cf, pd);
- ClientConnectionInternal conn2 = EasyMock.createStrictMock(ClientConnectionInternal.class);
- RemotingConnection rc2 = EasyMock.createStrictMock(RemotingConnection.class);
- EasyMock.expect(conn2.getRemotingConnection()).andReturn(rc2);
+ ClientSessionInternal session1 = new ClientSessionImpl(conn1, 4343, true, -1, false, false, false, false, rc1, cf, pd);
- ClientConnectionInternal conn3 = EasyMock.createStrictMock(ClientConnectionInternal.class);
- RemotingConnection rc3 = EasyMock.createStrictMock(RemotingConnection.class);
- EasyMock.expect(conn3.getRemotingConnection()).andReturn(rc3);
-
- EasyMock.expect(conn1.getRemotingConnection()).andReturn(rc1);
- EasyMock.expect(rc1.getLocation()).andReturn(location1);
- EasyMock.expect(conn2.getRemotingConnection()).andReturn(rc2);
- EasyMock.expect(rc2.getLocation()).andReturn(location1);
+ ClientSessionInternal session2 = new ClientSessionImpl(conn2, 4343, true, -1, false, false, false, false, rc2, cf, pd);
- EasyMock.expect(conn2.getRemotingConnection()).andReturn(rc2);
- EasyMock.expect(rc2.getLocation()).andReturn(location1);
- EasyMock.expect(conn1.getRemotingConnection()).andReturn(rc1);
- EasyMock.expect(rc1.getLocation()).andReturn(location1);
-
- EasyMock.expect(conn1.getRemotingConnection()).andReturn(rc1);
- EasyMock.expect(rc1.getLocation()).andReturn(location1);
- EasyMock.expect(conn3.getRemotingConnection()).andReturn(rc3);
- EasyMock.expect(rc3.getLocation()).andReturn(location2);
+ ClientSessionInternal session3 = new ClientSessionImpl(conn3, 4343, true, -1, false, false, false, false, rc3, cf, pd);
- EasyMock.expect(conn3.getRemotingConnection()).andReturn(rc3);
- EasyMock.expect(rc3.getLocation()).andReturn(location2);
- EasyMock.expect(conn1.getRemotingConnection()).andReturn(rc1);
- EasyMock.expect(rc1.getLocation()).andReturn(location1);
-
- EasyMock.expect(conn2.getRemotingConnection()).andReturn(rc2);
- EasyMock.expect(rc2.getLocation()).andReturn(location1);
- EasyMock.expect(conn3.getRemotingConnection()).andReturn(rc3);
- EasyMock.expect(rc3.getLocation()).andReturn(location2);
-
- EasyMock.expect(conn3.getRemotingConnection()).andReturn(rc3);
- EasyMock.expect(rc3.getLocation()).andReturn(location2);
- EasyMock.expect(conn2.getRemotingConnection()).andReturn(rc2);
- EasyMock.expect(rc2.getLocation()).andReturn(location1);
-
- EasyMock.replay(conn1, conn2, conn3, rc1, rc2, rc3);
-
- ClientSessionInternal session1 = new ClientSessionImpl(conn1, 4343, true, -1, false, false, false, false);
-
- ClientSessionInternal session2 = new ClientSessionImpl(conn2, 4343, true, -1, false, false, false, false);
-
- ClientSessionInternal session3 = new ClientSessionImpl(conn3, 4343, true, -1, false, false, false, false);
-
assertTrue(session1.isSameRM(session2));
assertTrue(session2.isSameRM(session1));
@@ -996,11 +957,10 @@
public void testCleanUp() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
SessionCreateQueueMessage request = new SessionCreateQueueMessage(new SimpleString("blah"), new SimpleString("hagshg"),
new SimpleString("jhjhs"), false, false);
@@ -1008,39 +968,37 @@
EasyMock.expect(rc.sendBlocking(targetID, targetID, request)).andReturn(null);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, targetID, false, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, targetID, false, -1, false, false, false, false, rc, cf, pd);
session.createQueue(request.getAddress(), request.getQueueName(), request.getFilterString(), request.isDurable(), request.isTemporary());
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
- EasyMock.reset(conn, rc);
+ EasyMock.reset(conn, rc, cf, pd);
conn.removeSession(session);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
session.cleanUp();
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
public void notXA() throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
final long sessionTargetID = 9121892;
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false, rc, cf, pd);
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
- EasyMock.reset(conn, rc);
+ EasyMock.reset(conn, rc, cf, pd);
try
{
session.commit(randomXid(), false);
@@ -1147,21 +1105,19 @@
private void testClose(boolean delivered) throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
final long sessionTargetID = 9121892;
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false, rc, cf, pd);
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
- EasyMock.reset(conn, rc);
+ EasyMock.reset(conn, rc, cf, pd);
ClientProducerInternal prod1 = EasyMock.createStrictMock(ClientProducerInternal.class);
ClientProducerInternal prod2 = EasyMock.createStrictMock(ClientProducerInternal.class);
@@ -1192,7 +1148,7 @@
conn.removeSession(session);
- EasyMock.replay(conn, rc, prod1, prod2, cons1, cons2, browser1, browser2);
+ EasyMock.replay(conn, rc, cf, pd, prod1, prod2, cons1, cons2, browser1, browser2);
session.addProducer(prod1);
session.addProducer(prod2);
@@ -1217,19 +1173,19 @@
session.close();
- EasyMock.verify(conn, rc, prod1, prod2, cons1, cons2, browser1, browser2);
+ EasyMock.verify(conn, rc, cf, pd, prod1, prod2, cons1, cons2, browser1, browser2);
assertTrue(session.isClosed());
- EasyMock.reset(conn, rc, prod1, prod2, cons1, cons2, browser1, browser2);
+ EasyMock.reset(conn, rc, cf, pd, prod1, prod2, cons1, cons2, browser1, browser2);
- EasyMock.replay(conn, rc, prod1, prod2, cons1, cons2, browser1, browser2);
+ EasyMock.replay(conn, rc, cf, pd, prod1, prod2, cons1, cons2, browser1, browser2);
//Close again should do nothing
session.close();
- EasyMock.verify(conn, rc, prod1, prod2, cons1, cons2, browser1, browser2);
+ EasyMock.verify(conn, rc, cf, pd, prod1, prod2, cons1, cons2, browser1, browser2);
try
{
@@ -1416,11 +1372,9 @@
private void testXAStart(int flags, boolean error) throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
final long sessionTargetID = 9121892;
@@ -1453,9 +1407,9 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, packet)).andReturn(resp);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false, rc, cf, pd);
//Simulate some unflushed messages
@@ -1482,17 +1436,15 @@
session.start(xid, flags);
}
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
private void testXASetTransactionTimeout(boolean error) throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
final long sessionTargetID = 9121892;
@@ -1504,26 +1456,24 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, packet)).andReturn(resp);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false, rc, cf, pd);
boolean ok = session.setTransactionTimeout(timeout);
assertTrue(ok == !error);
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
private void testXARollback(boolean error) throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+
final long sessionTargetID = 9121892;
Xid xid = randomXid();
@@ -1534,9 +1484,9 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, packet)).andReturn(resp);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false, rc, cf, pd);
if (error)
{
@@ -1555,18 +1505,16 @@
session.rollback(xid);
}
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
private void testXARecover(final int flags) throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
final long sessionTargetID = 9121892;
final Xid[] xids = new Xid[] { randomXid(), randomXid(), randomXid() } ;
@@ -1580,9 +1528,9 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, packet)).andReturn(resp);
}
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false, rc, cf, pd);
Xid[] xids2 = session.recover(flags);
@@ -1600,17 +1548,15 @@
assertTrue(xids2.length == 0);
}
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
private void testXAPrepare(boolean error, boolean readOnly) throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
final long sessionTargetID = 9121892;
@@ -1622,9 +1568,9 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, packet)).andReturn(resp);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false, rc, cf, pd);
if (error)
{
@@ -1652,17 +1598,15 @@
}
}
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
private void testXAForget(final boolean error) throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
final long sessionTargetID = 9121892;
@@ -1680,9 +1624,9 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, packet)).andReturn(resp);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false, rc, cf, pd);
//Simulate some unflushed messages
@@ -1709,17 +1653,15 @@
session.forget(xid);
}
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
private void testXAEnd(int flags, boolean error) throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
final long sessionTargetID = 9121892;
@@ -1749,9 +1691,9 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, packet)).andReturn(resp);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false, rc, cf, pd);
//Simulate some unflushed messages
@@ -1778,17 +1720,15 @@
session.end(xid, flags);
}
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
private void testXACommit(boolean onePhase, boolean error) throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
final long sessionTargetID = 9121892;
@@ -1800,9 +1740,9 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, packet)).andReturn(resp);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, true, -1, false, false, false, false, rc, cf, pd);
if (error)
{
@@ -1821,27 +1761,25 @@
session.commit(xid, onePhase);
}
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
private void testAddRemoveConsumer(boolean delivered) throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
final long sessionTargetID = 9121892;
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false, rc, cf, pd);
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
- EasyMock.reset(conn, rc);
+ EasyMock.reset(conn, rc, cf, pd);
final int numDeliveries = 10;
@@ -1856,7 +1794,7 @@
rc.sendOneWay(sessionTargetID, sessionTargetID, new SessionCancelMessage(-1, false));
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
ClientConsumerInternal cons1 = EasyMock.createStrictMock(ClientConsumerInternal.class);
ClientConsumerInternal cons2 = EasyMock.createStrictMock(ClientConsumerInternal.class);
@@ -1886,18 +1824,15 @@
session.removeConsumer(cons2);
assertEquals(0, session.getConsumers().size());
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
private void testAutoCommitSessionAcknowledge(boolean blockOnAcknowledge) throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
final int numMessages = 100;
@@ -1943,9 +1878,10 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, new PacketImpl(PacketImpl.SESS_ROLLBACK))).andReturn(null);
- EasyMock.replay(conn, rc, pd, cons1, cons2);
+ EasyMock.replay(conn, rc, cf, pd, cons1, cons2);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, batchSize, false, false, true, blockOnAcknowledge);
+ ClientSessionInternal session =
+ new ClientSessionImpl(conn, sessionTargetID, false, batchSize, false, false, true, blockOnAcknowledge, rc, cf, pd);
session.addConsumer(cons1);
@@ -1973,18 +1909,15 @@
session.rollback();
- EasyMock.verify(conn, rc, pd, cons1, cons2);
+ EasyMock.verify(conn, rc, cf, pd, cons1, cons2);
}
private void testTransactedSessionAcknowledgeBroken(boolean blockOnAcknowledge) throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
final int[] messages = new int[] { 1, 3, 5, 7, 9, 2, 4, 10, 20, 21, 22, 23, 19, 18, 15, 30, 31, 32, 40, 35 };
@@ -2031,9 +1964,10 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, new PacketImpl(PacketImpl.SESS_ROLLBACK))).andReturn(null);
- EasyMock.replay(conn, rc, pd, cons1, cons2);
+ EasyMock.replay(conn, rc, cf, pd, cons1, cons2);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, blockOnAcknowledge);
+ ClientSessionInternal session =
+ new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, blockOnAcknowledge, rc, cf, pd);
session.addConsumer(cons1);
session.addConsumer(cons2);
@@ -2060,17 +1994,15 @@
session.rollback();
- EasyMock.verify(conn, rc, pd, cons1, cons2);
+ EasyMock.verify(conn, rc, cf, pd, cons1, cons2);
}
private void testCreateBrowser(boolean filter) throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andStubReturn(rc);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
final long sessionTargetID = 7617622;
final SimpleString queueName = new SimpleString("gyugg");
@@ -2084,9 +2016,9 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, request)).andReturn(resp);
- EasyMock.replay(conn, rc);
+ EasyMock.replay(conn, rc, cf, pd);
- ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false);
+ ClientSessionInternal session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false, rc, cf, pd);
if (filter)
{
@@ -2097,7 +2029,7 @@
ClientBrowser browser = session.createBrowser(queueName);
}
- EasyMock.verify(conn, rc);
+ EasyMock.verify(conn, rc, cf, pd);
}
private void testCreateProducerWithWindowSizeMethod(final SimpleString address,
@@ -2107,27 +2039,15 @@
final boolean blockOnPSend,
final boolean autoCommitSends) throws Exception
{
- ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
-
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
- // In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
// Defaults from cf
- EasyMock.expect(conn.getConnectionFactory()).andReturn(cf);
-
EasyMock.expect(cf.isDefaultBlockOnNonPersistentSend()).andReturn(blockOnNPSend);
- EasyMock.expect(conn.getConnectionFactory()).andReturn(cf);
-
EasyMock.expect(cf.isDefaultBlockOnPersistentSend()).andReturn(blockOnPSend);
final long clientTargetID = 7676876;
@@ -2144,25 +2064,16 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, request)).andReturn(resp);
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
pd.register(new ClientProducerPacketHandler(null, clientTargetID));
- EasyMock.replay(cf);
- EasyMock.replay(conn);
- EasyMock.replay(rc);
- EasyMock.replay(pd);
+ EasyMock.replay(cf, conn, rc, pd);
- ClientSession session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, autoCommitSends, false, false);
+ ClientSession session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, autoCommitSends, false, false, rc, cf, pd);
ClientProducerInternal producer = (ClientProducerInternal)session.createProducerWithWindowSize(address, windowSize);
- EasyMock.verify(cf);
- EasyMock.verify(conn);
- EasyMock.verify(rc);
- EasyMock.verify(pd);
+ EasyMock.verify(cf, conn, rc, pd);
assertEquals(address, producer.getAddress());
assertEquals(autoCommitSends && blockOnNPSend, producer.isBlockOnNonPersistentSend());
@@ -2178,27 +2089,15 @@
final boolean blockOnPSend,
final boolean autoCommitSends) throws Exception
{
- ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
-
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
-
- // In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
// Defaults from cf
- EasyMock.expect(conn.getConnectionFactory()).andReturn(cf);
-
EasyMock.expect(cf.isDefaultBlockOnNonPersistentSend()).andReturn(blockOnNPSend);
- EasyMock.expect(conn.getConnectionFactory()).andReturn(cf);
-
EasyMock.expect(cf.isDefaultBlockOnPersistentSend()).andReturn(blockOnPSend);
final long clientTargetID = 7676876;
@@ -2214,26 +2113,16 @@
new SessionCreateProducerResponseMessage(67765765, initialCredits, serverMaxRate);
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, request)).andReturn(resp);
-
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
+
pd.register(new ClientProducerPacketHandler(null, clientTargetID));
- EasyMock.replay(cf);
- EasyMock.replay(conn);
- EasyMock.replay(rc);
- EasyMock.replay(pd);
+ EasyMock.replay(cf, conn, rc, pd);
- ClientSession session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, autoCommitSends, false, false);
+ ClientSession session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, autoCommitSends, false, false, rc, cf, pd);
ClientProducerInternal producer = (ClientProducerInternal)session.createRateLimitedProducer(address, maxRate);
- EasyMock.verify(cf);
- EasyMock.verify(conn);
- EasyMock.verify(rc);
- EasyMock.verify(pd);
+ EasyMock.verify(cf, conn, rc, pd);
assertEquals(address, producer.getAddress());
assertEquals(autoCommitSends && blockOnNPSend, producer.isBlockOnNonPersistentSend());
@@ -2249,35 +2138,19 @@
final boolean blockOnPSend,
final boolean autoCommitSends) throws Exception
{
- ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
-
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
- PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
-
- // In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);;
// Defaults from cf
- EasyMock.expect(conn.getConnectionFactory()).andReturn(cf);
-
EasyMock.expect(cf.getDefaultProducerWindowSize()).andReturn(windowSize);
- EasyMock.expect(conn.getConnectionFactory()).andReturn(cf);
-
EasyMock.expect(cf.getDefaultProducerMaxRate()).andReturn(maxRate);
- EasyMock.expect(conn.getConnectionFactory()).andReturn(cf);
-
EasyMock.expect(cf.isDefaultBlockOnNonPersistentSend()).andReturn(blockOnNPSend);
-
- EasyMock.expect(conn.getConnectionFactory()).andReturn(cf);
-
+
EasyMock.expect(cf.isDefaultBlockOnPersistentSend()).andReturn(blockOnPSend);
final long clientTargetID = 7676876;
@@ -2293,26 +2166,16 @@
new SessionCreateProducerResponseMessage(67765765, initialCredits, serverMaxRate);
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, request)).andReturn(resp);
-
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
+
pd.register(new ClientProducerPacketHandler(null, clientTargetID));
- EasyMock.replay(cf);
- EasyMock.replay(conn);
- EasyMock.replay(rc);
- EasyMock.replay(pd);
+ EasyMock.replay(cf, conn, rc, pd);
- ClientSession session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, autoCommitSends, false, false);
+ ClientSession session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, autoCommitSends, false, false, rc, cf, pd);
ClientProducerInternal producer = (ClientProducerInternal)session.createProducer(address);
- EasyMock.verify(cf);
- EasyMock.verify(conn);
- EasyMock.verify(rc);
- EasyMock.verify(pd);
+ EasyMock.verify(cf, conn, rc, pd);
assertEquals(address, producer.getAddress());
assertEquals(autoCommitSends && blockOnNPSend, producer.isBlockOnNonPersistentSend());
@@ -2328,19 +2191,11 @@
final boolean blockOnPSend,
final boolean autoCommitSends) throws Exception
{
- ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
-
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
-
- //In ClientSessionImpl constructor
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
final long clientTargetID = 7676876;
EasyMock.expect(pd.generateID()).andReturn(clientTargetID);
@@ -2355,25 +2210,15 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, request)).andReturn(resp);
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
pd.register(new ClientProducerPacketHandler(null, clientTargetID));
- EasyMock.replay(cf);
- EasyMock.replay(conn);
- EasyMock.replay(rc);
- EasyMock.replay(pd);
+ EasyMock.replay(cf, conn, rc, pd);
- ClientSession session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, autoCommitSends, false, false);
+ ClientSession session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, autoCommitSends, false, false, rc, cf, pd);
ClientProducerInternal producer = (ClientProducerInternal)session.createProducer(address, windowSize, maxRate, blockOnNPSend, blockOnPSend);
- EasyMock.verify(cf);
- EasyMock.verify(conn);
- EasyMock.verify(rc);
- EasyMock.verify(pd);
+ EasyMock.verify(cf, conn, rc, pd);
assertEquals(address, producer.getAddress());
assertEquals(autoCommitSends && blockOnNPSend, producer.isBlockOnNonPersistentSend());
@@ -2386,26 +2231,15 @@
final boolean autoDeleteQueue, final boolean direct,
final int windowSize, final int maxRate, final int serverWindowSize) throws Exception
{
- ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
-
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andStubReturn(rc);
-
- EasyMock.expect(conn.getConnectionFactory()).andReturn(cf);
EasyMock.expect(cf.getDefaultConsumerWindowSize()).andReturn(windowSize);
- EasyMock.expect(conn.getConnectionFactory()).andReturn(cf);
-
EasyMock.expect(cf.getDefaultConsumerMaxRate()).andReturn(maxRate);
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
final long clientTargetID = 87126716;
EasyMock.expect(pd.generateID()).andReturn(clientTargetID);
@@ -2421,26 +2255,17 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, request)).andReturn(resp);
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
pd.register(new ClientConsumerPacketHandler(null, clientTargetID));
rc.sendOneWay(resp.getConsumerTargetID(), sessionTargetID,
new ConsumerFlowCreditMessage(resp.getWindowSize()));
- EasyMock.replay(cf);
- EasyMock.replay(conn);
- EasyMock.replay(rc);
- EasyMock.replay(pd);
+ EasyMock.replay(cf, conn, rc, pd);
+ ClientSession session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false, rc, cf, pd);
- ClientSession session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false);
-
ClientConsumerInternal consumer = (ClientConsumerInternal)session.createConsumer(queueName, filterString, noLocal, autoDeleteQueue,
direct);
- EasyMock.verify(cf);
- EasyMock.verify(conn);
- EasyMock.verify(rc);
- EasyMock.verify(pd);
+ EasyMock.verify(cf, conn, rc, pd);
assertEquals(clientTargetID, consumer.getClientTargetID());
@@ -2462,17 +2287,10 @@
final boolean autoDeleteQueue, final boolean direct,
final int windowSize, final int maxRate, final int serverWindowSize) throws Exception
{
- ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
-
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andStubReturn(rc);
-
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
final long clientTargetID = 87126716;
@@ -2489,26 +2307,18 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, request)).andReturn(resp);
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
pd.register(new ClientConsumerPacketHandler(null, clientTargetID));
rc.sendOneWay(resp.getConsumerTargetID(), sessionTargetID,
new ConsumerFlowCreditMessage(resp.getWindowSize()));
- EasyMock.replay(cf);
- EasyMock.replay(conn);
- EasyMock.replay(rc);
- EasyMock.replay(pd);
+ EasyMock.replay(cf, conn, rc, pd);
- ClientSession session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false);
+ ClientSession session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false, rc, cf, pd);
ClientConsumerInternal consumer = (ClientConsumerInternal)session.createConsumer(queueName, filterString, noLocal, autoDeleteQueue,
direct, windowSize, maxRate);
- EasyMock.verify(cf);
- EasyMock.verify(conn);
- EasyMock.verify(rc);
- EasyMock.verify(pd);
+ EasyMock.verify(cf, conn, rc, pd);
assertEquals(clientTargetID, consumer.getClientTargetID());
@@ -2529,26 +2339,15 @@
private void testCreateConsumerBasicMethod(final SimpleString queueName, final int windowSize,
final int maxRate, final int serverWindowSize) throws Exception
{
- ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
-
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
-
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
-
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
-
- EasyMock.expect(conn.getRemotingConnection()).andStubReturn(rc);
- EasyMock.expect(conn.getConnectionFactory()).andReturn(cf);
-
EasyMock.expect(cf.getDefaultConsumerWindowSize()).andReturn(windowSize);
- EasyMock.expect(conn.getConnectionFactory()).andReturn(cf);
-
EasyMock.expect(cf.getDefaultConsumerMaxRate()).andReturn(maxRate);
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
final long clientTargetID = 87126716;
EasyMock.expect(pd.generateID()).andReturn(clientTargetID);
@@ -2564,25 +2363,17 @@
EasyMock.expect(rc.sendBlocking(sessionTargetID, sessionTargetID, request)).andReturn(resp);
- EasyMock.expect(rc.getPacketDispatcher()).andReturn(pd);
-
pd.register(new ClientConsumerPacketHandler(null, clientTargetID));
rc.sendOneWay(resp.getConsumerTargetID(), sessionTargetID,
new ConsumerFlowCreditMessage(resp.getWindowSize()));
- EasyMock.replay(cf);
- EasyMock.replay(conn);
- EasyMock.replay(rc);
- EasyMock.replay(pd);
+ EasyMock.replay(cf, conn, rc, pd);
- ClientSession session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false);
+ ClientSession session = new ClientSessionImpl(conn, sessionTargetID, false, -1, false, false, false, false, rc, cf, pd);
ClientConsumerInternal consumer = (ClientConsumerInternal)session.createConsumer(queueName);
- EasyMock.verify(cf);
- EasyMock.verify(conn);
- EasyMock.verify(rc);
- EasyMock.verify(pd);
+ EasyMock.verify(cf, conn, rc, pd);
assertEquals(clientTargetID, consumer.getClientTargetID());
@@ -2607,19 +2398,17 @@
final boolean blockOnAcknowledge) throws Exception
{
ClientConnectionInternal conn = EasyMock.createStrictMock(ClientConnectionInternal.class);
+ RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ ClientConnectionFactory cf = EasyMock.createStrictMock(ClientConnectionFactory.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
- RemotingConnection rc = EasyMock.createStrictMock(RemotingConnection.class);
+ EasyMock.replay(conn, rc, cf, pd);
- EasyMock.expect(conn.getRemotingConnection()).andReturn(rc);
-
- EasyMock.replay(conn);
- EasyMock.replay(rc);
-
ClientSessionInternal session = new ClientSessionImpl(conn, serverTargetID, xa,
- lazyAckBatchSize, cacheProducers, autoCommitSends, autoCommitAcks, blockOnAcknowledge);
+ lazyAckBatchSize, cacheProducers, autoCommitSends, autoCommitAcks, blockOnAcknowledge,
+ rc, cf, pd);
- EasyMock.verify(conn);
- EasyMock.verify(rc);
+ EasyMock.verify(conn, rc, cf, pd);
assertTrue(conn == session.getConnection());
assertEquals(xa, session.isXA());
Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/impl/ConnectionManagerTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/impl/ConnectionManagerTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/impl/ConnectionManagerTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -74,8 +74,6 @@
}
}
-
-
// TestCase overrides -------------------------------------------
// Public --------------------------------------------------------
@@ -105,11 +103,9 @@
assertActiveConnectionsOnTheServer(0);
}
- private void assertActiveConnectionsOnTheServer(int expectedSize)
- throws Exception
- {
- ConnectionManager cm = messagingService.getServer().getConnectionManager();
- assertEquals(expectedSize, cm.getActiveConnections().size());
+ private void assertActiveConnectionsOnTheServer(int expectedSize) throws Exception
+ {
+ assertEquals(expectedSize, messagingService.getServer().getServerManagement().getConnectionCount());
}
}
Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/impl/INVMServerTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/impl/INVMServerTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/impl/INVMServerTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -55,12 +55,10 @@
public void testConnectionsToTwoINVMServers() throws Exception
{
- ClientConnectionFactory cf_1 = new ClientConnectionFactoryImpl(
- new LocationImpl(0));
+ ClientConnectionFactory cf_1 = new ClientConnectionFactoryImpl(new LocationImpl(0));
ClientConnectionInternal conn_1 = (ClientConnectionInternal) cf_1.createConnection();
- ClientConnectionFactory cf_2 = new ClientConnectionFactoryImpl(
- new LocationImpl(1));
+ ClientConnectionFactory cf_2 = new ClientConnectionFactoryImpl(new LocationImpl(1));
ClientConnectionInternal conn_2 = (ClientConnectionInternal) cf_2.createConnection();
assertNotSame(conn_1.getRemotingConnection().getSessionID(), conn_2.getRemotingConnection().getSessionID());
Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/impl/mina/MinaAcceptorTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/impl/mina/MinaAcceptorTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/impl/mina/MinaAcceptorTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -105,8 +105,8 @@
connectionParams.setTrustStorePassword("secureexample");
MinaConnector minaConnector = new MinaConnector(conf.getLocation(), connectionParams, new PacketDispatcherImpl(null));
minaConnector.connect();
- // TODO investigate why we need to wait a little bit before disconnecting to avoid a SSL exception
- Thread.sleep(1000);
+ //Please don't add Thread.sleeps to fudge the problem so the test passes!
+ //Instead - fix the underlying issue
minaConnector.disconnect();
EasyMock.verify(remotingService, cleanUpNotifier);
}
Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/network/ClientNetworkFailureTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/network/ClientNetworkFailureTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/remoting/network/ClientNetworkFailureTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -209,7 +209,6 @@
private void assertActiveConnectionsOnTheServer(int expectedSize)
throws Exception
{
- ConnectionManager cm = messagingService.getServer().getConnectionManager();
- assertEquals(expectedSize, cm.getActiveConnections().size());
+ assertEquals(expectedSize, messagingService.getServer().getServerManagement().getConnectionCount());
}
}
Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/server/impl/MessagingServerImplTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/server/impl/MessagingServerImplTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/server/impl/MessagingServerImplTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -1,6 +1,6 @@
/*
* JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * 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.
*
@@ -18,11 +18,10 @@
* 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.unit.core.server.impl;
import java.util.ArrayList;
-import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -40,9 +39,7 @@
import org.jboss.messaging.core.security.CheckType;
import org.jboss.messaging.core.security.JBMSecurityManager;
import org.jboss.messaging.core.security.Role;
-import org.jboss.messaging.core.server.ConnectionManager;
import org.jboss.messaging.core.server.MessagingServer;
-import org.jboss.messaging.core.server.ServerConnection;
import org.jboss.messaging.core.server.impl.ConnectionManagerImpl;
import org.jboss.messaging.core.server.impl.MessagingServerImpl;
import org.jboss.messaging.core.server.impl.MessagingServerPacketHandler;
@@ -62,7 +59,6 @@
public class MessagingServerImplTest extends UnitTestCase
{
private static final Logger log = Logger.getLogger(MessagingServerImplTest.class);
-
// Private -----------------------------------------------------------------------------------------------------------
@@ -70,20 +66,11 @@
{
MessagingServer server = new MessagingServerImpl();
- Version version = VersionLoader.load();
-
- assertEquals(version, server.getVersion());
-
- assertNull(server.getConfiguration());
- assertNull(server.getConnectionManager());
- assertNull(server.getExecutorFactory());
- assertNull(server.getPostOffice());
- assertNull(server.getQueueSettingsRepository());
- assertNull(server.getRemotingService());
- assertNull(server.getResourceManager());
- assertNull(server.getSecurityManager());
- assertNull(server.getSecurityRepository());
- assertNull(server.getSecurityStore());
+ Version version = VersionLoader.load();
+ assertEquals(version, server.getVersion());
+ assertNull(server.getConfiguration());
+ assertNull(server.getRemotingService());
+ assertNull(server.getSecurityManager());
assertNull(server.getStorageManager());
}
@@ -195,13 +182,14 @@
EasyMock.reset(sm, rs);
+ PacketDispatcher pd = EasyMock.createMock(PacketDispatcher.class);
+ EasyMock.expect(rs.getDispatcher()).andReturn(pd);
EasyMock.expect(sm.isStarted()).andStubReturn(true);
EasyMock.expect(rs.isStarted()).andStubReturn(true);
rs.addRemotingSessionListener(EasyMock.isA(ConnectionManagerImpl.class));
sm.loadBindings(EasyMock.isA(QueueFactoryImpl.class), EasyMock.isA(ArrayList.class), EasyMock.isA(ArrayList.class));
sm.loadMessages(EasyMock.isA(PostOfficeImpl.class), EasyMock.isA(Map.class));
- PacketDispatcher pd = EasyMock.createMock(PacketDispatcher.class);
- EasyMock.expect(rs.getDispatcher()).andReturn(pd);
+
pd.register(EasyMock.isA(MessagingServerPacketHandler.class));
EasyMock.replay(sm, rs, pd);
@@ -270,7 +258,6 @@
//Ok
}
- EasyMock.expect(rs.getDispatcher()).andReturn(pd);
pd.unregister(0);
rs.removeRemotingSessionListener(EasyMock.isA(ConnectionManagerImpl.class));
@@ -370,16 +357,11 @@
public void testCreateConnectionOK() throws Exception
{
- MessagingServer server = new MessagingServerImpl();
-
- server.setConfiguration(new ConfigurationImpl());
-
- StorageManager sm = EasyMock.createMock(StorageManager.class);
-
- server.setStorageManager(sm);
-
- RemotingService rs = EasyMock.createMock(RemotingService.class);
-
+ MessagingServer server = new MessagingServerImpl();
+ server.setConfiguration(new ConfigurationImpl());
+ StorageManager sm = EasyMock.createMock(StorageManager.class);
+ server.setStorageManager(sm);
+ RemotingService rs = EasyMock.createMock(RemotingService.class);
server.setRemotingService(rs);
JBMSecurityManager sem = new JBMSecurityManager()
@@ -397,20 +379,21 @@
server.setSecurityManager(sem);
+ PacketDispatcher pd = EasyMock.createMock(PacketDispatcher.class);
+ EasyMock.expect(rs.getDispatcher()).andReturn(pd);
+
rs.addRemotingSessionListener(EasyMock.isA(ConnectionManagerImpl.class));
sm.loadBindings(EasyMock.isA(QueueFactoryImpl.class), EasyMock.isA(ArrayList.class), EasyMock.isA(ArrayList.class));
sm.loadMessages(EasyMock.isA(PostOfficeImpl.class), EasyMock.isA(Map.class));
- PacketDispatcher pd = EasyMock.createMock(PacketDispatcher.class);
- EasyMock.expect(rs.getDispatcher()).andReturn(pd);
+
pd.register(EasyMock.isA(MessagingServerPacketHandler.class));
EasyMock.expect(sm.isStarted()).andStubReturn(true);
EasyMock.expect(rs.isStarted()).andStubReturn(true);
- EasyMock.expect(rs.getDispatcher()).andReturn(pd);
final long id = 129812;
EasyMock.expect(pd.generateID()).andReturn(id);
- EasyMock.expect(rs.getDispatcher()).andReturn(pd);
+
pd.register(EasyMock.isA(ServerConnectionPacketHandler.class));
PacketReturner returner = EasyMock.createStrictMock(PacketReturner.class);
@@ -430,16 +413,7 @@
assertEquals(VersionLoader.load(), resp.getServerVersion());
assertEquals(id, resp.getConnectionTargetID());
- ConnectionManager cm = server.getConnectionManager();
-
- List<ServerConnection> conns = cm.getActiveConnections();
- assertEquals(1, conns.size());
- ServerConnection conn = conns.get(0);
- assertEquals(id, conn.getID());
- assertTrue(server == conn.getServer());
- assertEquals(username, conn.getUsername());
- assertEquals(password, conn.getPassword());
- assertEquals(sessionID, conn.getClientSessionID());
+ assertEquals(1, server.getServerManagement().getConnectionCount());
}
Modified: trunk/tests/src/org/jboss/messaging/tests/unit/core/server/impl/ServerConnectionImplTest.java
===================================================================
--- trunk/tests/src/org/jboss/messaging/tests/unit/core/server/impl/ServerConnectionImplTest.java 2008-06-18 18:43:49 UTC (rev 4519)
+++ trunk/tests/src/org/jboss/messaging/tests/unit/core/server/impl/ServerConnectionImplTest.java 2008-06-19 13:27:17 UTC (rev 4520)
@@ -1,6 +1,6 @@
/*
* JBoss, Home of Professional Open Source
- * Copyright 2005, JBoss Inc., and individual contributors as indicated
+ * 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.
*
@@ -18,24 +18,30 @@
* 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.unit.core.server.impl;
+import java.util.concurrent.Executor;
+
import org.easymock.EasyMock;
import org.jboss.messaging.core.logging.Logger;
+import org.jboss.messaging.core.persistence.StorageManager;
import org.jboss.messaging.core.postoffice.Binding;
import org.jboss.messaging.core.postoffice.PostOffice;
import org.jboss.messaging.core.remoting.PacketDispatcher;
import org.jboss.messaging.core.remoting.PacketReturner;
-import org.jboss.messaging.core.remoting.RemotingService;
import org.jboss.messaging.core.remoting.impl.wireformat.ConnectionCreateSessionResponseMessage;
+import org.jboss.messaging.core.security.SecurityStore;
import org.jboss.messaging.core.server.ConnectionManager;
-import org.jboss.messaging.core.server.MessagingServer;
import org.jboss.messaging.core.server.Queue;
import org.jboss.messaging.core.server.ServerSession;
import org.jboss.messaging.core.server.impl.ServerConnectionImpl;
import org.jboss.messaging.core.server.impl.ServerSessionPacketHandler;
+import org.jboss.messaging.core.settings.HierarchicalRepository;
+import org.jboss.messaging.core.settings.impl.QueueSettings;
+import org.jboss.messaging.core.transaction.ResourceManager;
import org.jboss.messaging.tests.util.UnitTestCase;
+import org.jboss.messaging.util.ExecutorFactory;
import org.jboss.messaging.util.SimpleString;
/**
@@ -188,30 +194,30 @@
}
public void testStartStop() throws Exception
- {
- MessagingServer server = EasyMock.createStrictMock(MessagingServer.class);
-
- ServerSession session1 = EasyMock.createStrictMock(ServerSession.class);
- ServerSession session2 = EasyMock.createStrictMock(ServerSession.class);
- ServerSession session3 = EasyMock.createStrictMock(ServerSession.class);
-
- RemotingService remoting = EasyMock.createStrictMock(RemotingService.class);
- PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+ {
PostOffice po = EasyMock.createStrictMock(PostOffice.class);
ConnectionManager cm = EasyMock.createStrictMock(ConnectionManager.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+ StorageManager sm = EasyMock.createStrictMock(StorageManager.class);
+ HierarchicalRepository<QueueSettings> qs = EasyMock.createStrictMock(HierarchicalRepository.class);
+ ResourceManager rm = EasyMock.createStrictMock(ResourceManager.class);
+ SecurityStore ss = EasyMock.createStrictMock(SecurityStore.class);
+ ExecutorFactory ef = EasyMock.createStrictMock(ExecutorFactory.class);
- EasyMock.expect(server.getRemotingService()).andReturn(remoting);
- EasyMock.expect(remoting.getDispatcher()).andReturn(pd);
- final long id = 91829182;
+ final long id = 120912;
+
EasyMock.expect(pd.generateID()).andReturn(id);
- EasyMock.expect(server.getPostOffice()).andReturn(po);
- EasyMock.expect(server.getConnectionManager()).andReturn(cm);
- EasyMock.replay(server, remoting, pd, po, cm);
+ EasyMock.replay(po, cm, pd, sm, qs, rm, ss, ef);
+
+ ServerConnectionImpl conn = new ServerConnectionImpl("huihuh", "ookkok",
+ 192818, po, cm, pd, sm, qs, rm, ss, ef);
- ServerConnectionImpl conn = new ServerConnectionImpl(server, "uyuiiu", "iuiui", 87788778);
+ EasyMock.verify(po, cm, pd, sm, qs, rm, ss, ef);
- EasyMock.verify(server, remoting, pd, po, cm);
+ ServerSession session1 = EasyMock.createStrictMock(ServerSession.class);
+ ServerSession session2 = EasyMock.createStrictMock(ServerSession.class);
+ ServerSession session3 = EasyMock.createStrictMock(ServerSession.class);
conn.addSession(session1);
conn.addSession(session2);
@@ -221,62 +227,61 @@
assertFalse(conn.isStarted());
- EasyMock.reset(server, remoting, pd, po, cm);
+ EasyMock.reset(po, cm, pd, sm, qs, rm, ss, ef, session1, session2, session3);
session1.setStarted(true);
session2.setStarted(true);
session3.setStarted(true);
- EasyMock.replay(server, remoting, pd, po, cm, session1, session2, session3);
+ EasyMock.replay(po, cm, pd, sm, qs, rm, ss, ef, session1, session2, session3);
conn.start();
assertTrue(conn.isStarted());
- EasyMock.verify(server, remoting, pd, po, cm, session1, session2, session3);
+ EasyMock.verify(po, cm, pd, sm, qs, rm, ss, ef, session1, session2, session3);
- EasyMock.reset(server, remoting, pd, po, cm, session1, session2, session3);
+ EasyMock.reset(po, cm, pd, sm, qs, rm, ss, ef, session1, session2, session3);
session1.setStarted(false);
session2.setStarted(false);
session3.setStarted(false);
- EasyMock.replay(server, remoting, pd, po, cm, session1, session2, session3);
+ EasyMock.replay(po, cm, pd, sm, qs, rm, ss, ef, session1, session2, session3);
conn.stop();
- EasyMock.verify(server, remoting, pd, po, cm, session1, session2, session3);
+ EasyMock.verify(po, cm, pd, sm, qs, rm, ss, ef, session1, session2, session3);
assertFalse(conn.isStarted());
}
public void testClose() throws Exception
{
- MessagingServer server = EasyMock.createStrictMock(MessagingServer.class);
+ PostOffice po = EasyMock.createStrictMock(PostOffice.class);
+ ConnectionManager cm = EasyMock.createStrictMock(ConnectionManager.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+ StorageManager sm = EasyMock.createStrictMock(StorageManager.class);
+ HierarchicalRepository<QueueSettings> qs = EasyMock.createStrictMock(HierarchicalRepository.class);
+ ResourceManager rm = EasyMock.createStrictMock(ResourceManager.class);
+ SecurityStore ss = EasyMock.createStrictMock(SecurityStore.class);
+ ExecutorFactory ef = EasyMock.createStrictMock(ExecutorFactory.class);
ServerSession session1 = EasyMock.createStrictMock(ServerSession.class);
ServerSession session2 = EasyMock.createStrictMock(ServerSession.class);
ServerSession session3 = EasyMock.createStrictMock(ServerSession.class);
- RemotingService remoting = EasyMock.createStrictMock(RemotingService.class);
- PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
- PostOffice po = EasyMock.createStrictMock(PostOffice.class);
- ConnectionManager cm = EasyMock.createStrictMock(ConnectionManager.class);
-
- EasyMock.expect(server.getRemotingService()).andReturn(remoting);
- EasyMock.expect(remoting.getDispatcher()).andReturn(pd);
final long id = 91829182;
EasyMock.expect(pd.generateID()).andReturn(id);
- EasyMock.expect(server.getPostOffice()).andReturn(po);
- EasyMock.expect(server.getConnectionManager()).andReturn(cm);
- EasyMock.replay(server, remoting, pd, po, cm);
+ EasyMock.replay(po, cm, pd, sm, qs, rm, ss, ef, session1, session2, session3);
final long remotingClientSessionID = 81728172;
- ServerConnectionImpl conn = new ServerConnectionImpl(server, "uyuiiu", "iuiui", remotingClientSessionID);
+ ServerConnectionImpl conn = new ServerConnectionImpl("huihuh", "ookkok",
+ remotingClientSessionID, po, cm, pd, sm, qs, rm, ss, ef);
- EasyMock.verify(server, remoting, pd, po, cm);
+ EasyMock.verify(po, cm, pd, sm, qs, rm, ss, ef, session1, session2, session3);
conn.addSession(session1);
conn.addSession(session2);
@@ -302,7 +307,7 @@
assertFalse(conn.isClosed());
- EasyMock.reset(server, remoting, pd, po, cm);
+ EasyMock.reset(po, cm, pd, sm, qs, rm, ss, ef, session1, session2, session3);
session1.close();
session2.close();
@@ -342,107 +347,96 @@
pd.unregister(id);
- EasyMock.replay(server, remoting, pd, po, cm, session1, session2, session3, queue1, queue2, queue3,
- binding1, binding2, binding3);
+ EasyMock.replay(po, cm, pd, sm, qs, rm, ss, ef, session1, session2, session3, queue1, queue2, queue3,
+ binding1, binding2, binding3);
conn.close();
assertTrue(conn.isClosed());
- EasyMock.verify(server, remoting, pd, po, cm, session1, session2, session3, queue1, queue2, queue3,
+ EasyMock.verify(po, cm, pd, sm, qs, rm, ss, ef, session1, session2, session3, queue1, queue2, queue3,
binding1, binding2, binding3);
- EasyMock.reset(server, remoting, pd, po, cm, session1, session2, session3, queue1, queue2, queue3,
- binding1, binding2, binding3);
+ EasyMock.reset(po, cm, pd, sm, qs, rm, ss, ef, session1, session2, session3, queue1, queue2, queue3,
+ binding1, binding2, binding3);
//Closing again should do nothing
- EasyMock.replay(server, remoting, pd, po, cm, session1, session2, session3, queue1, queue2, queue3,
+ EasyMock.replay(po, cm, pd, sm, qs, rm, ss, ef, session1, session2, session3, queue1, queue2, queue3,
binding1, binding2, binding3);
conn.close();
assertTrue(conn.isClosed());
- EasyMock.verify(server, remoting, pd, po, cm, session1, session2, session3, queue1, queue2, queue3,
- binding1, binding2, binding3);
+ EasyMock.verify(po, cm, pd, sm, qs, rm, ss, ef, session1, session2, session3, queue1, queue2, queue3,
+ binding1, binding2, binding3);
}
// Private ----------------------------------------------------------------------------------------
private void testCreateSession(final boolean xa, final boolean autoCommitSends, final boolean autoCommitAcks) throws Exception
{
- MessagingServer server = EasyMock.createStrictMock(MessagingServer.class);
-
- final ServerSession session = EasyMock.createStrictMock(ServerSession.class);
-
- RemotingService remoting = EasyMock.createStrictMock(RemotingService.class);
- PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
PostOffice po = EasyMock.createStrictMock(PostOffice.class);
ConnectionManager cm = EasyMock.createStrictMock(ConnectionManager.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+ StorageManager sm = EasyMock.createStrictMock(StorageManager.class);
+ HierarchicalRepository<QueueSettings> qs = EasyMock.createStrictMock(HierarchicalRepository.class);
+ ResourceManager rm = EasyMock.createStrictMock(ResourceManager.class);
+ SecurityStore ss = EasyMock.createStrictMock(SecurityStore.class);
+ ExecutorFactory ef = EasyMock.createStrictMock(ExecutorFactory.class);
- EasyMock.expect(server.getRemotingService()).andReturn(remoting);
- EasyMock.expect(remoting.getDispatcher()).andReturn(pd);
final long id = 91829182;
+
EasyMock.expect(pd.generateID()).andReturn(id);
- EasyMock.expect(server.getPostOffice()).andReturn(po);
- EasyMock.expect(server.getConnectionManager()).andReturn(cm);
+
+ EasyMock.expect(ef.getExecutor()).andReturn(EasyMock.createMock(Executor.class));
- pd.register(EasyMock.isA(ServerSessionPacketHandler.class));
-
final long sessionID = 18927;
- EasyMock.expect(session.getID()).andReturn(sessionID);
- EasyMock.replay(server, remoting, pd, po, cm, session);
+ EasyMock.expect(pd.generateID()).andReturn(sessionID);
+
+ EasyMock.expect(sm.generateTransactionID()).andReturn(8172L);
+
+ pd.register(EasyMock.isA(ServerSessionPacketHandler.class));
+
+ EasyMock.replay(po, cm, pd, sm, qs, rm, ss, ef);
- ServerConnectionImpl conn = new ServerConnectionImpl(server, "uyuiiu", "iuiui", 87788778)
- {
- protected ServerSession doCreateSession(final boolean p_autoCommitSends, final boolean p_autoCommitAcks,
- final boolean p_xa, final PacketReturner p_returner)
- throws Exception
- {
- assertEquals(autoCommitSends, p_autoCommitSends);
- assertEquals(autoCommitAcks, p_autoCommitAcks);
- assertEquals(xa, p_xa);
- return session;
- }
- };
+ ServerConnectionImpl conn = new ServerConnectionImpl("huihuh", "ookkok",
+ 8172718, po, cm, pd, sm, qs, rm, ss, ef);
PacketReturner returner = EasyMock.createStrictMock(PacketReturner.class);
ConnectionCreateSessionResponseMessage resp = conn.createSession(xa, autoCommitSends, autoCommitAcks, returner);
- EasyMock.verify(server, remoting, pd, po, cm, session);
+ EasyMock.verify(po, cm, pd, sm, qs, rm, ss, ef);
assertEquals(sessionID, resp.getSessionID());
- assertEquals(1, conn.getSessions().size());
- assertTrue(session == conn.getSessions().iterator().next());
+ assertEquals(1, conn.getSessions().size());
}
private ServerConnectionImpl createConnection(final long id, final String username, final String password,
final long clientSessionID)
{
- MessagingServer server = EasyMock.createStrictMock(MessagingServer.class);
- RemotingService remoting = EasyMock.createStrictMock(RemotingService.class);
- PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
PostOffice po = EasyMock.createStrictMock(PostOffice.class);
ConnectionManager cm = EasyMock.createStrictMock(ConnectionManager.class);
+ PacketDispatcher pd = EasyMock.createStrictMock(PacketDispatcher.class);
+ StorageManager sm = EasyMock.createStrictMock(StorageManager.class);
+ HierarchicalRepository<QueueSettings> qs = EasyMock.createStrictMock(HierarchicalRepository.class);
+ ResourceManager rm = EasyMock.createStrictMock(ResourceManager.class);
+ SecurityStore ss = EasyMock.createStrictMock(SecurityStore.class);
+ ExecutorFactory ef = EasyMock.createStrictMock(ExecutorFactory.class);
- EasyMock.expect(server.getRemotingService()).andReturn(remoting);
- EasyMock.expect(remoting.getDispatcher()).andReturn(pd);
EasyMock.expect(pd.generateID()).andReturn(id);
- EasyMock.expect(server.getPostOffice()).andReturn(po);
- EasyMock.expect(server.getConnectionManager()).andReturn(cm);
- EasyMock.replay(server, remoting, pd, po, cm);
+ EasyMock.replay(po, cm, pd, sm, qs, rm, ss, ef);
+
+ ServerConnectionImpl conn = new ServerConnectionImpl(username, password,
+ clientSessionID, po, cm, pd, sm, qs, rm, ss, ef);
- ServerConnectionImpl conn = new ServerConnectionImpl(server, username, password,
- clientSessionID);
+ EasyMock.verify(po, cm, pd, sm, qs, rm, ss, ef);
- EasyMock.verify(server, remoting, pd, po, cm);
-
- assertTrue(server == conn.getServer());
assertEquals(username, conn.getUsername());
assertEquals(password, conn.getPassword());
assertEquals(clientSessionID, conn.getClientSessionID());
More information about the jboss-cvs-commits
mailing list