You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by rg...@apache.org on 2013/09/25 16:45:08 UTC

svn commit: r1526195 - in /qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl: ConnectionFactoryImpl.java ConnectionImpl.java MessageProducerImpl.java

Author: rgodfrey
Date: Wed Sep 25 14:45:07 2013
New Revision: 1526195

URL: http://svn.apache.org/r1526195
Log:
QPID-5167 : Allow sync_publish flag to be controlled from the ConnectionFactory connection string (patch from dingham@microsoft.com)

Modified:
    qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ConnectionFactoryImpl.java
    qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ConnectionImpl.java
    qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageProducerImpl.java

Modified: qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ConnectionFactoryImpl.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ConnectionFactoryImpl.java?rev=1526195&r1=1526194&r2=1526195&view=diff
==============================================================================
--- qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ConnectionFactoryImpl.java (original)
+++ qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ConnectionFactoryImpl.java Wed Sep 25 14:45:07 2013
@@ -33,6 +33,7 @@ import javax.jms.TopicConnection;
 import javax.jms.TopicConnectionFactory;
 import org.apache.qpid.amqp_1_0.jms.ConnectionFactory;
 
+
 public class ConnectionFactoryImpl implements ConnectionFactory, TopicConnectionFactory, QueueConnectionFactory
 {
     private String _host;
@@ -45,7 +46,9 @@ public class ConnectionFactoryImpl imple
 
     private String _queuePrefix;
     private String _topicPrefix;
-    private boolean _useBinaryMessageId = Boolean.parseBoolean(System.getProperty("qpid.use_binary_message_id", "true"));;
+    private boolean _useBinaryMessageId = Boolean.parseBoolean(System.getProperty("qpid.use_binary_message_id", "true"));
+    private boolean _syncPublish = Boolean.parseBoolean(System.getProperty("qpid.sync_publish", "false"));
+
 
     public ConnectionFactoryImpl(final String host,
                                  final int port,
@@ -102,6 +105,7 @@ public class ConnectionFactoryImpl imple
         connection.setQueuePrefix(_queuePrefix);
         connection.setTopicPrefix(_topicPrefix);
         connection.setUseBinaryMessageId(_useBinaryMessageId);
+        connection.setSyncPublish(_syncPublish);
         return connection;
     }
 
@@ -153,6 +157,7 @@ public class ConnectionFactoryImpl imple
         String remoteHost = null;
 
         boolean binaryMessageId = true;
+        boolean syncPublish = false;
 
         if(userInfo != null)
         {
@@ -185,6 +190,10 @@ public class ConnectionFactoryImpl imple
                 {
                     binaryMessageId = Boolean.parseBoolean(keyValuePair[1]);
                 }
+                else if (keyValuePair[0].equalsIgnoreCase("sync-publish"))
+                {
+                    syncPublish = Boolean.parseBoolean(keyValuePair[1]);
+                }
             }
         }
 
@@ -196,6 +205,7 @@ public class ConnectionFactoryImpl imple
         ConnectionFactoryImpl connectionFactory =
                 new ConnectionFactoryImpl(host, port, username, password, clientId, remoteHost, ssl);
         connectionFactory.setUseBinaryMessageId(binaryMessageId);
+        connectionFactory.setSyncPublish(syncPublish);
 
         return connectionFactory;
 
@@ -253,4 +263,9 @@ public class ConnectionFactoryImpl imple
     {
         _useBinaryMessageId = useBinaryMessageId;
     }
+
+    public void setSyncPublish(boolean syncPublish)
+    {
+        _syncPublish = syncPublish;
+    }
 }

Modified: qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ConnectionImpl.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ConnectionImpl.java?rev=1526195&r1=1526194&r2=1526195&view=diff
==============================================================================
--- qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ConnectionImpl.java (original)
+++ qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ConnectionImpl.java Wed Sep 25 14:45:07 2013
@@ -28,7 +28,9 @@ import org.apache.qpid.amqp_1_0.transpor
 import javax.jms.*;
 import javax.jms.IllegalStateException;
 import javax.jms.Queue;
+
 import java.util.*;
+
 import org.apache.qpid.amqp_1_0.type.Symbol;
 import org.apache.qpid.amqp_1_0.type.transport.*;
 import org.apache.qpid.amqp_1_0.type.transport.Error;
@@ -57,6 +59,7 @@ public class ConnectionImpl implements C
     private String _queuePrefix;
     private String _topicPrefix;
     private boolean _useBinaryMessageId = Boolean.parseBoolean(System.getProperty("qpid.use_binary_message_id", "true"));
+    private boolean _syncPublish = Boolean.parseBoolean(System.getProperty("qpid.sync_publish", "false"));
 
     private static enum State
     {
@@ -521,5 +524,14 @@ public class ConnectionImpl implements C
         return _useBinaryMessageId;
     }
 
+    void setSyncPublish(boolean syncPublish)
+    {
+        _syncPublish = syncPublish;
+    }
+
+    boolean syncPublish()
+    {
+        return _syncPublish;
+    }
 
 }

Modified: qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageProducerImpl.java
URL: http://svn.apache.org/viewvc/qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageProducerImpl.java?rev=1526195&r1=1526194&r2=1526195&view=diff
==============================================================================
--- qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageProducerImpl.java (original)
+++ qpid/trunk/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/MessageProducerImpl.java Wed Sep 25 14:45:07 2013
@@ -64,6 +64,7 @@ public class MessageProducerImpl impleme
         }
 
         _session = session;
+        _syncPublish = session.getConnection().syncPublish();
 
         if(_destination != null)
         {



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org