diff options
author | Robert Greig <rgreig@apache.org> | 2006-12-16 09:34:47 +0000 |
---|---|---|
committer | Robert Greig <rgreig@apache.org> | 2006-12-16 09:34:47 +0000 |
commit | 0b7211b3f64fba8ecd60175d01f091f97f0c7f12 (patch) | |
tree | bc20b11fb9659bd8e8d13eb33ef49f8fe8bbe5a9 | |
parent | e218021f74ac0b85d83f3bbd5183ff457037d143 (diff) | |
download | qpid-python-0b7211b3f64fba8ecd60175d01f091f97f0c7f12.tar.gz |
QPID-195 : Fix to JMSObjectMessage so that setObject(null) rteurns the message to it's initial state (_data = null), for which getObject() correctly returns null.
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@487778 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r-- | java/client/src/main/java/org/apache/qpid/client/message/JMSObjectMessage.java | 6 | ||||
-rw-r--r-- | java/client/src/test/java/org/apache/qpid/test/unit/client/message/ObjectMessageTest.java | 6 |
2 files changed, 10 insertions, 2 deletions
diff --git a/java/client/src/main/java/org/apache/qpid/client/message/JMSObjectMessage.java b/java/client/src/main/java/org/apache/qpid/client/message/JMSObjectMessage.java index c9fba083ed..4fb070d2ff 100644 --- a/java/client/src/main/java/org/apache/qpid/client/message/JMSObjectMessage.java +++ b/java/client/src/main/java/org/apache/qpid/client/message/JMSObjectMessage.java @@ -71,8 +71,8 @@ public class JMSObjectMessage extends AbstractJMSMessage implements ObjectMessag { _data.release(); } - _data = ByteBuffer.allocate(DEFAULT_BUFFER_SIZE); - _data.setAutoExpand(true); + _data = null; + } public String toBodyString() throws JMSException @@ -98,6 +98,7 @@ public class JMSObjectMessage extends AbstractJMSMessage implements ObjectMessag { _data.rewind(); } + try { ObjectOutputStream out = new ObjectOutputStream(_data.asOutputStream()); @@ -109,6 +110,7 @@ public class JMSObjectMessage extends AbstractJMSMessage implements ObjectMessag { throw new MessageFormatException("Message not serializable: " + e); } + } public Serializable getObject() throws JMSException diff --git a/java/client/src/test/java/org/apache/qpid/test/unit/client/message/ObjectMessageTest.java b/java/client/src/test/java/org/apache/qpid/test/unit/client/message/ObjectMessageTest.java index 07eedc8bb9..bbd1870168 100644 --- a/java/client/src/test/java/org/apache/qpid/test/unit/client/message/ObjectMessageTest.java +++ b/java/client/src/test/java/org/apache/qpid/test/unit/client/message/ObjectMessageTest.java @@ -167,6 +167,12 @@ public class ObjectMessageTest extends TestCase implements MessageListener } + public void testSetObjectForNull() throws Exception + { + ObjectMessage msg = session.createObjectMessage(); + msg.setObject(null); + assertNull(msg.getObject()); + } private void send() throws Exception |