You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ta...@apache.org on 2016/10/25 16:24:14 UTC

qpid-jms git commit: QPIDJMS-215 Fix codec causing duplicate type wrapper creation

Repository: qpid-jms
Updated Branches:
  refs/heads/master 7f8d10bf1 -> 89f39f1f7


QPIDJMS-215 Fix codec causing duplicate type wrapper creation

When the message is encoded the codec needs to get the wrapper Message
types only once to avoid created unnecessary garbage. 

Project: http://git-wip-us.apache.org/repos/asf/qpid-jms/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-jms/commit/89f39f1f
Tree: http://git-wip-us.apache.org/repos/asf/qpid-jms/tree/89f39f1f
Diff: http://git-wip-us.apache.org/repos/asf/qpid-jms/diff/89f39f1f

Branch: refs/heads/master
Commit: 89f39f1f7537b9d6dee69be23801f7786033428a
Parents: 7f8d10b
Author: Timothy Bish <ta...@gmail.com>
Authored: Tue Oct 25 12:23:58 2016 -0400
Committer: Timothy Bish <ta...@gmail.com>
Committed: Tue Oct 25 12:23:58 2016 -0400

----------------------------------------------------------------------
 .../jms/provider/amqp/message/AmqpCodec.java    | 36 ++++++++++++--------
 1 file changed, 22 insertions(+), 14 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-jms/blob/89f39f1f/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpCodec.java
----------------------------------------------------------------------
diff --git a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpCodec.java b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpCodec.java
index 5e98d69..85d8d06 100644
--- a/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpCodec.java
+++ b/qpid-jms-client/src/main/java/org/apache/qpid/jms/provider/amqp/message/AmqpCodec.java
@@ -148,26 +148,34 @@ public final class AmqpCodec {
         EncoderImpl encoder = getEncoder();
         encoder.setByteBuffer(buffer);
 
-        if (message.getHeader() != null) {
-            encoder.writeObject(message.getHeader());
+        Header header = message.getHeader();
+        DeliveryAnnotations deliveryAnnotations = message.getDeliveryAnnotations();
+        MessageAnnotations messageAnnotations = message.getMessageAnnotations();
+        Properties properties = message.getProperties();
+        ApplicationProperties applicationProperties = message.getApplicationProperties();
+        Section body = message.getBody();
+        Footer footer = message.getFooter();
+
+        if (header != null) {
+            encoder.writeObject(header);
         }
-        if (message.getDeliveryAnnotations() != null) {
-            encoder.writeObject(message.getDeliveryAnnotations());
+        if (deliveryAnnotations != null) {
+            encoder.writeObject(deliveryAnnotations);
         }
-        if (message.getMessageAnnotations() != null) {
-            encoder.writeObject(message.getMessageAnnotations());
+        if (messageAnnotations != null) {
+            encoder.writeObject(messageAnnotations);
         }
-        if (message.getProperties() != null) {
-            encoder.writeObject(message.getProperties());
+        if (properties != null) {
+            encoder.writeObject(properties);
         }
-        if (message.getApplicationProperties() != null) {
-            encoder.writeObject(message.getApplicationProperties());
+        if (applicationProperties != null) {
+            encoder.writeObject(applicationProperties);
         }
-        if (message.getBody() != null) {
-            encoder.writeObject(message.getBody());
+        if (body != null) {
+            encoder.writeObject(body);
         }
-        if (message.getFooter() != null) {
-            encoder.writeObject(message.getFooter());
+        if (footer != null) {
+            encoder.writeObject(footer);
         }
 
         encoder.setByteBuffer((WritableBuffer) null);


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