diff options
Diffstat (limited to 'java/systests/src/main/java/org/apache/qpid/test/unit/basic/FieldTableMessageTest.java')
-rw-r--r-- | java/systests/src/main/java/org/apache/qpid/test/unit/basic/FieldTableMessageTest.java | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/java/systests/src/main/java/org/apache/qpid/test/unit/basic/FieldTableMessageTest.java b/java/systests/src/main/java/org/apache/qpid/test/unit/basic/FieldTableMessageTest.java index 3af215d1d5..abf8da799c 100644 --- a/java/systests/src/main/java/org/apache/qpid/test/unit/basic/FieldTableMessageTest.java +++ b/java/systests/src/main/java/org/apache/qpid/test/unit/basic/FieldTableMessageTest.java @@ -20,6 +20,8 @@ */ package org.apache.qpid.test.unit.basic; +import org.apache.mina.common.ByteBuffer; + import org.apache.qpid.client.AMQConnection; import org.apache.qpid.client.AMQDestination; import org.apache.qpid.client.AMQQueue; @@ -39,8 +41,6 @@ import javax.jms.Message; import javax.jms.MessageListener; import javax.jms.MessageProducer; -import java.io.ByteArrayInputStream; -import java.io.DataInputStream; import java.io.IOException; import java.util.ArrayList; import java.util.concurrent.CountDownLatch; @@ -105,7 +105,7 @@ public class FieldTableMessageTest extends QpidBrokerTestCase implements Message { int count = _count; _waitForCompletion = new CountDownLatch(_count); - send(count); + send(count); _waitForCompletion.await(20, TimeUnit.SECONDS); check(); _logger.info("Completed without failure"); @@ -125,15 +125,12 @@ public class FieldTableMessageTest extends QpidBrokerTestCase implements Message } - void check() throws JMSException, AMQFrameDecodingException, IOException + void check() throws JMSException, AMQFrameDecodingException { for (Object m : received) { - final BytesMessage bytesMessage = (BytesMessage) m; - final long bodyLength = bytesMessage.getBodyLength(); - byte[] data = new byte[(int) bodyLength]; - bytesMessage.readBytes(data); - FieldTable actual = FieldTableFactory.newFieldTable(new DataInputStream(new ByteArrayInputStream(data)), bodyLength); + ByteBuffer buffer = ((JMSBytesMessage) m).getData(); + FieldTable actual = FieldTableFactory.newFieldTable(buffer, buffer.remaining()); for (String key : _expected.keys()) { assertEquals("Values for " + key + " did not match", _expected.getObject(key), actual.getObject(key)); |