[jboss-cvs] JBoss Messaging SVN: r4268 - in trunk: src/main/org/jboss/messaging/jms/client and 5 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Wed May 21 09:59:09 EDT 2008


Author: timfox
Date: 2008-05-21 09:59:09 -0400 (Wed, 21 May 2008)
New Revision: 4268

Modified:
   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/ClientProducerImpl.java
   trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionImpl.java
   trunk/src/main/org/jboss/messaging/jms/client/JBossConnectionFactory.java
   trunk/src/main/org/jboss/messaging/jms/server/JMSServerManager.java
   trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerDeployer.java
   trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java
   trunk/tests/jms-tests/src/org/jboss/test/messaging/jms/AcknowledgementTest.java
   trunk/tests/jms-tests/src/org/jboss/test/messaging/jms/CTSMiscellaneousTest.java
   trunk/tests/jms-tests/src/org/jboss/test/messaging/tools/container/LocalTestServer.java
   trunk/tests/src/org/jboss/messaging/tests/integration/jms/server/impl/JMSServerManagerimplTest.java
Log:
Fixed CTSMiscellaneousTest


Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionFactoryImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionFactoryImpl.java	2008-05-21 13:58:05 UTC (rev 4267)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionFactoryImpl.java	2008-05-21 13:59:09 UTC (rev 4268)
@@ -78,7 +78,9 @@
    
    private boolean defaultBlockOnAcknowledge;
    
+   private final boolean defaultSendNonPersistentMessagesBlocking;
    
+   
    // Static ---------------------------------------------------------------------------------------
     
    // Constructors ---------------------------------------------------------------------------------
@@ -87,7 +89,8 @@
                                       final boolean strictTck,
                                       final int defaultConsumerWindowSize, final int defaultConsumerMaxRate,
                                       final int defaultProducerWindowSize, final int defaultProducerMaxRate,
-                                      final boolean defaultBlockOnAcknowledge)
+                                      final boolean defaultBlockOnAcknowledge,
+                                      final boolean defaultSendNonPersistentMessagesBlocking)
    {
       this.location = location;
       this.strictTck = strictTck;
@@ -96,6 +99,7 @@
       this.defaultProducerWindowSize = defaultProducerWindowSize;
       this.defaultProducerMaxRate = defaultProducerMaxRate;
       this.defaultBlockOnAcknowledge = defaultBlockOnAcknowledge;
+      this.defaultSendNonPersistentMessagesBlocking = defaultSendNonPersistentMessagesBlocking;
       this.connectionParams = connectionParams;
    }
    
@@ -117,6 +121,7 @@
       this.defaultProducerWindowSize = 1000;
       this.defaultProducerMaxRate = -1;
       this.location = location;
+      this.defaultSendNonPersistentMessagesBlocking = false;
       this.connectionParams = connectionParams;
    }
    
@@ -147,7 +152,7 @@
          return new ClientConnectionImpl(response.getConnectionTargetID(), strictTck, remotingConnection,
                defaultConsumerWindowSize, defaultConsumerMaxRate,
                defaultProducerWindowSize, defaultProducerMaxRate,
-               defaultBlockOnAcknowledge, response.getServerVersion());
+               defaultBlockOnAcknowledge, defaultSendNonPersistentMessagesBlocking, response.getServerVersion());
       }
       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-05-21 13:58:05 UTC (rev 4267)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionImpl.java	2008-05-21 13:59:09 UTC (rev 4268)
@@ -75,6 +75,8 @@
    private final int defaultProducerMaxRate;
    
    private final boolean defaultBlockOnAcknowledge;
+   
+   private final boolean defaultSendNonPersistentMessagesBlocking;
 
    private final Version serverVersion;
    
@@ -91,6 +93,7 @@
                                final int defaultProducerWindowSize,
                                final int defaultProducerMaxRate,
                                final boolean defaultBlockOnAcknowledge,
+                               final boolean defaultSendNonPersistentMessagesBlocking,
                                final Version serverVersion)
    {
       this.serverTargetID = serverTargetID;
@@ -108,6 +111,8 @@
       this.defaultProducerMaxRate = defaultProducerMaxRate;
       
       this.defaultBlockOnAcknowledge = defaultBlockOnAcknowledge;
+      
+      this.defaultSendNonPersistentMessagesBlocking = defaultSendNonPersistentMessagesBlocking;
 
       this.serverVersion = serverVersion;
    }
@@ -127,7 +132,7 @@
 
       ClientSession session =
       	new ClientSessionImpl(this, response.getSessionID(), ackBatchSize, cacheProducers,
-      			autoCommitSends, autoCommitAcks, blockOnAcknowledge,
+      			autoCommitSends, autoCommitAcks, blockOnAcknowledge, defaultSendNonPersistentMessagesBlocking,
       			defaultConsumerWindowSize, defaultConsumerMaxRate, defaultProducerWindowSize,
       			defaultProducerMaxRate);
 

Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ClientProducerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ClientProducerImpl.java	2008-05-21 13:58:05 UTC (rev 4267)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientProducerImpl.java	2008-05-21 13:59:09 UTC (rev 4268)
@@ -69,7 +69,9 @@
      
    private final TokenBucketLimiter rateLimiter;
    
-   private final boolean transactional;
+   private final boolean sendNonPersistentMessagesSynchronously;
+   
+   private final boolean sendPersistentMessagesSynchronously;
      
    // Static ---------------------------------------------------------------------------------------
 
@@ -79,7 +81,9 @@
                              final long clientTargetID,
    		                    final SimpleString address,
    		                    final RemotingConnection remotingConnection, final int windowSize,
-   		                    final int maxRate, final boolean transactional)
+   		                    final int maxRate,
+   		                    final boolean sendNonPersistentMessagesSynchronously,
+   		                    final boolean sendPersistentMessagesSynchronously)
    {   	
       this.session = session;
       
@@ -102,7 +106,9 @@
       	this.rateLimiter = null;
       }
       
-      this.transactional = transactional;
+      this.sendNonPersistentMessagesSynchronously = sendNonPersistentMessagesSynchronously; 
+      
+      this.sendPersistentMessagesSynchronously = sendPersistentMessagesSynchronously; 
    }
    
    // ClientProducer implementation ----------------------------------------------------------------
@@ -161,7 +167,10 @@
 //   		windowSize--;
 //   	}
    	
-   	if (msg.isDurable() && !transactional)
+   	boolean sendBlocking = msg.isDurable() && sendPersistentMessagesSynchronously ||
+   	                       !msg.isDurable() && sendNonPersistentMessagesSynchronously;
+   	
+   	if (sendBlocking)
    	{
    	   remotingConnection.sendBlocking(serverTargetID, session.getServerTargetID(), message);
    	}

Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionImpl.java	2008-05-21 13:58:05 UTC (rev 4267)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientSessionImpl.java	2008-05-21 13:59:09 UTC (rev 4268)
@@ -145,12 +145,15 @@
    
    private final boolean blockOnAcknowledge;
    
+   private final boolean sendNonPersistentMessagesBlocking;
+   
    // Constructors ---------------------------------------------------------------------------------
    
    public ClientSessionImpl(final ClientConnectionInternal connection, final long serverTargetID,
                             final int lazyAckBatchSize, final boolean cacheProducers,                            
                             final boolean autoCommitSends, final boolean autoCommitAcks,
                             final boolean blockOnAcknowledge,
+                            final boolean sendNonPersistentMessagesBlocking,
                             final int defaultConsumerWindowSize,  
                             final int defaultConsumerMaxRate,
                             final int defaultProducerWindowSize,
@@ -195,6 +198,8 @@
       this.autoCommitSends = autoCommitSends;
       
       this.blockOnAcknowledge = blockOnAcknowledge;
+      
+      this.sendNonPersistentMessagesBlocking = sendNonPersistentMessagesBlocking;
    }
    
    // ClientSession implementation -----------------------------------------------------------------
@@ -363,7 +368,8 @@
       	
       	producer = new ClientProducerImpl(this, response.getProducerTargetID(), clientTargetID, address,
       			                            remotingConnection, response.getWindowSize(),
-      			                            response.getMaxRate(), !autoCommitSends);  
+      			                            response.getMaxRate(),
+      			                            sendNonPersistentMessagesBlocking, !autoCommitSends);  
       	
       	remotingConnection.getPacketDispatcher().register(new ClientProducerPacketHandler(producer, clientTargetID));
       }

Modified: trunk/src/main/org/jboss/messaging/jms/client/JBossConnectionFactory.java
===================================================================
--- trunk/src/main/org/jboss/messaging/jms/client/JBossConnectionFactory.java	2008-05-21 13:58:05 UTC (rev 4267)
+++ trunk/src/main/org/jboss/messaging/jms/client/JBossConnectionFactory.java	2008-05-21 13:59:09 UTC (rev 4268)
@@ -93,6 +93,8 @@
    private final int defaultProducerMaxRate;
    
    private final boolean defaultBlockOnAcknowledge;
+   
+   private final boolean defaultSendNonPersistentMessagesBlocking;
 
    // Constructors ---------------------------------------------------------------------------------
    
@@ -105,7 +107,8 @@
                                  final int defaultConsumerMaxRate,
                                  final int defaultProducerWindowSize,
                                  final int defaultProducerMaxRate,
-                                 final boolean defaultBlockOnAcknowledge)
+                                 final boolean defaultBlockOnAcknowledge,
+                                 final boolean defaultSendNonPersistentMessagesBlocking)
    {
       this.clientID = clientID;
       this.dupsOKBatchSize = dupsOKBatchSize;
@@ -117,6 +120,7 @@
       this.defaultProducerMaxRate = defaultProducerMaxRate;
       this.defaultProducerWindowSize = defaultProducerWindowSize;
       this.defaultBlockOnAcknowledge = defaultBlockOnAcknowledge;
+      this.defaultSendNonPersistentMessagesBlocking = defaultSendNonPersistentMessagesBlocking;
    }
    // ConnectionFactory implementation -------------------------------------------------------------
    
@@ -229,7 +233,8 @@
                defaultConsumerMaxRate,
                defaultProducerWindowSize,
                defaultProducerMaxRate,
-               defaultBlockOnAcknowledge);
+               defaultBlockOnAcknowledge,
+               defaultSendNonPersistentMessagesBlocking);
 
       }
       return connectionFactory;

Modified: trunk/src/main/org/jboss/messaging/jms/server/JMSServerManager.java
===================================================================
--- trunk/src/main/org/jboss/messaging/jms/server/JMSServerManager.java	2008-05-21 13:58:05 UTC (rev 4267)
+++ trunk/src/main/org/jboss/messaging/jms/server/JMSServerManager.java	2008-05-21 13:59:09 UTC (rev 4268)
@@ -96,6 +96,7 @@
    		                          int consumerWindowSize, int consumerMaxRate,
    		                          int producerWindowSize, int producerMaxRate,
    		                          boolean blockOnAcknowledge,
+   		                          boolean defaultSendNonPersistentMessagesBlocking,
    		                          String jndiBinding) throws Exception;
 
    /**
@@ -117,6 +118,7 @@
    		                          int consumerWindowSize, int consumerMaxRate,
    		                          int producerWindowSize, int producerMaxRate,
    		                          boolean blockOnAcknowledge,
+   		                          boolean defaultSendNonPersistentMessagesBlocking,
    		                          List<String> jndiBindings) throws Exception;
 
    /**

Modified: trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerDeployer.java
===================================================================
--- trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerDeployer.java	2008-05-21 13:58:05 UTC (rev 4267)
+++ trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerDeployer.java	2008-05-21 13:59:09 UTC (rev 4268)
@@ -49,6 +49,7 @@
    private static final String SUPPORTS_LOAD_BALANCING = "supports-load-balancing";
    private static final String LOAD_BALANCING_FACTORY = "load-balancing-factory";
    private static final String BLOCK_ON_ACKNOWLEDGE = "block-on-acknowledge";
+   private static final String  SEND_NP_MESSAGES_SYNCHRONOUSLY = "send-np-messages-synchronously";
    private static final String STRICT_TCK = "strict-tck";
    private static final String ENTRY_NODE_NAME = "entry";
    private static final String CONNECTION_FACTORY_NODE_NAME = "connection-factory";
@@ -132,6 +133,7 @@
          int producerWindowSize = 1000;
          int producerMaxRate = -1;
          boolean blockOnAcknowledge = false;
+         boolean sendNonPersistentMessagesSynchronously = false;
          
          for (int j = 0; j < attributes.getLength(); j++)
          {
@@ -167,6 +169,10 @@
             {
                blockOnAcknowledge = Boolean.parseBoolean(attributes.item(j).getTextContent().trim());
             }
+            else if (SEND_NP_MESSAGES_SYNCHRONOUSLY.equalsIgnoreCase(attributes.item(j).getNodeName()))
+            {
+               sendNonPersistentMessagesSynchronously = Boolean.parseBoolean(attributes.item(j).getTextContent().trim());
+            }
 //            if (SUPPORTS_FAILOVER.equalsIgnoreCase(attributes.item(j).getNodeName()))
 //            {
 //               //setSupportsFailover(Boolean.parseBoolean(attributes.item(j).getTextContent().trim()));
@@ -195,7 +201,7 @@
                String name = node.getAttributes().getNamedItem(getKeyAttribute()).getNodeValue();
                jmsServerManager.createConnectionFactory(name, clientID, dupsOKBatchSize, cfStrictTck,
                		consumerWindowSize, consumerMaxRate, producerWindowSize, producerMaxRate, 
-               		blockOnAcknowledge, jndiName);
+               		blockOnAcknowledge, sendNonPersistentMessagesSynchronously, jndiName);
             }
          }
       }

Modified: trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java	2008-05-21 13:58:05 UTC (rev 4267)
+++ trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java	2008-05-21 13:59:09 UTC (rev 4268)
@@ -231,7 +231,8 @@
 
    public boolean createConnectionFactory(String name, String clientID,
    		int dupsOKBatchSize, boolean strictTck, int consumerWindowSize, int consumerMaxRate,
-   		int producerWindowSize, int producerMaxRate, boolean blockOnAcknowledge, String jndiBinding) throws Exception
+   		int producerWindowSize, int producerMaxRate, boolean blockOnAcknowledge,
+   		boolean defaultSendNonPersistentMessagesBlocking, String jndiBinding) throws Exception
    {
       JBossConnectionFactory cf = connectionFactories.get(name);
       if (cf == null)
@@ -241,7 +242,8 @@
                  messagingServerManagement.getConfiguration().getConnectionParams(),                 
                  messagingServerManagement.getConfiguration().isStrictTck() || strictTck,
                  consumerWindowSize, consumerMaxRate, producerWindowSize, producerMaxRate,
-                 blockOnAcknowledge
+                 blockOnAcknowledge,
+                 defaultSendNonPersistentMessagesBlocking
                  );
       }
       if (!bindToJndi(jndiBinding, cf))
@@ -260,6 +262,7 @@
    public boolean createConnectionFactory(String name, String clientID, int dupsOKBatchSize,
    		                                 boolean strictTck, int consumerWindowSize, int consumerMaxRate,
    		                                 int producerWindowSize, int producerMaxRate, boolean blockOnAcknowledge,
+   		                                 boolean defaultSendNonPersistentMessagesBlocking,
    		                                 List<String> jndiBindings) throws Exception
    {
       JBossConnectionFactory cf = connectionFactories.get(name);
@@ -270,7 +273,7 @@
                  messagingServerManagement.getConfiguration().getConnectionParams(),
                  messagingServerManagement.getConfiguration().isStrictTck() || strictTck,
                  consumerWindowSize, consumerMaxRate, producerWindowSize, producerMaxRate,
-                 blockOnAcknowledge
+                 blockOnAcknowledge, defaultSendNonPersistentMessagesBlocking
                  );
       }
       for (String jndiBinding : jndiBindings)

Modified: trunk/tests/jms-tests/src/org/jboss/test/messaging/jms/AcknowledgementTest.java
===================================================================
--- trunk/tests/jms-tests/src/org/jboss/test/messaging/jms/AcknowledgementTest.java	2008-05-21 13:58:05 UTC (rev 4267)
+++ trunk/tests/jms-tests/src/org/jboss/test/messaging/jms/AcknowledgementTest.java	2008-05-21 13:59:09 UTC (rev 4268)
@@ -21,11 +21,25 @@
   */
 package org.jboss.test.messaging.jms;
 
-import EDU.oswego.cs.dl.util.concurrent.Latch;
+import java.util.ArrayList;
+
+import javax.jms.Connection;
+import javax.jms.ConnectionFactory;
+import javax.jms.DeliveryMode;
+import javax.jms.Message;
+import javax.jms.MessageConsumer;
+import javax.jms.MessageListener;
+import javax.jms.MessageProducer;
+import javax.jms.Session;
+import javax.jms.TextMessage;
+import javax.jms.TopicConnection;
+import javax.jms.TopicPublisher;
+import javax.jms.TopicSession;
+import javax.jms.TopicSubscriber;
+
 import org.jboss.messaging.jms.client.JBossConnectionFactory;
 
-import javax.jms.*;
-import java.util.ArrayList;
+import EDU.oswego.cs.dl.util.concurrent.Latch;
 
 /**
  * @author <a href="mailto:tim.fox at jboss.com">Tim Fox</a>
@@ -52,7 +66,7 @@
    protected void setUp() throws Exception
    {
       super.setUp();
-      getJmsServerManager().createConnectionFactory("ackconnectionfactory", null, 1000, true, 1024 * 1024, -1, 1000, -1, true, "/ackconnectionfactory");
+      getJmsServerManager().createConnectionFactory("ackconnectionfactory", null, 1000, true, 1024 * 1024, -1, 1000, -1, true, true, "/ackconnectionfactory");
       cf = (JBossConnectionFactory) getInitialContext().lookup("/ackconnectionfactory");
    }
 

Modified: trunk/tests/jms-tests/src/org/jboss/test/messaging/jms/CTSMiscellaneousTest.java
===================================================================
--- trunk/tests/jms-tests/src/org/jboss/test/messaging/jms/CTSMiscellaneousTest.java	2008-05-21 13:58:05 UTC (rev 4267)
+++ trunk/tests/jms-tests/src/org/jboss/test/messaging/jms/CTSMiscellaneousTest.java	2008-05-21 13:59:09 UTC (rev 4268)
@@ -82,7 +82,10 @@
 			//Deploy a connection factory with load balancing but no failover on node0
          List<String> bindings = new ArrayList<String>();
          bindings.add("StrictTCKConnectionFactory");
-         deployConnectionFactory("StrictTCKConnectionFactory", bindings, true);
+         
+         getJmsServerManager().createConnectionFactory("StrictTCKConnectionFactory", null,
+               1000, true, 1024 * 1024, -1, 1000, -1, true, true, "/StrictTCKConnectionFactory");
+                 
          cf = (JBossConnectionFactory) getInitialContext().lookup("/StrictTCKConnectionFactory");
 		}
 		catch (Exception e)

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-05-21 13:58:05 UTC (rev 4267)
+++ trunk/tests/jms-tests/src/org/jboss/test/messaging/tools/container/LocalTestServer.java	2008-05-21 13:59:09 UTC (rev 4268)
@@ -651,7 +651,7 @@
    {
       log.info("deploying connection factory with name: " + objectName + " and dupsok: " + dupsOkBatchSize);
       getJMSServerManager().createConnectionFactory(objectName, clientId, dupsOkBatchSize,
-      		strictTck, prefetchSize, -1, 1000, -1, false, jndiBindings);
+      		strictTck, prefetchSize, -1, 1000, -1, false, true, jndiBindings);
    }
 
 

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-05-21 13:58:05 UTC (rev 4267)
+++ trunk/tests/src/org/jboss/messaging/tests/integration/jms/server/impl/JMSServerManagerimplTest.java	2008-05-21 13:59:09 UTC (rev 4268)
@@ -234,7 +234,7 @@
 
    public void testCreateAndDestroyConnectionFactory() throws Exception
    {
-      jmsServerManager.createConnectionFactory("newtestcf", "anid", 100, true, 1000, -1, 1000, -1, false, "newtestcf");
+      jmsServerManager.createConnectionFactory("newtestcf", "anid", 100, true, 1000, -1, 1000, -1, false, false, "newtestcf");
       JBossConnectionFactory jbcf = (JBossConnectionFactory) initialContext.lookup("newtestcf");
       assertNotNull(jbcf);
       assertNotNull(jbcf.getDelegate());
@@ -251,7 +251,7 @@
       ArrayList<String> bindings = new ArrayList<String>();
       bindings.add("oranewtestcf");
       bindings.add("newtestcf");
-      jmsServerManager.createConnectionFactory("newtestcf", "anid", 100, true, 1000, -1, 1000, -1, false,bindings);
+      jmsServerManager.createConnectionFactory("newtestcf", "anid", 100, true, 1000, -1, 1000, -1, false, false, bindings);
       jbcf = (JBossConnectionFactory) initialContext.lookup("newtestcf");
       assertNotNull(jbcf);
       assertNotNull(jbcf.getDelegate());




More information about the jboss-cvs-commits mailing list