Author: rajith
Date: Fri Jun 15 17:22:29 2012
New Revision: 1350708

URL: http://svn.apache.org/viewvc?rev=1350708&view=rev
Log:
QPID-4027 The Connection object will provide a reference to the
respective MessageFactory that can be used or creating messages or
decoding content for messages received. Since a connection object will
contain the AMQP version it would be the logical place to provide this
reference.

Modified:
    
qpid/branches/address-refactor2/qpid/java/client-api/src/main/java/org/apache/qpid/messaging/Connection.java
    
qpid/branches/address-refactor2/qpid/java/client-api/src/main/java/org/apache/qpid/messaging/util/ConnectionManagementDecorator.java
    
qpid/branches/address-refactor2/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/BBEncoder.java

Modified: 
qpid/branches/address-refactor2/qpid/java/client-api/src/main/java/org/apache/qpid/messaging/Connection.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/address-refactor2/qpid/java/client-api/src/main/java/org/apache/qpid/messaging/Connection.java?rev=1350708&r1=1350707&r2=1350708&view=diff
==============================================================================
--- 
qpid/branches/address-refactor2/qpid/java/client-api/src/main/java/org/apache/qpid/messaging/Connection.java
 (original)
+++ 
qpid/branches/address-refactor2/qpid/java/client-api/src/main/java/org/apache/qpid/messaging/Connection.java
 Fri Jun 15 17:22:29 2012
@@ -44,7 +44,7 @@ public interface Connection
      * @param name Unique identifier for the session.
      * @return Session
      */
-    public Session createSession(String name)throws MessagingException;
+    public Session createSession(String name) throws MessagingException;
 
     /**
      * Creates a transactional session with the given name.
@@ -53,7 +53,7 @@ public interface Connection
      * @param name Unique identifier for the session.
      * @return Session
      */
-    public Session createTransactionalSession(String name)throws 
MessagingException;
+    public Session createTransactionalSession(String name) throws 
MessagingException;
 
     /**
      * Returns the authenticated username for this connection.
@@ -62,5 +62,11 @@ public interface Connection
      * For KERBEROS the username will be the kerberos username.
      * @return The authenticated username.
      */
-    public String getAuthenticatedUsername()throws MessagingException;
+    public String getAuthenticatedUsername() throws MessagingException;
+
+    /**
+     * Returns a reference to the message factory for this connection.
+     * @return MessageFactory
+     */
+    public MessageFactory getMessageFactory();
 }

Modified: 
qpid/branches/address-refactor2/qpid/java/client-api/src/main/java/org/apache/qpid/messaging/util/ConnectionManagementDecorator.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/address-refactor2/qpid/java/client-api/src/main/java/org/apache/qpid/messaging/util/ConnectionManagementDecorator.java?rev=1350708&r1=1350707&r2=1350708&view=diff
==============================================================================
--- 
qpid/branches/address-refactor2/qpid/java/client-api/src/main/java/org/apache/qpid/messaging/util/ConnectionManagementDecorator.java
 (original)
+++ 
qpid/branches/address-refactor2/qpid/java/client-api/src/main/java/org/apache/qpid/messaging/util/ConnectionManagementDecorator.java
 Fri Jun 15 17:22:29 2012
@@ -25,6 +25,7 @@ import java.util.concurrent.atomic.Atomi
 
 import org.apache.qpid.messaging.Connection;
 import org.apache.qpid.messaging.ConnectionException;
+import org.apache.qpid.messaging.MessageFactory;
 import org.apache.qpid.messaging.MessagingException;
 import org.apache.qpid.messaging.Session;
 import org.apache.qpid.messaging.SessionException;
@@ -179,6 +180,12 @@ public class ConnectionManagementDecorat
     }
 
     @Override
+    public MessageFactory getMessageFactory()
+    {
+        return _delegate.getMessageFactory();
+    }
+
+    @Override
     public void addConnectionStateListener(ConnectionStateListener l) throws 
ConnectionException
     {
         checkClosedAndThrowException();

Modified: 
qpid/branches/address-refactor2/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/BBEncoder.java
URL: 
http://svn.apache.org/viewvc/qpid/branches/address-refactor2/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/BBEncoder.java?rev=1350708&r1=1350707&r2=1350708&view=diff
==============================================================================
--- 
qpid/branches/address-refactor2/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/BBEncoder.java
 (original)
+++ 
qpid/branches/address-refactor2/qpid/java/common/src/main/java/org/apache/qpid/transport/codec/BBEncoder.java
 Fri Jun 15 17:22:29 2012
@@ -34,11 +34,12 @@ import java.util.UUID;
  */
 public final class BBEncoder extends AbstractEncoder
 {
+    private static boolean ALLOCATE_DIRECT = 
Boolean.getBoolean("qpid.allocate-direct");
     private ByteBuffer out;
     private int segment;
 
     public BBEncoder(int capacity) {
-        out = ByteBuffer.allocate(capacity);
+        out = ALLOCATE_DIRECT? ByteBuffer.allocateDirect(capacity) : 
ByteBuffer.allocate(capacity);
         out.order(ByteOrder.BIG_ENDIAN);
         segment = 0;
     }



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to