[jboss-cvs] JBoss Messaging SVN: r7541 - in branches/Branch_1_4: src/main/org/jboss/jms/message and 2 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Jul 8 04:24:57 EDT 2009
Author: gaohoward
Date: 2009-07-08 04:24:57 -0400 (Wed, 08 Jul 2009)
New Revision: 7541
Modified:
branches/Branch_1_4/docs/userguide/en/modules/introduction.xml
branches/Branch_1_4/src/main/org/jboss/jms/message/JBossMessage.java
branches/Branch_1_4/src/main/org/jboss/messaging/core/impl/message/MessageSupport.java
branches/Branch_1_4/tests/src/org/jboss/test/messaging/jms/message/MessageHeaderTest.java
Log:
JBMESSAGING-1617
Modified: branches/Branch_1_4/docs/userguide/en/modules/introduction.xml
===================================================================
--- branches/Branch_1_4/docs/userguide/en/modules/introduction.xml 2009-07-08 07:31:23 UTC (rev 7540)
+++ branches/Branch_1_4/docs/userguide/en/modules/introduction.xml 2009-07-08 08:24:57 UTC (rev 7541)
@@ -199,4 +199,17 @@
identical, so they will require some simple adjustments to get them to work with JBoss Messaging. Also, the database data model is completely different, so don't attempt to use JBoss Messaging with a JBoss MQ data schema and vice-versa.
</important></para>
</section>
+
+ <section id="properties">
+ <title>System Properties used by JBoss Messaging</title>
+
+ <section id="properties.supportBytesId">
+ <title>support.bytesId</title>
+
+ <para>This system property controls the default behavior when constructing a JBossMessage object from a foreign message object. If set to true, the JBossMessage constructor
+ will try to extract the native byte[] correlation ID from the foreign message headers. If set to false, it will use the normal string type JMSCorrelationID. If this system property is absent or
+ is given some value other than 'true' and 'false', it will defaults to 'true'.</para>
+ </section>
+ </section>
+
</chapter>
Modified: branches/Branch_1_4/src/main/org/jboss/jms/message/JBossMessage.java
===================================================================
--- branches/Branch_1_4/src/main/org/jboss/jms/message/JBossMessage.java 2009-07-08 07:31:23 UTC (rev 7540)
+++ branches/Branch_1_4/src/main/org/jboss/jms/message/JBossMessage.java 2009-07-08 08:24:57 UTC (rev 7541)
@@ -338,22 +338,25 @@
super(messageID);
setJMSTimestamp(foreign.getJMSTimestamp());
-
- try
+
+ if (supportBytesId)
{
- byte[] corrIDBytes = foreign.getJMSCorrelationIDAsBytes();
- setJMSCorrelationIDAsBytes(corrIDBytes);
- }
- catch(JMSException e)
- {
- // specified as String
- String corrIDString = foreign.getJMSCorrelationID();
- if (corrIDString != null)
+ try
{
- setJMSCorrelationID(corrIDString);
+ byte[] corrIDBytes = foreign.getJMSCorrelationIDAsBytes();
+ setJMSCorrelationIDAsBytes(corrIDBytes);
}
+ catch(JMSException e)
+ {
+ // specified as String
+ String corrIDString = foreign.getJMSCorrelationID();
+ if (corrIDString != null)
+ {
+ setJMSCorrelationID(corrIDString);
+ }
+ }
}
- catch(UnsupportedOperationException e)
+ else
{
//https://jira.jboss.org/jira/browse/JBMESSAGING-1617
String corrIDString = foreign.getJMSCorrelationID();
Modified: branches/Branch_1_4/src/main/org/jboss/messaging/core/impl/message/MessageSupport.java
===================================================================
--- branches/Branch_1_4/src/main/org/jboss/messaging/core/impl/message/MessageSupport.java 2009-07-08 07:31:23 UTC (rev 7540)
+++ branches/Branch_1_4/src/main/org/jboss/messaging/core/impl/message/MessageSupport.java 2009-07-08 08:24:57 UTC (rev 7541)
@@ -54,6 +54,14 @@
// Constants -----------------------------------------------------
private static final Logger log = Logger.getLogger(MessageSupport.class);
+
+ protected static boolean supportBytesId;
+
+ static
+ {
+ String value = System.getProperty("support.bytesId");
+ supportBytesId = !"false".equals(value);
+ }
// Attributes ----------------------------------------------------
@@ -289,6 +297,11 @@
{
this.persisted = persisted;
}
+
+ public static void setSupportBytesId(boolean b)
+ {
+ supportBytesId = b;
+ }
// Public --------------------------------------------------------
Modified: branches/Branch_1_4/tests/src/org/jboss/test/messaging/jms/message/MessageHeaderTest.java
===================================================================
--- branches/Branch_1_4/tests/src/org/jboss/test/messaging/jms/message/MessageHeaderTest.java 2009-07-08 07:31:23 UTC (rev 7540)
+++ branches/Branch_1_4/tests/src/org/jboss/test/messaging/jms/message/MessageHeaderTest.java 2009-07-08 08:24:57 UTC (rev 7541)
@@ -879,9 +879,25 @@
Message foreignMessage = new SimpleJMSMessage(false);
foreignMessage.setJMSCorrelationID("ID:test-string-id");
- JBossMessage copy = new JBossMessage(foreignMessage, 0);
+ JBossMessage copy = null;
+ try
+ {
+ copy = new JBossMessage(foreignMessage, 0);
+ fail("Should throw UnsupportedOperationException");
+ }
+ catch (UnsupportedOperationException e)
+ {
+ //ignore
+ }
+ JBossMessage.setSupportBytesId(false);
+ foreignMessage = new SimpleJMSMessage(false);
+ foreignMessage.setJMSCorrelationID("ID:test-string-id");
+
+ copy = new JBossMessage(foreignMessage, 0);
+
assertEquals(foreignMessage.getJMSCorrelationID(), copy.getJMSCorrelationID());
+ JBossMessage.setSupportBytesId(true);
}
// Package protected ---------------------------------------------
More information about the jboss-cvs-commits
mailing list