You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ro...@apache.org on 2014/07/02 14:17:43 UTC

svn commit: r1607336 - in /qpid/proton/trunk: contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/ proton-j/src/main/java/org/apache/qpid/proton/amqp/messaging/

Author: robbie
Date: Wed Jul  2 12:17:43 2014
New Revision: 1607336

URL: http://svn.apache.org/r1607336
Log:
PROTON-616: restrict keys for MessageAnnotations to be Symbols, update the transformers in contrib/proton-jms accordingly

Applied patch from Dejan Bosanac

Modified:
    qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/InboundTransformer.java
    qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/JMSMappingOutboundTransformer.java
    qpid/proton/trunk/proton-j/src/main/java/org/apache/qpid/proton/amqp/messaging/MessageAnnotations.java

Modified: qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/InboundTransformer.java
URL: http://svn.apache.org/viewvc/qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/InboundTransformer.java?rev=1607336&r1=1607335&r2=1607336&view=diff
==============================================================================
--- qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/InboundTransformer.java (original)
+++ qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/InboundTransformer.java Wed Jul  2 12:17:43 2014
@@ -140,13 +140,13 @@ public abstract class InboundTransformer
 
         final MessageAnnotations ma = amqp.getMessageAnnotations();
         if( ma!=null ) {
-            for (Map.Entry entry : (Set<Map.Entry>)ma.getValue().entrySet()) {
+            for (Map.Entry entry : (Set<Map.Entry<Symbol,Object>>)ma.getValue().entrySet()) {
                 String key = entry.getKey().toString();
-                if( "x-opt-jms-type".equals(key) ) {
+                if( "x-opt-jms-type".equals(key.toString()) ) {
                     jms.setJMSType(entry.getValue().toString());
-                } else if( "x-opt-to-type".equals(key) ) {
+                } else if( "x-opt-to-type".equals(key.toString()) ) {
                     toAttributes = toClassFromAttributes(entry.getValue().toString());
-                } else if( "x-opt-reply-type".equals(key) ) {
+                } else if( "x-opt-reply-type".equals(key.toString()) ) {
                     replyToAttributes = toClassFromAttributes(entry.getValue().toString());
                 } else {
                     setProperty(jms, prefixVendor + prefixMessageAnnotations + key, entry.getValue());

Modified: qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/JMSMappingOutboundTransformer.java
URL: http://svn.apache.org/viewvc/qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/JMSMappingOutboundTransformer.java?rev=1607336&r1=1607335&r2=1607336&view=diff
==============================================================================
--- qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/JMSMappingOutboundTransformer.java (original)
+++ qpid/proton/trunk/contrib/proton-jms/src/main/java/org/apache/qpid/proton/jms/JMSMappingOutboundTransformer.java Wed Jul  2 12:17:43 2014
@@ -86,7 +86,7 @@ public class JMSMappingOutboundTransform
         Header header = new Header();
         Properties props=new Properties();
         HashMap daMap = null;
-        HashMap maMap = null;
+        HashMap<Symbol, Object> maMap = null;
         HashMap apMap = null;
         Section body=null;
         HashMap footerMap = null;
@@ -125,8 +125,8 @@ public class JMSMappingOutboundTransform
             header.setTtl(new UnsignedInteger((int) msg.getJMSExpiration()));
         }
         if( msg.getJMSType()!=null ) {
-            if( maMap==null ) maMap = new HashMap();
-            maMap.put("x-opt-jms-type", msg.getJMSType());
+            if( maMap==null ) maMap = new HashMap<Symbol, Object>();
+            maMap.put(Symbol.valueOf("x-opt-jms-type"), msg.getJMSType());
         }
         if( msg.getJMSMessageID()!=null ) {
             props.setMessageId(msg.getJMSMessageID());
@@ -134,12 +134,12 @@ public class JMSMappingOutboundTransform
         if( msg.getJMSDestination()!=null ) {
             props.setTo(vendor.toAddress(msg.getJMSDestination()));
             if( maMap==null ) maMap = new HashMap();
-            maMap.put("x-opt-to-type", destinationAttributes(msg.getJMSDestination()));
+            maMap.put(Symbol.valueOf("x-opt-to-type"), destinationAttributes(msg.getJMSDestination()));
         }
         if( msg.getJMSReplyTo()!=null ) {
             props.setReplyTo(vendor.toAddress(msg.getJMSReplyTo()));
             if( maMap==null ) maMap = new HashMap();
-            maMap.put("x-opt-reply-type", destinationAttributes(msg.getJMSReplyTo()));
+            maMap.put(Symbol.valueOf("x-opt-reply-type"), destinationAttributes(msg.getJMSReplyTo()));
         }
         if( msg.getJMSCorrelationID()!=null ) {
             props.setCorrelationId(msg.getJMSCorrelationID());
@@ -180,7 +180,7 @@ public class JMSMappingOutboundTransform
             } else if( key.startsWith(prefixMessageAnnotationsKey) ) {
                 if( maMap==null ) maMap = new HashMap();
                 String name = key.substring(prefixMessageAnnotationsKey.length());
-                maMap.put(name, msg.getObjectProperty(key));
+                maMap.put(Symbol.valueOf(name), msg.getObjectProperty(key));
             } else if( key.equals(subjectKey) ) {
                 props.setSubject(msg.getStringProperty(key));
             } else if( key.equals(contentTypeKey) ) {

Modified: qpid/proton/trunk/proton-j/src/main/java/org/apache/qpid/proton/amqp/messaging/MessageAnnotations.java
URL: http://svn.apache.org/viewvc/qpid/proton/trunk/proton-j/src/main/java/org/apache/qpid/proton/amqp/messaging/MessageAnnotations.java?rev=1607336&r1=1607335&r2=1607336&view=diff
==============================================================================
--- qpid/proton/trunk/proton-j/src/main/java/org/apache/qpid/proton/amqp/messaging/MessageAnnotations.java (original)
+++ qpid/proton/trunk/proton-j/src/main/java/org/apache/qpid/proton/amqp/messaging/MessageAnnotations.java Wed Jul  2 12:17:43 2014
@@ -23,20 +23,22 @@
 
 package org.apache.qpid.proton.amqp.messaging;
 
+import org.apache.qpid.proton.amqp.Symbol;
+
 import java.util.Map;
 
 
 public final class MessageAnnotations implements Section
 {
 
-    private final Map _value;
+    private final Map<Symbol, Object> _value;
 
-    public MessageAnnotations(Map value)
+    public MessageAnnotations(Map<Symbol, Object> value)
     {
         _value = value;
     }
 
-    public Map getValue()
+    public Map<Symbol, Object> getValue()
     {
         return _value;
     }



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