Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicNackBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicNackBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicNackBody.java 
(original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicNackBody.java 
Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicNackBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -43,13 +40,6 @@ public class BasicNackBody extends AMQMe
     private final long _deliveryTag; // [deliveryTag]
     private final byte _bitfield0; // [multiple]
 
-    // Constructor
-    public BasicNackBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _deliveryTag = buffer.readLong();
-        _bitfield0 = buffer.readByte();
-    }
-
     public BasicNackBody(
             long deliveryTag,
             boolean multiple,
@@ -127,12 +117,12 @@ public class BasicNackBody extends AMQMe
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer,
-                               final ChannelMethodProcessor dispatcher) throws 
IOException
+    public static void process(final QpidByteBuffer buffer,
+                               final ChannelMethodProcessor dispatcher)
     {
 
-        long deliveryTag = buffer.readLong();
-        byte bitfield = buffer.readByte();
+        long deliveryTag = buffer.getLong();
+        byte bitfield = buffer.get();
         boolean multiple = (bitfield & 0x01) != 0;
         boolean requeue = (bitfield & 0x02) != 0;
         if(!dispatcher.ignoreAllButCloseOk())

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicPublishBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicPublishBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicPublishBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicPublishBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicPublishBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -45,15 +42,6 @@ public class BasicPublishBody extends AM
     private final AMQShortString _routingKey; // [routingKey]
     private final byte _bitfield0; // [mandatory, immediate]
 
-    // Constructor
-    public BasicPublishBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _ticket = buffer.readUnsignedShort();
-        _exchange = buffer.readAMQShortString();
-        _routingKey = buffer.readAMQShortString();
-        _bitfield0 = buffer.readByte();
-    }
-
     public BasicPublishBody(
             int ticket,
             AMQShortString exchange,
@@ -151,14 +139,14 @@ public class BasicPublishBody extends AM
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer,
-                               final ServerChannelMethodProcessor dispatcher) 
throws IOException
+    public static void process(final QpidByteBuffer buffer,
+                               final ServerChannelMethodProcessor dispatcher)
     {
 
-        int ticket = buffer.readUnsignedShort();
-        AMQShortString exchange = buffer.readAMQShortString();
-        AMQShortString routingKey = buffer.readAMQShortString();
-        byte bitfield = buffer.readByte();
+        int ticket = buffer.getUnsignedShort();
+        AMQShortString exchange = AMQShortString.readAMQShortString(buffer);
+        AMQShortString routingKey = AMQShortString.readAMQShortString(buffer);
+        byte bitfield = buffer.get();
 
         boolean mandatory = (bitfield & 0x01) != 0;
         boolean immediate = (bitfield & 0x02) != 0;

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicQosBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicQosBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicQosBody.java 
(original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicQosBody.java 
Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicQosBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -44,14 +41,6 @@ public class BasicQosBody extends AMQMet
     private final int _prefetchCount; // [prefetchCount]
     private final byte _bitfield0; // [global]
 
-    // Constructor
-    public BasicQosBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _prefetchSize = EncodingUtils.readUnsignedInteger(buffer);
-        _prefetchCount = buffer.readUnsignedShort();
-        _bitfield0 = buffer.readByte();
-    }
-
     public BasicQosBody(
             long prefetchSize,
             int prefetchCount,
@@ -124,13 +113,13 @@ public class BasicQosBody extends AMQMet
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer,
-                               final ServerChannelMethodProcessor dispatcher) 
throws IOException
+    public static void process(final QpidByteBuffer buffer,
+                               final ServerChannelMethodProcessor dispatcher)
     {
 
-        long prefetchSize = EncodingUtils.readUnsignedInteger(buffer);
-        int prefetchCount = buffer.readUnsignedShort();
-        boolean global = (buffer.readByte() & 0x01) == 0x01;
+        long prefetchSize = buffer.getUnsignedInt();
+        int prefetchCount = buffer.getUnsignedShort();
+        boolean global = (buffer.get() & 0x01) == 0x01;
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveBasicQos(prefetchSize, prefetchCount, global);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicQosOkBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicQosOkBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicQosOkBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicQosOkBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicQosOkBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -41,11 +38,6 @@ public class BasicQosOkBody extends AMQM
 
     // Fields declared in specification
 
-    // Constructor
-    public BasicQosOkBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-    }
-
     public BasicQosOkBody(
                          )
     {

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRecoverBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRecoverBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRecoverBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRecoverBody.java
 Wed Jan  6 16:16:11 2016
@@ -31,7 +31,6 @@ import java.io.IOException;
 
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicRecoverBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -42,12 +41,6 @@ public class BasicRecoverBody extends AM
     // Fields declared in specification
     private final byte _bitfield0; // [requeue]
 
-    // Constructor
-    public BasicRecoverBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _bitfield0 = buffer.readByte();
-    }
-
     public BasicRecoverBody(
             boolean requeue
                            )
@@ -100,11 +93,11 @@ public class BasicRecoverBody extends AM
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput in,
+    public static void process(final QpidByteBuffer in,
                                final ProtocolVersion protocolVersion,
-                               final ServerChannelMethodProcessor dispatcher) 
throws IOException
+                               final ServerChannelMethodProcessor dispatcher)
     {
-        boolean requeue = (in.readByte() & 0x01) == 0x01;
+        boolean requeue = (in.get() & 0x01) == 0x01;
         boolean sync = (ProtocolVersion.v0_8.equals(protocolVersion));
 
         if(!dispatcher.ignoreAllButCloseOk())

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRecoverSyncBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRecoverSyncBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRecoverSyncBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRecoverSyncBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicRecoverSyncBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -42,13 +39,6 @@ public class BasicRecoverSyncBody extend
     // Fields declared in specification
     private final byte _bitfield0; // [requeue]
 
-    // Constructor
-    public BasicRecoverSyncBody(MarkableDataInput buffer, ProtocolVersion 
protocolVersion) throws AMQFrameDecodingException, IOException
-    {
-        _methodId = ProtocolVersion.v0_9.equals(protocolVersion) ? 102 : 110;
-        _bitfield0 = buffer.readByte();
-    }
-
     public BasicRecoverSyncBody(ProtocolVersion protocolVersion,
                                 boolean requeue
                                )
@@ -103,10 +93,10 @@ public class BasicRecoverSyncBody extend
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput in,
-                               final ServerChannelMethodProcessor dispatcher) 
throws IOException
+    public static void process(final QpidByteBuffer in,
+                               final ServerChannelMethodProcessor dispatcher)
     {
-        boolean requeue = (in.readByte() & 0x01) == 0x01;
+        boolean requeue = (in.get() & 0x01) == 0x01;
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveBasicRecover(requeue, true);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRejectBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRejectBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRejectBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRejectBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicRejectBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -43,13 +40,6 @@ public class BasicRejectBody extends AMQ
     private final long _deliveryTag; // [deliveryTag]
     private final byte _bitfield0; // [requeue]
 
-    // Constructor
-    public BasicRejectBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _deliveryTag = buffer.readLong();
-        _bitfield0 = buffer.readByte();
-    }
-
     public BasicRejectBody(
             long deliveryTag,
             boolean requeue
@@ -112,12 +102,12 @@ public class BasicRejectBody extends AMQ
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer,
-                               final ServerChannelMethodProcessor dispatcher) 
throws IOException
+    public static void process(final QpidByteBuffer buffer,
+                               final ServerChannelMethodProcessor dispatcher)
     {
 
-        long deliveryTag = buffer.readLong();
-        boolean requeue = (buffer.readByte() & 0x01) != 0;
+        long deliveryTag = buffer.getLong();
+        boolean requeue = (buffer.get() & 0x01) != 0;
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveBasicReject(deliveryTag, requeue);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicReturnBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicReturnBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicReturnBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicReturnBody.java
 Wed Jan  6 16:16:11 2016
@@ -31,7 +31,6 @@ import java.io.IOException;
 
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicReturnBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -45,15 +44,6 @@ public class BasicReturnBody extends AMQ
     private final AMQShortString _exchange; // [exchange]
     private final AMQShortString _routingKey; // [routingKey]
 
-    // Constructor
-    public BasicReturnBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _replyCode = buffer.readUnsignedShort();
-        _replyText = buffer.readAMQShortString();
-        _exchange = buffer.readAMQShortString();
-        _routingKey = buffer.readAMQShortString();
-    }
-
     public BasicReturnBody(
             int replyCode,
             AMQShortString replyText,
@@ -134,14 +124,14 @@ public class BasicReturnBody extends AMQ
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer,
-                               final ClientChannelMethodProcessor dispatcher) 
throws IOException
+    public static void process(final QpidByteBuffer buffer,
+                               final ClientChannelMethodProcessor dispatcher)
     {
 
-        int replyCode = buffer.readUnsignedShort();
-        AMQShortString replyText = buffer.readAMQShortString();
-        AMQShortString exchange = buffer.readAMQShortString();
-        AMQShortString routingKey = buffer.readAMQShortString();
+        int replyCode = buffer.getUnsignedShort();
+        AMQShortString replyText = AMQShortString.readAMQShortString(buffer);
+        AMQShortString exchange = AMQShortString.readAMQShortString(buffer);
+        AMQShortString routingKey = AMQShortString.readAMQShortString(buffer);
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveBasicReturn(replyCode, replyText, exchange, 
routingKey);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelAlertBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelAlertBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelAlertBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelAlertBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ChannelAlertBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -44,14 +41,6 @@ public class ChannelAlertBody extends AM
     private final AMQShortString _replyText; // [replyText]
     private final FieldTable _details; // [details]
 
-    // Constructor
-    public ChannelAlertBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _replyCode = buffer.readUnsignedShort();
-        _replyText = buffer.readAMQShortString();
-        _details = EncodingUtils.readFieldTable(buffer);
-    }
-
     public ChannelAlertBody(
             int replyCode,
             AMQShortString replyText,
@@ -121,13 +110,13 @@ public class ChannelAlertBody extends AM
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer,
+    public static void process(final QpidByteBuffer buffer,
                                final ClientChannelMethodProcessor dispatcher)
-            throws IOException, AMQFrameDecodingException
+            throws AMQFrameDecodingException
     {
 
-        int replyCode = buffer.readUnsignedShort();
-        AMQShortString replyText = buffer.readAMQShortString();
+        int replyCode = buffer.getUnsignedShort();
+        AMQShortString replyText = AMQShortString.readAMQShortString(buffer);
         FieldTable details = EncodingUtils.readFieldTable(buffer);
         if(!dispatcher.ignoreAllButCloseOk())
         {

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelCloseBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelCloseBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelCloseBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelCloseBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ChannelCloseBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -45,15 +42,6 @@ public class ChannelCloseBody extends AM
     private final int _classId; // [classId]
     private final int _methodId; // [methodId]
 
-    // Constructor
-    public ChannelCloseBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _replyCode = buffer.readUnsignedShort();
-        _replyText = buffer.readAMQShortString();
-        _classId = buffer.readUnsignedShort();
-        _methodId = buffer.readUnsignedShort();
-    }
-
     public ChannelCloseBody(
             int replyCode,
             AMQShortString replyText,
@@ -132,14 +120,14 @@ public class ChannelCloseBody extends AM
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer,
-                               final ChannelMethodProcessor dispatcher) throws 
IOException
+    public static void process(final QpidByteBuffer buffer,
+                               final ChannelMethodProcessor dispatcher)
     {
 
-        int replyCode = buffer.readUnsignedShort();
-        AMQShortString replyText = buffer.readAMQShortString();
-        int classId = buffer.readUnsignedShort();
-        int methodId = buffer.readUnsignedShort();
+        int replyCode = buffer.getUnsignedShort();
+        AMQShortString replyText = AMQShortString.readAMQShortString(buffer);
+        int classId = buffer.getUnsignedShort();
+        int methodId = buffer.getUnsignedShort();
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveChannelClose(replyCode, replyText, classId, 
methodId);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelCloseOkBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelCloseOkBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelCloseOkBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelCloseOkBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ChannelCloseOkBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -42,11 +39,6 @@ public class ChannelCloseOkBody extends
 
     // Fields declared in specification
 
-    // Constructor
-    public ChannelCloseOkBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-    }
-
     private ChannelCloseOkBody()
     {
     }

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelFlowBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelFlowBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelFlowBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelFlowBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ChannelFlowBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -42,12 +39,6 @@ public class ChannelFlowBody extends AMQ
     // Fields declared in specification
     private final boolean _active; // [active]
 
-    // Constructor
-    public ChannelFlowBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _active = (buffer.readByte() & 0x01) == 0x01;
-    }
-
     public ChannelFlowBody(boolean active)
     {
         _active = active;
@@ -92,10 +83,10 @@ public class ChannelFlowBody extends AMQ
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer,
-                               final ChannelMethodProcessor dispatcher) throws 
IOException
+    public static void process(final QpidByteBuffer buffer,
+                               final ChannelMethodProcessor dispatcher)
     {
-        boolean active = (buffer.readByte() & 0x01) == 0x01;
+        boolean active = (buffer.get() & 0x01) == 0x01;
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveChannelFlow(active);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelFlowOkBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelFlowOkBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelFlowOkBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelFlowOkBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ChannelFlowOkBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -42,12 +39,6 @@ public class ChannelFlowOkBody extends A
     // Fields declared in specification
     private final boolean _active; // [active]
 
-    // Constructor
-    public ChannelFlowOkBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _active = (buffer.readByte() & 0x01) == 0x01;
-    }
-
     public ChannelFlowOkBody(boolean active)
     {
         _active = active;
@@ -93,11 +84,10 @@ public class ChannelFlowOkBody extends A
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer,
+    public static void process(final QpidByteBuffer buffer,
                                final ChannelMethodProcessor dispatcher)
-            throws IOException
     {
-        boolean active = (buffer.readByte() & 0x01) == 0x01;
+        boolean active = (buffer.get() & 0x01) == 0x01;
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveChannelFlowOk(active);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelOpenBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelOpenBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelOpenBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelOpenBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ChannelOpenBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -40,13 +37,6 @@ public class ChannelOpenBody extends AMQ
     public static final int METHOD_ID = 10;
 
 
-    // Constructor
-    public ChannelOpenBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        // ignore unused OOB string
-        buffer.readAMQShortString();
-    }
-
     public ChannelOpenBody()
     {
 
@@ -83,10 +73,10 @@ public class ChannelOpenBody extends AMQ
     }
 
     public static void process(final int channelId,
-                                final MarkableDataInput buffer,
-                                final ServerMethodProcessor dispatcher) throws 
IOException
+                                final QpidByteBuffer buffer,
+                                final ServerMethodProcessor dispatcher)
     {
-        buffer.readAMQShortString();
+        AMQShortString.readAMQShortString(buffer);
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveChannelOpen(channelId);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelOpenOkBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelOpenOkBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelOpenOkBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ChannelOpenOkBody.java
 Wed Jan  6 16:16:11 2016
@@ -31,7 +31,6 @@ import java.io.IOException;
 
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ChannelOpenOkBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -42,7 +41,7 @@ public class ChannelOpenOkBody extends A
     public static final ChannelOpenOkBody INSTANCE_0_8 = new 
ChannelOpenOkBody(true);
     public static final ChannelOpenOkBody INSTANCE_0_9 = new 
ChannelOpenOkBody(false);
 
-    public static ChannelOpenOkBody getInstance(ProtocolVersion 
protocolVersion, MarkableDataInput input)
+    public static ChannelOpenOkBody getInstance(ProtocolVersion 
protocolVersion, QpidByteBuffer input)
             throws IOException
     {
         final boolean isAMQP08 = ProtocolVersion.v0_8.equals(protocolVersion);
@@ -96,9 +95,9 @@ public class ChannelOpenOkBody extends A
         return "[ChannelOpenOkBody]";
     }
 
-    public static void process(final MarkableDataInput in,
+    public static void process(final QpidByteBuffer in,
                                final ProtocolVersion protocolVersion,
-                               final ClientChannelMethodProcessor dispatcher) 
throws IOException
+                               final ClientChannelMethodProcessor dispatcher)
     {
         if(!ProtocolVersion.v0_8.equals(protocolVersion))
         {

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConfirmSelectBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConfirmSelectBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConfirmSelectBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConfirmSelectBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ConfirmSelectBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -42,12 +39,6 @@ public class ConfirmSelectBody extends A
     // Fields declared in specification
     private final boolean _nowait; // [active]
 
-    // Constructor
-    public ConfirmSelectBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _nowait = (buffer.readByte() & 0x01) == 0x01;
-    }
-
     public ConfirmSelectBody(boolean nowait)
     {
         _nowait = nowait;
@@ -92,11 +83,10 @@ public class ConfirmSelectBody extends A
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer,
+    public static void process(final QpidByteBuffer buffer,
                                final ServerChannelMethodProcessor dispatcher)
-            throws IOException
     {
-        boolean nowait = (buffer.readByte() & 0x01) == 0x01;
+        boolean nowait = (buffer.get() & 0x01) == 0x01;
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveConfirmSelect(nowait);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionCloseBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionCloseBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionCloseBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionCloseBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ConnectionCloseBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -45,16 +42,6 @@ public class ConnectionCloseBody extends
     private final int _classId; // [classId]
     private final int _methodId; // [methodId]
 
-    // Constructor
-    public ConnectionCloseBody(MarkableDataInput buffer, ProtocolVersion 
protocolVersion) throws AMQFrameDecodingException, IOException
-    {
-        _ownMethodId = ProtocolVersion.v0_8.equals(protocolVersion) ? 60 : 50;
-        _replyCode = buffer.readUnsignedShort();
-        _replyText = buffer.readAMQShortString();
-        _classId = buffer.readUnsignedShort();
-        _methodId = buffer.readUnsignedShort();
-    }
-
     public ConnectionCloseBody(ProtocolVersion protocolVersion,
                                int replyCode,
                                AMQShortString replyText,
@@ -134,12 +121,12 @@ public class ConnectionCloseBody extends
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer, final 
MethodProcessor dispatcher) throws IOException
+    public static void process(final QpidByteBuffer buffer, final 
MethodProcessor dispatcher)
     {
-        int replyCode = buffer.readUnsignedShort();
-        AMQShortString replyText = buffer.readAMQShortString();
-        int classId = buffer.readUnsignedShort();
-        int methodId = buffer.readUnsignedShort();
+        int replyCode = buffer.getUnsignedShort();
+        AMQShortString replyText = AMQShortString.readAMQShortString(buffer);
+        int classId = buffer.getUnsignedShort();
+        int methodId = buffer.getUnsignedShort();
         dispatcher.receiveConnectionClose(replyCode, replyText, classId, 
methodId);
     }
 }

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionOpenBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionOpenBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionOpenBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionOpenBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ConnectionOpenBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -44,14 +41,6 @@ public class ConnectionOpenBody extends
     private final AMQShortString _capabilities; // [capabilities]
     private final boolean _insist; // [insist]
 
-    // Constructor
-    public ConnectionOpenBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _virtualHost = buffer.readAMQShortString();
-        _capabilities = buffer.readAMQShortString();
-        _insist = (buffer.readByte() & 0x01) == 0x01;
-    }
-
     public ConnectionOpenBody(
             AMQShortString virtualHost,
             AMQShortString capabilities,
@@ -121,12 +110,12 @@ public class ConnectionOpenBody extends
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer, final 
ServerMethodProcessor dispatcher) throws IOException
+    public static void process(final QpidByteBuffer buffer, final 
ServerMethodProcessor dispatcher)
     {
 
-        AMQShortString virtualHost = buffer.readAMQShortString();
-        AMQShortString capabilities = buffer.readAMQShortString();
-        boolean insist = (buffer.readByte() & 0x01) == 0x01;
+        AMQShortString virtualHost = AMQShortString.readAMQShortString(buffer);
+        AMQShortString capabilities = 
AMQShortString.readAMQShortString(buffer);
+        boolean insist = (buffer.get() & 0x01) == 0x01;
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveConnectionOpen(virtualHost, capabilities, 
insist);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionOpenOkBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionOpenOkBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionOpenOkBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionOpenOkBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ConnectionOpenOkBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -42,11 +39,6 @@ public class ConnectionOpenOkBody extend
     // Fields declared in specification
     private final AMQShortString _knownHosts; // [knownHosts]
 
-    // Constructor
-    public ConnectionOpenOkBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _knownHosts = buffer.readAMQShortString();
-    }
 
     public ConnectionOpenOkBody(
             AMQShortString knownHosts
@@ -96,9 +88,9 @@ public class ConnectionOpenOkBody extend
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer, final 
ClientMethodProcessor dispatcher) throws IOException
+    public static void process(final QpidByteBuffer buffer, final 
ClientMethodProcessor dispatcher)
     {
-        AMQShortString knownHosts = buffer.readAMQShortString();
+        AMQShortString knownHosts = AMQShortString.readAMQShortString(buffer);
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveConnectionOpenOk(knownHosts);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionRedirectBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionRedirectBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionRedirectBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionRedirectBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ConnectionRedirectBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -43,13 +40,6 @@ public class ConnectionRedirectBody exte
     private final AMQShortString _host; // [host]
     private final AMQShortString _knownHosts; // [knownHosts]
 
-    // Constructor
-    public ConnectionRedirectBody(MarkableDataInput buffer, ProtocolVersion 
protocolVersion) throws AMQFrameDecodingException, IOException
-    {
-        _ownMethodId = ProtocolVersion.v0_8.equals(protocolVersion) ? 50 : 42;
-        _host = buffer.readAMQShortString();
-        _knownHosts = buffer.readAMQShortString();
-    }
 
     public ConnectionRedirectBody(ProtocolVersion protocolVersion, 
AMQShortString host, AMQShortString knownHosts)
     {
@@ -108,10 +98,10 @@ public class ConnectionRedirectBody exte
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer, final 
ClientMethodProcessor dispatcher) throws IOException
+    public static void process(final QpidByteBuffer buffer, final 
ClientMethodProcessor dispatcher)
     {
-        AMQShortString host = buffer.readAMQShortString();
-        AMQShortString knownHosts = buffer.readAMQShortString();
+        AMQShortString host = AMQShortString.readAMQShortString(buffer);
+        AMQShortString knownHosts = AMQShortString.readAMQShortString(buffer);
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveConnectionRedirect(host, knownHosts);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionSecureBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionSecureBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionSecureBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionSecureBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ConnectionSecureBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -42,11 +39,6 @@ public class ConnectionSecureBody extend
     // Fields declared in specification
     private final byte[] _challenge; // [challenge]
 
-    // Constructor
-    public ConnectionSecureBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _challenge = EncodingUtils.readBytes(buffer);
-    }
 
     public ConnectionSecureBody(
             byte[] challenge
@@ -96,8 +88,8 @@ public class ConnectionSecureBody extend
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput in, final 
ClientMethodProcessor dispatcher)
-            throws IOException, AMQFrameDecodingException
+    public static void process(final QpidByteBuffer in, final 
ClientMethodProcessor dispatcher)
+            throws AMQFrameDecodingException
 
     {
         byte[] challenge = EncodingUtils.readBytes(in);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionSecureOkBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionSecureOkBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionSecureOkBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionSecureOkBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ConnectionSecureOkBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -42,12 +39,6 @@ public class ConnectionSecureOkBody exte
     // Fields declared in specification
     private final byte[] _response; // [response]
 
-    // Constructor
-    public ConnectionSecureOkBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _response = EncodingUtils.readBytes(buffer);
-    }
-
     public ConnectionSecureOkBody(
             byte[] response
                                  )
@@ -96,7 +87,7 @@ public class ConnectionSecureOkBody exte
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput in, final 
ServerMethodProcessor dispatcher) throws IOException
+    public static void process(final QpidByteBuffer in, final 
ServerMethodProcessor dispatcher)
     {
         byte[] response = EncodingUtils.readBytes(in);
         if(!dispatcher.ignoreAllButCloseOk())

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionStartBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionStartBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionStartBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionStartBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ConnectionStartBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -136,11 +133,11 @@ public class ConnectionStartBody extends
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput in, final 
ClientMethodProcessor dispatcher)
-            throws IOException, AMQFrameDecodingException
+    public static void process(final QpidByteBuffer in, final 
ClientMethodProcessor dispatcher)
+            throws AMQFrameDecodingException
     {
-        short versionMajor = (short) in.readUnsignedByte();
-        short versionMinor = (short) in.readUnsignedByte();
+        short versionMajor = (short) in.getUnsignedByte();
+        short versionMinor = (short) in.getUnsignedByte();
         FieldTable serverProperties = EncodingUtils.readFieldTable(in);
         byte[] mechanisms = EncodingUtils.readBytes(in);
         byte[] locales = EncodingUtils.readBytes(in);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionStartOkBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionStartOkBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionStartOkBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionStartOkBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ConnectionStartOkBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -126,14 +123,14 @@ public class ConnectionStartOkBody exten
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput in, final 
ServerMethodProcessor dispatcher)
-            throws IOException, AMQFrameDecodingException
+    public static void process(final QpidByteBuffer in, final 
ServerMethodProcessor dispatcher)
+            throws AMQFrameDecodingException
     {
 
         FieldTable clientProperties = EncodingUtils.readFieldTable(in);
-        AMQShortString mechanism = in.readAMQShortString();
+        AMQShortString mechanism = AMQShortString.readAMQShortString(in);
         byte[] response = EncodingUtils.readBytes(in);
-        AMQShortString locale = in.readAMQShortString();
+        AMQShortString locale = AMQShortString.readAMQShortString(in);
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveConnectionStartOk(clientProperties, mechanism, 
response, locale);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionTuneBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionTuneBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionTuneBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionTuneBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ConnectionTuneBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -44,14 +41,6 @@ public class ConnectionTuneBody extends
     private final long _frameMax; // [frameMax]
     private final int _heartbeat; // [heartbeat]
 
-    // Constructor
-    public ConnectionTuneBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _channelMax = buffer.readUnsignedShort();
-        _frameMax = EncodingUtils.readUnsignedInteger(buffer);
-        _heartbeat = buffer.readUnsignedShort();
-    }
-
     public ConnectionTuneBody(
             int channelMax,
             long frameMax,
@@ -119,12 +108,12 @@ public class ConnectionTuneBody extends
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer, final 
ClientMethodProcessor dispatcher) throws IOException
+    public static void process(final QpidByteBuffer buffer, final 
ClientMethodProcessor dispatcher)
     {
 
-        int channelMax = buffer.readUnsignedShort();
-        long frameMax = EncodingUtils.readUnsignedInteger(buffer);
-        int heartbeat = buffer.readUnsignedShort();
+        int channelMax = buffer.getUnsignedShort();
+        long frameMax = buffer.getUnsignedInt();
+        int heartbeat = buffer.getUnsignedShort();
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveConnectionTune(channelMax, frameMax, heartbeat);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionTuneOkBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionTuneOkBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionTuneOkBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionTuneOkBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ConnectionTuneOkBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -44,14 +41,6 @@ public class ConnectionTuneOkBody extend
     private final long _frameMax; // [frameMax]
     private final int _heartbeat; // [heartbeat]
 
-    // Constructor
-    public ConnectionTuneOkBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _channelMax = buffer.readUnsignedShort();
-        _frameMax = EncodingUtils.readUnsignedInteger(buffer);
-        _heartbeat = buffer.readUnsignedShort();
-    }
-
     public ConnectionTuneOkBody(
             int channelMax,
             long frameMax,
@@ -119,12 +108,12 @@ public class ConnectionTuneOkBody extend
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer, final 
ServerMethodProcessor dispatcher) throws IOException
+    public static void process(final QpidByteBuffer buffer, final 
ServerMethodProcessor dispatcher)
     {
 
-        int channelMax = buffer.readUnsignedShort();
-        long frameMax = EncodingUtils.readUnsignedInteger(buffer);
-        int heartbeat = buffer.readUnsignedShort();
+        int channelMax = buffer.getUnsignedShort();
+        long frameMax = buffer.getUnsignedInt();
+        int heartbeat = buffer.getUnsignedShort();
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveConnectionTuneOk(channelMax, frameMax, 
heartbeat);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ContentBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ContentBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ContentBody.java 
(original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ContentBody.java 
Wed Jan  6 16:16:11 2016
@@ -20,12 +20,10 @@
  */
 package org.apache.qpid.framing;
 
-import java.io.IOException;
 import java.nio.ByteBuffer;
 
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 import org.apache.qpid.protocol.AMQVersionAwareProtocolSession;
 import org.apache.qpid.transport.ByteBufferSender;
 
@@ -93,12 +91,11 @@ public class ContentBody implements AMQB
         }
     }
 
-    public static void process(final MarkableDataInput in,
+    public static void process(final QpidByteBuffer in,
                                final ChannelMethodProcessor methodProcessor, 
final long bodySize)
-            throws IOException
     {
 
-        QpidByteBuffer payload = in.readAsByteBuffer((int) bodySize);
+        QpidByteBuffer payload = in.view(0, (int) bodySize);
 
         if(!methodProcessor.ignoreAllButCloseOk())
         {
@@ -106,6 +103,7 @@ public class ContentBody implements AMQB
         }
 
         payload.dispose();
+        in.position(in.position()+(int)bodySize);
     }
 
     public static AMQFrame createAMQFrame(int channelId, ContentBody body)

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ContentHeaderBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ContentHeaderBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ContentHeaderBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ContentHeaderBody.java
 Wed Jan  6 16:16:11 2016
@@ -24,7 +24,6 @@ import java.io.IOException;
 
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 import org.apache.qpid.protocol.AMQConstant;
 import org.apache.qpid.protocol.AMQVersionAwareProtocolSession;
 import org.apache.qpid.transport.ByteBufferSender;
@@ -40,12 +39,12 @@ public class ContentHeaderBody implement
     /** must never be null */
     private final BasicContentHeaderProperties _properties;
 
-    public ContentHeaderBody(MarkableDataInput buffer, long size) throws 
AMQFrameDecodingException, IOException
+    public ContentHeaderBody(QpidByteBuffer buffer, long size) throws 
AMQFrameDecodingException
     {
-        buffer.readUnsignedShort();
-        buffer.readUnsignedShort();
-        _bodySize = buffer.readLong();
-        int propertyFlags = buffer.readUnsignedShort();
+        buffer.getUnsignedShort();
+        buffer.getUnsignedShort();
+        _bodySize = buffer.getLong();
+        int propertyFlags = buffer.getUnsignedShort();
         ContentHeaderPropertiesFactory factory = 
ContentHeaderPropertiesFactory.getInstance();
         _properties = factory.createContentHeaderProperties(CLASS_ID, 
propertyFlags, buffer, (int)size - 14);
 
@@ -77,8 +76,8 @@ public class ContentHeaderBody implement
      * @throws AMQProtocolVersionException if there is a version issue
      * @throws IOException if there is an IO issue
      */
-    public static ContentHeaderBody createFromBuffer(MarkableDataInput buffer, 
long size)
-        throws AMQFrameDecodingException, AMQProtocolVersionException, 
IOException
+    public static ContentHeaderBody createFromBuffer(QpidByteBuffer buffer, 
long size)
+        throws AMQFrameDecodingException, AMQProtocolVersionException
     {
         ContentHeaderBody body = new ContentHeaderBody(buffer, size);
         
@@ -94,10 +93,10 @@ public class ContentHeaderBody implement
     public long writePayload(final ByteBufferSender sender)
     {
         QpidByteBuffer data = QpidByteBuffer.allocateDirect(HEADER_SIZE);
-        EncodingUtils.writeUnsignedShort(data, CLASS_ID);
-        EncodingUtils.writeUnsignedShort(data, 0);
+        data.putUnsignedShort(CLASS_ID);
+        data.putUnsignedShort(0);
         data.putLong(_bodySize);
-        EncodingUtils.writeUnsignedShort(data, _properties.getPropertyFlags());
+        data.putUnsignedShort(_properties.getPropertyFlags());
         data.flip();
         sender.send(data);
         data.dispose();
@@ -106,10 +105,10 @@ public class ContentHeaderBody implement
 
     public long writePayload(final QpidByteBuffer buf)
     {
-        EncodingUtils.writeUnsignedShort(buf, CLASS_ID);
-        EncodingUtils.writeUnsignedShort(buf, 0);
+        buf.putUnsignedShort(CLASS_ID);
+        buf.putUnsignedShort(0);
         buf.putLong(_bodySize);
-        EncodingUtils.writeUnsignedShort(buf, _properties.getPropertyFlags());
+        buf.putUnsignedShort(_properties.getPropertyFlags());
         return HEADER_SIZE + _properties.writePropertyListPayload(buf);
     }
 
@@ -165,15 +164,15 @@ public class ContentHeaderBody implement
         _bodySize = bodySize;
     }
 
-    public static void process(final MarkableDataInput buffer,
+    public static void process(final QpidByteBuffer buffer,
                                final ChannelMethodProcessor methodProcessor, 
final long size)
-            throws IOException, AMQFrameDecodingException
+            throws AMQFrameDecodingException
     {
 
-        int classId = buffer.readUnsignedShort();
-        buffer.readUnsignedShort();
-        long bodySize = buffer.readLong();
-        int propertyFlags = buffer.readUnsignedShort();
+        int classId = buffer.getUnsignedShort();
+        buffer.getUnsignedShort();
+        long bodySize = buffer.getLong();
+        int propertyFlags = buffer.getUnsignedShort();
 
         BasicContentHeaderProperties properties;
 

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ContentHeaderPropertiesFactory.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ContentHeaderPropertiesFactory.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ContentHeaderPropertiesFactory.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ContentHeaderPropertiesFactory.java
 Wed Jan  6 16:16:11 2016
@@ -20,10 +20,7 @@
  */
 package org.apache.qpid.framing;
 
-import java.io.DataInput;
-import java.io.IOException;
-
-import org.apache.qpid.codec.MarkableDataInput;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.protocol.AMQConstant;
 
 public class ContentHeaderPropertiesFactory
@@ -40,8 +37,8 @@ public class ContentHeaderPropertiesFact
     }
 
     public BasicContentHeaderProperties createContentHeaderProperties(int 
classId, int propertyFlags,
-                                                                 
MarkableDataInput buffer, int size)
-             throws AMQFrameDecodingException, IOException
+                                                                      
QpidByteBuffer buffer, int size)
+             throws AMQFrameDecodingException
     {
         BasicContentHeaderProperties properties;
         // AMQP version change: "Hardwired" version to major=8, minor=0

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/EncodingUtils.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/EncodingUtils.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/EncodingUtils.java 
(original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/EncodingUtils.java 
Wed Jan  6 16:16:11 2016
@@ -20,29 +20,17 @@
  */
 package org.apache.qpid.framing;
 
-import java.io.DataInput;
-import java.io.IOException;
-import java.nio.charset.Charset;
 import java.nio.charset.StandardCharsets;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class EncodingUtils
 {
     private static final Logger _logger = 
LoggerFactory.getLogger(EncodingUtils.class);
 
-    private static final String STRING_ENCODING = "iso8859-15";
-
-    private static final Charset _charset = Charset.forName("iso8859-15");
-
-    public static final int SIZEOF_UNSIGNED_SHORT = 2;
-    public static final int SIZEOF_UNSIGNED_INT = 4;
-    private static final boolean[] ALL_FALSE_ARRAY = new boolean[8];
-
     private EncodingUtils()
     {
     }
@@ -64,103 +52,21 @@ public class EncodingUtils
         }
     }
 
-    public static int encodedShortStringLength(short s)
-    {
-        if (s == 0)
-        {
-            return 1 + 1;
-        }
-
-        int len = 0;
-        if (s < 0)
-        {
-            len = 1;
-            // sloppy - doesn't work of Integer.MIN_VALUE
-            s = (short) -s;
-        }
-
-        if (s > 9999)
-        {
-            return 1 + 5;
-        }
-        else if (s > 999)
-        {
-            return 1 + 4;
-        }
-        else if (s > 99)
-        {
-            return 1 + 3;
-        }
-        else if (s > 9)
-        {
-            return 1 + 2;
-        }
-        else
-        {
-            return 1 + 1;
-        }
-
-    }
-
-    public static int encodedShortStringLength(int i)
-    {
-        if (i == 0)
-        {
-            return 1 + 1;
-        }
-
-        int len = 0;
-        if (i < 0)
-        {
-            len = 1;
-            // sloppy - doesn't work of Integer.MIN_VALUE
-            i = -i;
-        }
-
-        // range is now 1 - 2147483647
-        if (i < Short.MAX_VALUE)
-        {
-            return len + encodedShortStringLength((short) i);
-        }
-        else if (i > 999999)
-        {
-            return len + 6 + encodedShortStringLength((short) (i / 1000000));
-        }
-        else // if i > 99999
-        {
-            return len + 5 + encodedShortStringLength((short) (i / 100000));
-        }
-
-    }
-
     public static int encodedShortStringLength(long l)
     {
         if (l == 0)
         {
-            return 1 + 1;
-        }
-
-        int len = 0;
-        if (l < 0)
-        {
-            len = 1;
-            // sloppy - doesn't work of Long.MIN_VALUE
-            l = -l;
-        }
-
-        if (l < Integer.MAX_VALUE)
-        {
-            return len + encodedShortStringLength((int) l);
+            return 2;
         }
-        else if (l > 9999999999L)
+        else if(l>=1000000000000L && l<10000000000000L)
         {
-            return len + 10 + encodedShortStringLength((int) (l / 
10000000000L));
+            // this covers the common case of timestamps between Sep 2010 and 
Nov 2286
+            return 14;
         }
         else
         {
-            return len + 1 + encodedShortStringLength((int) (l / 10L));
+            return Long.toString(l).length()+1;
         }
-
     }
 
     public static int encodedShortStringLength(AMQShortString s)
@@ -246,65 +152,21 @@ public class EncodingUtils
         if (s != null)
         {
             int len = getUTF8Length(s);
-            writeUnsignedInteger(buffer, len);
+            buffer.putUnsignedInt((long) len);
             buffer.put(asUTF8Bytes(s));
 
         }
         else
         {
-            writeUnsignedInteger(buffer, 0);
+            buffer.putUnsignedInt((long) 0);
         }
     }
 
-
-    public static void writeUnsignedByte(QpidByteBuffer buffer, short b)
-    {
-        byte bv = (byte) b;
-        buffer.put(bv);
-    }
-
-    public static void writeUnsignedShort(QpidByteBuffer buffer, int s)
-    {
-        // TODO: Is this comparison safe? Do I need to cast RHS to long?
-        if (s < Short.MAX_VALUE)
-        {
-            buffer.putShort((short) s);
-        }
-        else
-        {
-            short sv = (short) s;
-            buffer.put((byte) (0xFF & (sv >> 8)));
-            buffer.put((byte) (0xFF & sv));
-        }
-    }
-
-
     public static int unsignedIntegerLength()
     {
         return 4;
     }
 
-    public static void writeUnsignedInteger(QpidByteBuffer buffer, long l)
-    {
-        // TODO: Is this comparison safe? Do I need to cast RHS to long?
-        if (l < Integer.MAX_VALUE)
-        {
-            buffer.putInt((int) l);
-        }
-        else
-        {
-            int iv = (int) l;
-
-            // FIXME: This *may* go faster if we build this into a local 
4-byte array and then
-            // put the array in a single call.
-            buffer.put((byte) (0xFF & (iv >> 24)));
-            buffer.put((byte) (0xFF & (iv >> 16)));
-            buffer.put((byte) (0xFF & (iv >> 8)));
-            buffer.put((byte) (0xFF & iv));
-        }
-    }
-
-
     public static void writeFieldTableBytes(QpidByteBuffer buffer, FieldTable 
table)
     {
         if (table != null)
@@ -313,7 +175,7 @@ public class EncodingUtils
         }
         else
         {
-            EncodingUtils.writeUnsignedInteger(buffer, 0);
+            buffer.putUnsignedInt((long) 0);
         }
     }
 
@@ -321,18 +183,18 @@ public class EncodingUtils
     {
         if (data != null)
         {
-            writeUnsignedInteger(buffer, data.length);
+            buffer.putUnsignedInt((long) data.length);
             buffer.put(data);
         }
         else
         {
-            writeUnsignedInteger(buffer, 0);
+            buffer.putUnsignedInt((long) 0);
         }
     }
 
-    public static FieldTable readFieldTable(MarkableDataInput input) throws 
AMQFrameDecodingException, IOException
+    public static FieldTable readFieldTable(QpidByteBuffer input) throws 
AMQFrameDecodingException
     {
-        long length = ((long)(input.readInt())) & 0xFFFFFFFFL;
+        long length = input.getUnsignedInt();
         if (length == 0)
         {
             return null;
@@ -344,15 +206,9 @@ public class EncodingUtils
     }
 
 
-    public static AMQShortString readAMQShortString(DataInput buffer) throws 
IOException
+    public static String readLongString(QpidByteBuffer buffer)
     {
-        return AMQShortString.readFromBuffer(buffer);
-
-    }
-
-    public static String readLongString(DataInput buffer) throws IOException
-    {
-        long length = ((long)(buffer.readInt())) & 0xFFFFFFFFL;
+        long length = ((long)(buffer.getInt())) & 0xFFFFFFFFL;
         if (length == 0)
         {
             return "";
@@ -360,15 +216,15 @@ public class EncodingUtils
         else
         {
             byte[] stringBytes = new byte[(int) length];
-            buffer.readFully(stringBytes, 0, (int) length);
+            buffer.get(stringBytes, 0, (int) length);
 
             return new String(stringBytes, StandardCharsets.UTF_8);
         }
     }
 
-    public static byte[] readLongstr(DataInput buffer) throws IOException
+    public static byte[] readLongstr(QpidByteBuffer buffer)
     {
-        long length = ((long)(buffer.readInt())) & 0xFFFFFFFFL;
+        long length = ((long)(buffer.getInt())) & 0xFFFFFFFFL;
         if (length == 0)
         {
             return null;
@@ -376,46 +232,12 @@ public class EncodingUtils
         else
         {
             byte[] result = new byte[(int) length];
-            buffer.readFully(result);
+            buffer.get(result);
 
             return result;
         }
     }
 
-    public static long readTimestamp(DataInput buffer) throws IOException
-    {
-        return buffer.readLong();
-    }
-
-    public static char[] convertToHexCharArray(byte[] from)
-    {
-        int length = from.length;
-        char[] result_buff = new char[(length * 2) + 2];
-
-        result_buff[0] = '0';
-        result_buff[1] = 'x';
-
-        int bite;
-        int dest = 2;
-
-        for (int i = 0; i < length; i++)
-        {
-            bite = from[i];
-
-            if (bite < 0)
-            {
-                bite += 256;
-            }
-
-            result_buff[dest++] = hex_chars[bite >> 4];
-            result_buff[dest++] = hex_chars[bite & 0x0f];
-        }
-
-        return (result_buff);
-    }
-
-    private static char[] hex_chars = { '0', '1', '2', '3', '4', '5', '6', 
'7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
-
     // **** new methods
 
     // AMQP_BOOLEAN_PROPERTY_PREFIX
@@ -425,81 +247,44 @@ public class EncodingUtils
         buffer.put(aBoolean ? (byte)1 : (byte)0);
     }
 
-    public static boolean readBoolean(DataInput buffer) throws IOException
-    {
-        byte packedValue = buffer.readByte();
-
-        return (packedValue == 1);
-    }
-
     public static int encodedBooleanLength()
     {
         return 1;
     }
 
-    public static byte readByte(DataInput buffer) throws IOException
-    {
-        return buffer.readByte();
-    }
-
     public static int encodedByteLength()
     {
         return 1;
     }
 
-    public static short readShort(DataInput buffer) throws IOException
-    {
-        return buffer.readShort();
-    }
-
     public static int encodedShortLength()
     {
         return 2;
     }
 
-    public static int readInteger(DataInput buffer) throws IOException
-    {
-        return buffer.readInt();
-    }
-
     public static int encodedIntegerLength()
     {
         return 4;
     }
 
-    public static long readLong(DataInput buffer) throws IOException
-    {
-        return buffer.readLong();
-    }
-
     public static int encodedLongLength()
     {
         return 8;
     }
 
-    public static float readFloat(DataInput buffer) throws IOException
-    {
-        return buffer.readFloat();
-    }
-
     public static int encodedFloatLength()
     {
         return 4;
     }
 
-    public static double readDouble(DataInput buffer) throws IOException
-    {
-        return buffer.readDouble();
-    }
-
     public static int encodedDoubleLength()
     {
         return 8;
     }
 
-    public static byte[] readBytes(DataInput buffer) throws IOException
+    public static byte[] readBytes(QpidByteBuffer buffer)
     {
-        long length = ((long)(buffer.readInt())) & 0xFFFFFFFFL;
+        long length = buffer.getUnsignedInt();
         if (length == 0)
         {
             return null;
@@ -507,7 +292,7 @@ public class EncodingUtils
         else
         {
             byte[] dataBytes = new byte[(int)length];
-            buffer.readFully(dataBytes, 0, (int) length);
+            buffer.get(dataBytes);
 
             return dataBytes;
         }
@@ -518,12 +303,12 @@ public class EncodingUtils
         if (data != null)
         {
             // TODO: check length fits in an unsigned byte
-            writeUnsignedInteger(buffer,  (long)data.length);
+            buffer.putUnsignedInt((long)data.length);
             buffer.put(data);
         }
         else
         {
-            writeUnsignedInteger(buffer, 0L);
+            buffer.putUnsignedInt(0L);
         }
     }
 
@@ -533,29 +318,23 @@ public class EncodingUtils
         return encodedByteLength();
     }
 
-    public static char readChar(DataInput buffer) throws IOException
+    public static long readLongAsShortString(QpidByteBuffer buffer)
     {
-        // This is valid as we know that the Character is ASCII 0..127
-        return (char) buffer.readByte();
-    }
-
-    public static long readLongAsShortString(DataInput buffer) throws 
IOException
-    {
-        short length = (short) buffer.readUnsignedByte();
+        short length = (short) buffer.getUnsignedByte();
         short pos = 0;
         if (length == 0)
         {
             return 0L;
         }
 
-        byte digit = buffer.readByte();
+        byte digit = buffer.get();
         boolean isNegative;
         long result = 0;
         if (digit == (byte) '-')
         {
             isNegative = true;
             pos++;
-            digit = buffer.readByte();
+            digit = buffer.get();
         }
         else
         {
@@ -568,25 +347,12 @@ public class EncodingUtils
         while (pos < length)
         {
             pos++;
-            digit = buffer.readByte();
+            digit = buffer.get();
             result = (result << 3) + (result << 1);
             result += digit - (byte) '0';
         }
 
-        return result;
-    }
-
-    public static long readUnsignedInteger(DataInput buffer) throws IOException
-    {
-        long l = 0xFF & buffer.readByte();
-        l <<= 8;
-        l = l | (0xFF & buffer.readByte());
-        l <<= 8;
-        l = l | (0xFF & buffer.readByte());
-        l <<= 8;
-        l = l | (0xFF & buffer.readByte());
-
-        return l;
+        return isNegative ? -result : result;
     }
 
     public static byte[] asUTF8Bytes(CharSequence string)

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeBoundBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeBoundBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeBoundBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeBoundBody.java
 Wed Jan  6 16:16:11 2016
@@ -31,7 +31,6 @@ import java.io.IOException;
 
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ExchangeBoundBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -44,14 +43,6 @@ public class ExchangeBoundBody extends A
     private final AMQShortString _routingKey; // [routingKey]
     private final AMQShortString _queue; // [queue]
 
-    // Constructor
-    public ExchangeBoundBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _exchange = buffer.readAMQShortString();
-        _routingKey = buffer.readAMQShortString();
-        _queue = buffer.readAMQShortString();
-    }
-
     public ExchangeBoundBody(
             AMQShortString exchange,
             AMQShortString routingKey,
@@ -122,14 +113,13 @@ public class ExchangeBoundBody extends A
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer,
+    public static void process(final QpidByteBuffer buffer,
                                final ServerChannelMethodProcessor dispatcher)
-            throws IOException
     {
 
-        AMQShortString exchange = buffer.readAMQShortString();
-        AMQShortString routingKey = buffer.readAMQShortString();
-        AMQShortString queue = buffer.readAMQShortString();
+        AMQShortString exchange = AMQShortString.readAMQShortString(buffer);
+        AMQShortString routingKey = AMQShortString.readAMQShortString(buffer);
+        AMQShortString queue = AMQShortString.readAMQShortString(buffer);
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveExchangeBound(exchange, routingKey, queue);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeBoundOkBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeBoundOkBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeBoundOkBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeBoundOkBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ExchangeBoundOkBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -50,13 +47,6 @@ public class ExchangeBoundOkBody extends
     private final int _replyCode; // [replyCode]
     private final AMQShortString _replyText; // [replyText]
 
-    // Constructor
-    public ExchangeBoundOkBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _replyCode = buffer.readUnsignedShort();
-        _replyText = buffer.readAMQShortString();
-    }
-
     public ExchangeBoundOkBody(
             int replyCode,
             AMQShortString replyText
@@ -115,13 +105,12 @@ public class ExchangeBoundOkBody extends
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer,
+    public static void process(final QpidByteBuffer buffer,
                                final ClientChannelMethodProcessor dispatcher)
-            throws IOException
     {
 
-        int replyCode = buffer.readUnsignedShort();
-        AMQShortString replyText = buffer.readAMQShortString();
+        int replyCode = buffer.getUnsignedShort();
+        AMQShortString replyText = AMQShortString.readAMQShortString(buffer);
         if(!dispatcher.ignoreAllButCloseOk())
         {
             dispatcher.receiveExchangeBoundOk(replyCode, replyText);

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeclareBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeclareBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeclareBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeclareBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ExchangeDeclareBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -46,16 +43,6 @@ public class ExchangeDeclareBody extends
     private final byte _bitfield0; // [passive, durable, autoDelete, internal, 
nowait]
     private final FieldTable _arguments; // [arguments]
 
-    // Constructor
-    public ExchangeDeclareBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _ticket = buffer.readUnsignedShort();
-        _exchange = buffer.readAMQShortString();
-        _type = buffer.readAMQShortString();
-        _bitfield0 = buffer.readByte();
-        _arguments = EncodingUtils.readFieldTable(buffer);
-    }
-
     public ExchangeDeclareBody(
             int ticket,
             AMQShortString exchange,
@@ -204,14 +191,14 @@ public class ExchangeDeclareBody extends
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer,
-                               final ServerChannelMethodProcessor dispatcher) 
throws IOException, AMQFrameDecodingException
+    public static void process(final QpidByteBuffer buffer,
+                               final ServerChannelMethodProcessor dispatcher) 
throws AMQFrameDecodingException
     {
 
-        int ticket = buffer.readUnsignedShort();
-        AMQShortString exchange = buffer.readAMQShortString();
-        AMQShortString type = buffer.readAMQShortString();
-        byte bitfield = buffer.readByte();
+        int ticket = buffer.getUnsignedShort();
+        AMQShortString exchange = AMQShortString.readAMQShortString(buffer);
+        AMQShortString type = AMQShortString.readAMQShortString(buffer);
+        byte bitfield = buffer.get();
         boolean passive = (bitfield & 0x1) == 0x1;
         boolean durable = (bitfield & 0x2) == 0x2;
         boolean autoDelete = (bitfield & 0x4) == 0x4;

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeclareOkBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeclareOkBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeclareOkBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeclareOkBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ExchangeDeclareOkBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -41,11 +38,6 @@ public class ExchangeDeclareOkBody exten
 
     // Fields declared in specification
 
-    // Constructor
-    public ExchangeDeclareOkBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-    }
-
     public ExchangeDeclareOkBody(
                                 )
     {

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteBody.java
 Wed Jan  6 16:16:11 2016
@@ -31,7 +31,6 @@ import java.io.IOException;
 
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ExchangeDeleteBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -44,14 +43,6 @@ public class ExchangeDeleteBody extends
     private final AMQShortString _exchange; // [exchange]
     private final byte _bitfield0; // [ifUnused, nowait]
 
-    // Constructor
-    public ExchangeDeleteBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-        _ticket = buffer.readUnsignedShort();
-        _exchange = buffer.readAMQShortString();
-        _bitfield0 = buffer.readByte();
-    }
-
     public ExchangeDeleteBody(
             int ticket,
             AMQShortString exchange,
@@ -138,14 +129,13 @@ public class ExchangeDeleteBody extends
         return buf.toString();
     }
 
-    public static void process(final MarkableDataInput buffer,
+    public static void process(final QpidByteBuffer buffer,
                                final ServerChannelMethodProcessor dispatcher)
-            throws IOException
     {
 
-        int ticket = buffer.readUnsignedShort();
-        AMQShortString exchange = buffer.readAMQShortString();
-        byte bitfield = buffer.readByte();
+        int ticket = buffer.getUnsignedShort();
+        AMQShortString exchange = AMQShortString.readAMQShortString(buffer);
+        byte bitfield = buffer.get();
         boolean ifUnused = (bitfield & 0x01) == 0x01;
         boolean nowait = (bitfield & 0x02) == 0x02;
         if(!dispatcher.ignoreAllButCloseOk())

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteOkBody.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteOkBody.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteOkBody.java
 (original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ExchangeDeleteOkBody.java
 Wed Jan  6 16:16:11 2016
@@ -27,11 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.codec.MarkableDataInput;
 
 public class ExchangeDeleteOkBody extends AMQMethodBodyImpl implements 
EncodableAMQDataBlock, AMQMethodBody
 {
@@ -41,11 +38,6 @@ public class ExchangeDeleteOkBody extend
 
     // Fields declared in specification
 
-    // Constructor
-    public ExchangeDeleteOkBody(MarkableDataInput buffer) throws 
AMQFrameDecodingException, IOException
-    {
-    }
-
     public ExchangeDeleteOkBody(
                                )
     {

Modified: 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/FieldArray.java
URL: 
http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/FieldArray.java?rev=1723359&r1=1723358&r2=1723359&view=diff
==============================================================================
--- 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/FieldArray.java 
(original)
+++ 
qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/FieldArray.java 
Wed Jan  6 16:16:11 2016
@@ -20,8 +20,6 @@
  */
 package org.apache.qpid.framing;
 
-import java.io.DataInput;
-import java.io.IOException;
 import java.math.BigDecimal;
 import java.util.AbstractCollection;
 import java.util.ArrayList;
@@ -115,17 +113,17 @@ public class FieldArray<T> extends Abstr
         }
     }
 
-    public static FieldArray<?> readFromBuffer(final DataInput buffer) throws 
IOException
+    public static FieldArray<?> readFromBuffer(final QpidByteBuffer buffer)
     {
         ArrayList<Object> result = new ArrayList<>();
-        int size = EncodingUtils.readInteger(buffer);
-        byte[] data = new byte[size];
-        buffer.readFully(data);
-        ByteArrayDataInput slicedBuffer = new ByteArrayDataInput(data);
-        while(slicedBuffer.available() > 0)
+        int size = buffer.getInt();
+        QpidByteBuffer slicedBuffer = buffer.view(0,size);
+        buffer.position(buffer.position()+size);
+        while(slicedBuffer.hasRemaining())
         {
             result.add(AMQTypedValue.readFromBuffer(slicedBuffer).getValue());
         }
+        slicedBuffer.dispose();
         return new FieldArray<>(result);
     }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to