[jboss-cvs] JBoss Messaging SVN: r3759 - in trunk: src/main/org/jboss/jms/server/bridge and 2 other directories.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Thu Feb 21 12:22:42 EST 2008


Author: timfox
Date: 2008-02-21 12:22:42 -0500 (Thu, 21 Feb 2008)
New Revision: 3759

Modified:
   trunk/src/main/org/jboss/jms/message/JBossMessage.java
   trunk/src/main/org/jboss/jms/server/bridge/Bridge.java
   trunk/tests/src/org/jboss/test/messaging/jms/bridge/BridgeTest.java
   trunk/tests/src/org/jboss/test/messaging/jms/message/MessageHeaderTestBase.java
Log:
http://jira.jboss.org/jira/browse/JBMESSAGING-1224


Modified: trunk/src/main/org/jboss/jms/message/JBossMessage.java
===================================================================
--- trunk/src/main/org/jboss/jms/message/JBossMessage.java	2008-02-21 16:37:22 UTC (rev 3758)
+++ trunk/src/main/org/jboss/jms/message/JBossMessage.java	2008-02-21 17:22:42 UTC (rev 3759)
@@ -879,21 +879,8 @@
          if (name.length() > 3)
          {
             char c = name.charAt(3);
-            if (c == 'X')
+            if (c != 'X' && c != '_')
             {
-               if (!name.equals("JMSXGroupID") &&
-                   !name.equals("JMSXGroupSeq") &&
-                   !name.equals("JMSXDeliveryCount"))
-               {
-                  throw new JMSException("Can only set JMSXGroupId, JMSXGroupSeq, JMSXDeliveryCount");
-               }    
-            }
-            else if (c == '_')
-            {
-               //OK 
-            }
-            else
-            {
                //See http://java.sun.com/javaee/5/docs/api/
                //(java.jms.Message javadoc)
                //"Property names must obey the rules for a message selector identifier"

Modified: trunk/src/main/org/jboss/jms/server/bridge/Bridge.java
===================================================================
--- trunk/src/main/org/jboss/jms/server/bridge/Bridge.java	2008-02-21 16:37:22 UTC (rev 3758)
+++ trunk/src/main/org/jboss/jms/server/bridge/Bridge.java	2008-02-21 17:22:42 UTC (rev 3759)
@@ -1405,16 +1405,7 @@
 
    			String propName = (String)entry.getKey();
 
-   			//It's illegal (or pointless) to set properties beginning with JMSX
-   			//apart from JMSXGroupID, JMSXGroupSeq and JMSXDeliveryCount
-   			//Also there's no point in setting JMSXDeliveryCount since it will get reset
-   			//before the msg is received anyway
-   			if (!propName.startsWith("JMSX") ||
-   					propName.equals("JMSXGroupID") ||
-   					propName.equals("JMSXGroupSeq"));
-   			{
-   				msg.setObjectProperty(propName, entry.getValue());
-   			}
+   			msg.setObjectProperty(propName, entry.getValue());   			
    		}
    	}
 

Modified: trunk/tests/src/org/jboss/test/messaging/jms/bridge/BridgeTest.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/jms/bridge/BridgeTest.java	2008-02-21 16:37:22 UTC (rev 3758)
+++ trunk/tests/src/org/jboss/test/messaging/jms/bridge/BridgeTest.java	2008-02-21 17:22:42 UTC (rev 3759)
@@ -997,8 +997,51 @@
                   
          m = cons.receive(5000);
          
-         assertNull(m);                          
+         assertNull(m);            
          
+         tm = sessSource.createTextMessage("blahmessage3");
+
+         final boolean myBool = false;
+         final byte myByte = (byte)23;
+         final double myDouble = 17625765d;
+         final float myFloat = 87127.23f;
+         final int myInt = 123;
+         final long myLong = 81728712;
+         final short myShort = (short)88;
+         final String myString = "ojweodewj";
+         final String myJMSX = "aardvark";
+
+         tm.setBooleanProperty("mybool", myBool);
+         tm.setByteProperty("mybyte", myByte);
+         tm.setDoubleProperty("mydouble", myDouble);
+         tm.setFloatProperty("myfloat", myFloat);
+         tm.setIntProperty("myint", myInt);
+         tm.setLongProperty("mylong", myLong);
+         tm.setShortProperty("myshort", myShort);
+         tm.setStringProperty("mystring", myString);
+
+         tm.setStringProperty("JMSXMyNaughtyJMSXProperty", myJMSX);
+
+         prod.send(tm);
+
+         tm = (TextMessage)cons.receive(1000);
+
+         assertNotNull(tm);
+
+         assertEquals("blahmessage3", tm.getText());
+
+         assertEquals(myBool, tm.getBooleanProperty("mybool"));
+         assertEquals(myByte, tm.getByteProperty("mybyte"));
+         assertEquals(myDouble, tm.getDoubleProperty("mydouble"));
+         assertEquals(myFloat, tm.getFloatProperty("myfloat"));
+         assertEquals(myInt, tm.getIntProperty("myint"));
+         assertEquals(myLong, tm.getLongProperty("mylong"));
+         assertEquals(myShort, tm.getShortProperty("myshort"));
+         assertEquals(myString, tm.getStringProperty("mystring"));
+         assertEquals(myJMSX, tm.getStringProperty("JMSXMyNaughtyJMSXProperty"));
+
+         m = cons.receive(5000);
+         
       }
       finally
       {                        

Modified: trunk/tests/src/org/jboss/test/messaging/jms/message/MessageHeaderTestBase.java
===================================================================
--- trunk/tests/src/org/jboss/test/messaging/jms/message/MessageHeaderTestBase.java	2008-02-21 16:37:22 UTC (rev 3758)
+++ trunk/tests/src/org/jboss/test/messaging/jms/message/MessageHeaderTestBase.java	2008-02-21 17:22:42 UTC (rev 3759)
@@ -82,6 +82,7 @@
       m.setFloatProperty("floatProperty", 6);
       m.setDoubleProperty("doubleProperty", 7);
       m.setStringProperty("stringPoperty", "someString");
+      m.setStringProperty("JMSXNaughtyProperty", "aardvark");
    }
 
    /**




More information about the jboss-cvs-commits mailing list