[jboss-cvs] JBoss Messaging SVN: r4093 - in trunk/src/main/org/jboss/messaging: core/management and 4 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Apr 21 10:45:05 EDT 2008


Author: ataylor
Date: 2008-04-21 10:45:05 -0400 (Mon, 21 Apr 2008)
New Revision: 4093

Modified:
   trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionFactoryImpl.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/PacketDispatcherImpl.java
   trunk/src/main/org/jboss/messaging/jms/client/JBossConnectionFactory.java
   trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java
Log:
changed JBossConnection Factory so that the core cf does not get serialized and is created on the client side

Modified: trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionFactoryImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionFactoryImpl.java	2008-04-21 13:55:53 UTC (rev 4092)
+++ trunk/src/main/org/jboss/messaging/core/client/impl/ClientConnectionFactoryImpl.java	2008-04-21 14:45:05 UTC (rev 4093)
@@ -52,7 +52,7 @@
  *
  * $Id: ClientConnectionFactoryImpl.java 3602 2008-01-21 17:48:32Z timfox $
  */
-public class ClientConnectionFactoryImpl implements ClientConnectionFactory, Serializable
+public class ClientConnectionFactoryImpl implements ClientConnectionFactory
 {
    // Constants ------------------------------------------------------------------------------------
 

Modified: trunk/src/main/org/jboss/messaging/core/management/MessagingServerManagement.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/management/MessagingServerManagement.java	2008-04-21 13:55:53 UTC (rev 4092)
+++ trunk/src/main/org/jboss/messaging/core/management/MessagingServerManagement.java	2008-04-21 14:45:05 UTC (rev 4093)
@@ -31,6 +31,7 @@
 import org.jboss.messaging.core.messagecounter.MessageCounter;
 import org.jboss.messaging.core.server.Queue;
 import org.jboss.messaging.core.server.ServerConnection;
+import org.jboss.messaging.core.config.Configuration;
 
 /**
  * This interface describes the core management interface exposed by the server
@@ -86,18 +87,6 @@
    List<Queue> getQueuesForAddress(String address) throws Exception;
 
    /**
-    * create a client connection factory
-    * @param strictTck if it is strict TCK
-    * @param consumerWindowSize the consumer window size
-    * @param consumerMaxRate the consumer max rate
-    * @param producerWindowSize the producer window size
-    * @param producerMaxRate the producer max rate
-    * @return the connection factory
-    */
-   ClientConnectionFactory createClientConnectionFactory(boolean strictTck,
-   		int consumerWindowSize, int consumerMaxRate, int producerWindowSize, int producerMaxRate);
-
-   /**
     * remove all the messages for a specific address
     * @param address the address
     * @throws Exception if a problem occurred
@@ -268,4 +257,6 @@
     */
    Set<String> listAvailableAddresses();
 
+   Configuration getConfiguration();
+
 }

Modified: trunk/src/main/org/jboss/messaging/core/management/impl/MessagingServerManagementImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/management/impl/MessagingServerManagementImpl.java	2008-04-21 13:55:53 UTC (rev 4092)
+++ trunk/src/main/org/jboss/messaging/core/management/impl/MessagingServerManagementImpl.java	2008-04-21 14:45:05 UTC (rev 4093)
@@ -45,6 +45,7 @@
 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.config.Configuration;
 
 /**
  * This interface describes the properties and operations that comprise the management interface of the
@@ -111,18 +112,6 @@
       return messagingServer.getPostOffice().removeDestination(address, false);
    }
 
-   public ClientConnectionFactory createClientConnectionFactory(boolean strictTck,
-   		                                                       int consumerWindowSize, int consumerMaxRate,
-   		                                                       int producerWindowSize, int producerMaxRate)
-   {
-      return new ClientConnectionFactoryImpl(messagingServer.getConfiguration().getMessagingServerID(),
-              messagingServer.getConfiguration().getLocation(),
-              messagingServer.getConfiguration().getConnectionParams(),
-              messagingServer.getConfiguration().isStrictTck() || strictTck,
-              consumerWindowSize, consumerMaxRate,
-              producerWindowSize, producerMaxRate);
-   }
-
    public void removeAllMessagesForAddress(String address) throws Exception
    {
       List<Binding> bindings = messagingServer.getPostOffice().getBindingsForAddress(address);
@@ -419,6 +408,11 @@
       return messagingServer.getPostOffice().listAllDestinations();
    }
 
+   public Configuration getConfiguration()
+   {
+      return messagingServer.getConfiguration();
+   }
+
    // Private ---------------------------------------------------------------------------
 
 

Modified: trunk/src/main/org/jboss/messaging/core/remoting/impl/PacketDispatcherImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/core/remoting/impl/PacketDispatcherImpl.java	2008-04-21 13:55:53 UTC (rev 4092)
+++ trunk/src/main/org/jboss/messaging/core/remoting/impl/PacketDispatcherImpl.java	2008-04-21 14:45:05 UTC (rev 4093)
@@ -26,7 +26,7 @@
  * 
  * @version <tt>$Revision$</tt>
  */
-public class PacketDispatcherImpl implements PacketDispatcher, Serializable
+public class PacketDispatcherImpl implements PacketDispatcher
 {
 
    // Constants -----------------------------------------------------

Modified: trunk/src/main/org/jboss/messaging/jms/client/JBossConnectionFactory.java
===================================================================
--- trunk/src/main/org/jboss/messaging/jms/client/JBossConnectionFactory.java	2008-04-21 13:55:53 UTC (rev 4092)
+++ trunk/src/main/org/jboss/messaging/jms/client/JBossConnectionFactory.java	2008-04-21 14:45:05 UTC (rev 4093)
@@ -22,6 +22,7 @@
 package org.jboss.messaging.jms.client;
 
 import java.io.Serializable;
+import java.io.IOException;
 
 import javax.jms.Connection;
 import javax.jms.ConnectionFactory;
@@ -41,8 +42,12 @@
 
 import org.jboss.messaging.core.client.ClientConnection;
 import org.jboss.messaging.core.client.ClientConnectionFactory;
+import org.jboss.messaging.core.client.Location;
+import org.jboss.messaging.core.client.ConnectionParams;
+import org.jboss.messaging.core.client.impl.ClientConnectionFactoryImpl;
 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.jms.referenceable.SerializableObjectRefAddr;
 
 /**
@@ -67,24 +72,52 @@
    
    // Attributes -----------------------------------------------------------------------------------
    
-   private final ClientConnectionFactory connectionFactory;
+   private transient ClientConnectionFactory connectionFactory;
    
    private final String clientID;
    
    private final int dupsOKBatchSize;
 
+   private final Location location;
+
+   private final ConnectionParams connectionParams;
+
+   private final int serverID;
+
+   private final boolean strictTck;
+
+   private final int defaultConsumerWindowSize;
+
+   private final int defaultConsumerMaxRate;
+
+   private final int defaultProducerWindowSize;
+
+   private final int defaultProducerMaxRate;
+
    // Constructors ---------------------------------------------------------------------------------
    
-   public JBossConnectionFactory(final ClientConnectionFactory connectionFactory, final String clientID,
-   		                        final int dupsOKBatchSize)
+   public JBossConnectionFactory(final String clientID,
+   		                        final int dupsOKBatchSize,
+                                 final Location location,
+                                 final ConnectionParams connectionParams,
+                                 final int serverID,
+                                 final boolean strictTck,
+                                 final int defaultConsumerWindowSize,
+                                 final int defaultConsumerMaxRate,
+                                 final int defaultProducerWindowSize,
+                                 final int defaultProducerMaxRate)
    {
-      this.connectionFactory = connectionFactory;     
-      
       this.clientID = clientID;
-      
       this.dupsOKBatchSize = dupsOKBatchSize;
+      this.location = location;
+      this.connectionParams = connectionParams;
+      this.serverID = serverID;
+      this.strictTck = strictTck;
+      this.defaultConsumerMaxRate = defaultConsumerMaxRate;
+      this.defaultConsumerWindowSize = defaultConsumerWindowSize;
+      this.defaultProducerMaxRate = defaultProducerMaxRate;
+      this.defaultProducerWindowSize = defaultProducerWindowSize;
    }
-   
    // ConnectionFactory implementation -------------------------------------------------------------
    
    public Connection createConnection() throws JMSException
@@ -186,6 +219,18 @@
    
    public ClientConnectionFactory getDelegate()
    {
+      if(connectionFactory == null)
+         {
+            connectionFactory = new ClientConnectionFactoryImpl(serverID,
+                    location,
+                    connectionParams,
+                    strictTck,
+                    defaultConsumerWindowSize,
+                    defaultConsumerMaxRate,
+                    defaultProducerWindowSize,
+                    defaultProducerMaxRate);
+
+         }
       return connectionFactory;
    }
    
@@ -199,6 +244,18 @@
    {
       try
       {
+         if(connectionFactory == null)
+         {
+            connectionFactory = new ClientConnectionFactoryImpl(serverID,
+                    location,
+                    connectionParams,
+                    strictTck,
+                    defaultConsumerWindowSize,
+                    defaultConsumerMaxRate,
+                    defaultProducerWindowSize, 
+                    defaultProducerMaxRate);
+            
+         }
          ClientConnection res = connectionFactory.createConnection(username, password);
                     
          return new JBossConnection(res, type, clientID, dupsOKBatchSize);

Modified: trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java
===================================================================
--- trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java	2008-04-21 13:55:53 UTC (rev 4092)
+++ trunk/src/main/org/jboss/messaging/jms/server/impl/JMSServerManagerImpl.java	2008-04-21 14:45:05 UTC (rev 4093)
@@ -249,11 +249,13 @@
       JBossConnectionFactory cf = connectionFactories.get(name);
       if (cf == null)
       {
-         ClientConnectionFactory clientConnectionFactory =
-         	messagingServerManagement.createClientConnectionFactory(strictTck,
-         			consumerWindowSize, consumerMaxRate, producerWindowSize, producerMaxRate);
-         log.debug(this + " created local connectionFactory " + clientConnectionFactory);
-         cf = new JBossConnectionFactory(clientConnectionFactory, clientID, dupsOKBatchSize);
+         cf = new JBossConnectionFactory( clientID, dupsOKBatchSize,
+                 messagingServerManagement.getConfiguration().getLocation(),
+                 messagingServerManagement.getConfiguration().getConnectionParams(),
+                 messagingServerManagement.getConfiguration().getMessagingServerID(),
+                 messagingServerManagement.getConfiguration().isStrictTck() || strictTck,
+                 consumerWindowSize, consumerMaxRate, producerWindowSize, producerMaxRate
+                 );
       }
       if (!bindToJndi(jndiBinding, cf))
       {
@@ -276,11 +278,13 @@
       JBossConnectionFactory cf = connectionFactories.get(name);
       if (cf == null)
       {
-         ClientConnectionFactory clientConnectionFactory =
-         	messagingServerManagement.createClientConnectionFactory(strictTck,
-         			consumerWindowSize, consumerMaxRate, producerWindowSize, producerMaxRate);
-         log.debug(this + " created local connectionFactory " + clientConnectionFactory);
-         cf = new JBossConnectionFactory(clientConnectionFactory, clientID, dupsOKBatchSize);
+         cf = new JBossConnectionFactory( clientID, dupsOKBatchSize,
+                 messagingServerManagement.getConfiguration().getLocation(),
+                 messagingServerManagement.getConfiguration().getConnectionParams(),
+                 messagingServerManagement.getConfiguration().getMessagingServerID(),
+                 messagingServerManagement.getConfiguration().isStrictTck() || strictTck,
+                 consumerWindowSize, consumerMaxRate, producerWindowSize, producerMaxRate
+                 );
       }
       for (String jndiBinding : jndiBindings)
       {




More information about the jboss-cvs-commits mailing list