[jboss-cvs] JBoss Messaging SVN: r7508 - in branches/Branch_1_4: tests/src/org/jboss/test/messaging/jms/message and 1 other directory.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Wed Jul 1 09:39:08 EDT 2009
Author: gaohoward
Date: 2009-07-01 09:39:07 -0400 (Wed, 01 Jul 2009)
New Revision: 7508
Modified:
branches/Branch_1_4/src/main/org/jboss/jms/message/JBossMessage.java
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/SimpleJMSMessage.java
Log:
JBMESSAGING-1617
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-01 05:44:19 UTC (rev 7507)
+++ branches/Branch_1_4/src/main/org/jboss/jms/message/JBossMessage.java 2009-07-01 13:39:07 UTC (rev 7508)
@@ -339,12 +339,29 @@
setJMSTimestamp(foreign.getJMSTimestamp());
- //https://jira.jboss.org/jira/browse/JBMESSAGING-1617
- 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)
+ {
+ //https://jira.jboss.org/jira/browse/JBMESSAGING-1617
+ String corrIDString = foreign.getJMSCorrelationID();
+ if (corrIDString != null)
+ {
+ setJMSCorrelationID(corrIDString);
+ }
+ }
setJMSReplyTo(foreign.getJMSReplyTo());
setJMSDestination(foreign.getJMSDestination());
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-01 05:44:19 UTC (rev 7507)
+++ branches/Branch_1_4/tests/src/org/jboss/test/messaging/jms/message/MessageHeaderTest.java 2009-07-01 13:39:07 UTC (rev 7508)
@@ -873,6 +873,17 @@
assertEquals(foreignMessage.getJMSCorrelationID(), copy.getJMSCorrelationID());
}
+ //https://jira.jboss.org/jira/browse/JBMESSAGING-1617
+ public void testCopyForeignCorrelationIDNoBytesID() throws JMSException
+ {
+ Message foreignMessage = new SimpleJMSMessage(false);
+ foreignMessage.setJMSCorrelationID("ID:test-string-id");
+
+ JBossMessage copy = new JBossMessage(foreignMessage, 0);
+
+ assertEquals(foreignMessage.getJMSCorrelationID(), copy.getJMSCorrelationID());
+ }
+
// Package protected ---------------------------------------------
// Protected -----------------------------------------------------
Modified: branches/Branch_1_4/tests/src/org/jboss/test/messaging/jms/message/SimpleJMSMessage.java
===================================================================
--- branches/Branch_1_4/tests/src/org/jboss/test/messaging/jms/message/SimpleJMSMessage.java 2009-07-01 05:44:19 UTC (rev 7507)
+++ branches/Branch_1_4/tests/src/org/jboss/test/messaging/jms/message/SimpleJMSMessage.java 2009-07-01 13:39:07 UTC (rev 7508)
@@ -69,7 +69,11 @@
this.ignoreSetDestination = true;
this.destination = dest;
}
-
+
+ public SimpleJMSMessage(boolean allowBytesId)
+ {
+ this.supportBytesId = allowBytesId;
+ }
// Message implementation ----------------------------------------
@@ -106,10 +110,15 @@
private byte[] correlationIDBytes;
private String correlationIDString;
private boolean isCorrelationIDBytes;
+ private boolean supportBytesId = true;
public byte[] getJMSCorrelationIDAsBytes() throws JMSException
{
+ if (!supportBytesId)
+ {
+ throw new UnsupportedOperationException("Don't support bytes ID");
+ }
if (!isCorrelationIDBytes)
{
throw new JMSException("CorrelationID is a String for this message");
@@ -119,6 +128,10 @@
public void setJMSCorrelationIDAsBytes(byte[] correlationID) throws JMSException
{
+ if (!supportBytesId)
+ {
+ throw new UnsupportedOperationException("Don't support bytes ID");
+ }
if (correlationID == null || correlationID.length == 0)
{
throw new JMSException("Please specify a non-zero length byte[]");
More information about the jboss-cvs-commits
mailing list