You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by rg...@apache.org on 2015/12/15 16:45:48 UTC

svn commit: r1720183 [2/3] - in /qpid/java/trunk: bdbstore/src/main/java/org/apache/qpid/server/store/berkeleydb/ broker-core/src/main/java/org/apache/qpid/server/message/ broker-core/src/main/java/org/apache/qpid/server/message/internal/ broker-core/s...

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/codec/AMQDecoder.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/codec/AMQDecoder.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/codec/AMQDecoder.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/codec/AMQDecoder.java Tue Dec 15 15:45:46 2015
@@ -30,6 +30,9 @@ import java.util.ArrayList;
 import java.util.List;
 import java.util.ListIterator;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 import org.apache.qpid.framing.*;
 import org.apache.qpid.protocol.AMQConstant;
 
@@ -47,6 +50,7 @@ import org.apache.qpid.protocol.AMQConst
  */
 public abstract class AMQDecoder<T extends MethodProcessor>
 {
+    private static final Logger LOGGER = LoggerFactory.getLogger(AMQDecoder.class);
     private static final int MAX_BUFFERS_LIMIT = 10;
     private final T _methodProcessor;
 
@@ -158,7 +162,6 @@ public abstract class AMQDecoder<T exten
                                                 + _maxFrameSize);
         }
         in.reset();
-
         return (remainingAfterAttributes >= bodySize);
 
     }

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQBody.java Tue Dec 15 15:45:46 2015
@@ -20,9 +20,6 @@
  */
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
 import org.apache.qpid.protocol.AMQVersionAwareProtocolSession;
 import org.apache.qpid.transport.ByteBufferSender;
@@ -35,11 +32,9 @@ public interface AMQBody
      * Get the size of the body
      * @return unsigned short
      */
-    public abstract int getSize();
-    
-    public void writePayload(DataOutput buffer) throws IOException;
-    
+    int getSize();
+
     void handle(final int channelId, final AMQVersionAwareProtocolSession amqProtocolSession) throws QpidException;
 
-    long writePayload(ByteBufferSender sender) throws IOException;
+    long writePayload(ByteBufferSender sender);
 }

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQDataBlock.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQDataBlock.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQDataBlock.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQDataBlock.java Tue Dec 15 15:45:46 2015
@@ -20,9 +20,6 @@
  */
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
-import java.io.IOException;
-
 import org.apache.qpid.transport.ByteBufferSender;
 
 
@@ -39,13 +36,6 @@ public abstract class AMQDataBlock imple
      */
     public abstract long getSize();
 
-    /**
-     * Writes the datablock to the specified buffer.
-     * @param buffer the buffer to write to
-     * @throws IOException if there is a problem writing the output
-     */
-    public abstract void writePayload(DataOutput buffer) throws IOException;
-
-    public abstract long writePayload(ByteBufferSender sender) throws IOException;
+    public abstract long writePayload(ByteBufferSender sender);
 
 }

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQFrame.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQFrame.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQFrame.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQFrame.java Tue Dec 15 15:45:46 2015
@@ -20,9 +20,6 @@
  */
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
-import java.io.IOException;
-
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.transport.ByteBufferSender;
 
@@ -51,15 +48,6 @@ public class AMQFrame extends AMQDataBlo
     }
 
 
-    public void writePayload(DataOutput buffer) throws IOException
-    {
-        buffer.writeByte(_bodyFrame.getFrameType());
-        EncodingUtils.writeUnsignedShort(buffer, _channel);
-        EncodingUtils.writeUnsignedInteger(buffer, _bodyFrame.getSize());
-        _bodyFrame.writePayload(buffer);
-        buffer.writeByte(FRAME_END_BYTE);
-    }
-
     private static final QpidByteBuffer FRAME_END_BYTE_BUFFER = QpidByteBuffer.allocateDirect(1);
     static
     {
@@ -68,7 +56,7 @@ public class AMQFrame extends AMQDataBlo
     }
 
     @Override
-    public long writePayload(final ByteBufferSender sender) throws IOException
+    public long writePayload(final ByteBufferSender sender)
     {
         QpidByteBuffer frameHeader = QpidByteBuffer.allocateDirect(HEADER_SIZE);
 
@@ -99,49 +87,4 @@ public class AMQFrame extends AMQDataBlo
         return "Frame channelId: " + _channel + ", bodyFrame: " + String.valueOf(_bodyFrame);
     }
 
-    public static void writeFrame(DataOutput buffer, final int channel, AMQBody body) throws IOException
-    {
-        buffer.writeByte(body.getFrameType());
-        EncodingUtils.writeUnsignedShort(buffer, channel);
-        EncodingUtils.writeUnsignedInteger(buffer, body.getSize());
-        body.writePayload(buffer);
-        buffer.writeByte(FRAME_END_BYTE);
-
-    }
-
-    public static void writeFrames(DataOutput buffer, final int channel, AMQBody body1, AMQBody body2) throws IOException
-    {
-        buffer.writeByte(body1.getFrameType());
-        EncodingUtils.writeUnsignedShort(buffer, channel);
-        EncodingUtils.writeUnsignedInteger(buffer, body1.getSize());
-        body1.writePayload(buffer);
-        buffer.writeByte(FRAME_END_BYTE);
-        buffer.writeByte(body2.getFrameType());
-        EncodingUtils.writeUnsignedShort(buffer, channel);
-        EncodingUtils.writeUnsignedInteger(buffer, body2.getSize());
-        body2.writePayload(buffer);
-        buffer.writeByte(FRAME_END_BYTE);
-
-    }
-
-    public static void writeFrames(DataOutput buffer, final int channel, AMQBody body1, AMQBody body2, AMQBody body3) throws IOException
-    {
-        buffer.writeByte(body1.getFrameType());
-        EncodingUtils.writeUnsignedShort(buffer, channel);
-        EncodingUtils.writeUnsignedInteger(buffer, body1.getSize());
-        body1.writePayload(buffer);
-        buffer.writeByte(FRAME_END_BYTE);
-        buffer.writeByte(body2.getFrameType());
-        EncodingUtils.writeUnsignedShort(buffer, channel);
-        EncodingUtils.writeUnsignedInteger(buffer, body2.getSize());
-        body2.writePayload(buffer);
-        buffer.writeByte(FRAME_END_BYTE);
-        buffer.writeByte(body3.getFrameType());
-        EncodingUtils.writeUnsignedShort(buffer, channel);
-        EncodingUtils.writeUnsignedInteger(buffer, body3.getSize());
-        body3.writePayload(buffer);
-        buffer.writeByte(FRAME_END_BYTE);
-
-    }
-
 }

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQMethodBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQMethodBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQMethodBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQMethodBody.java Tue Dec 15 15:45:46 2015
@@ -20,55 +20,23 @@
  */
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
-import java.io.IOException;
-
-import org.apache.qpid.AMQChannelException;
-import org.apache.qpid.AMQConnectionException;
 import org.apache.qpid.QpidException;
-import org.apache.qpid.protocol.AMQConstant;
 
 public interface AMQMethodBody extends AMQBody
 {
-    public static final byte TYPE = 1;
+    byte TYPE = 1;
 
     /** @return unsigned short */
-    public int getClazz();
+    int getClazz();
 
     /** @return unsigned short */
-    public int getMethod();
-
-    public void writeMethodPayload(DataOutput buffer) throws IOException;
-
-
-    public int getSize();
-
-    public void writePayload(DataOutput buffer) throws IOException;
-
-    public AMQFrame generateFrame(int channelId);
-
-    public String toString();
-
-
-
-    /**
-     * Convenience Method to create a channel not found exception
-     *
-     * @param channelId The channel id that is not found
-     *
-     * @param methodRegistry
-     * @return new AMQChannelException
-     */
-    public AMQChannelException getChannelNotFoundException(int channelId, final MethodRegistry methodRegistry);
+    int getMethod();
 
-    public AMQChannelException getChannelException(AMQConstant code,
-                                                   String message,
-                                                   final MethodRegistry methodRegistry);
+    int getSize();
 
-    public AMQConnectionException getConnectionException(AMQConstant code,
-                                                         String message,
-                                                         final MethodRegistry methodRegistry);
+    AMQFrame generateFrame(int channelId);
 
+    String toString();
 
-    public boolean execute(MethodDispatcher methodDispatcher, int channelId) throws QpidException;
+    boolean execute(MethodDispatcher methodDispatcher, int channelId) throws QpidException;
 }

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQMethodBodyImpl.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQMethodBodyImpl.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQMethodBodyImpl.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQMethodBodyImpl.java Tue Dec 15 15:45:46 2015
@@ -22,17 +22,13 @@ package org.apache.qpid.framing;
 
 
 import java.io.DataInput;
-import java.io.DataOutput;
 import java.io.IOException;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import org.apache.qpid.AMQChannelException;
-import org.apache.qpid.AMQConnectionException;
 import org.apache.qpid.QpidException;
 import org.apache.qpid.bytebuffer.QpidByteBuffer;
-import org.apache.qpid.protocol.AMQConstant;
 import org.apache.qpid.protocol.AMQVersionAwareProtocolSession;
 import org.apache.qpid.transport.ByteBufferSender;
 
@@ -67,33 +63,6 @@ public abstract class AMQMethodBodyImpl
      * method ids of the body it resulted from).
      */
 
-    /**
-     * Convenience Method to create a channel not found exception
-     *
-     * @param channelId The channel id that is not found
-     *
-     * @param methodRegistry
-     * @return new AMQChannelException
-     */
-    public AMQChannelException getChannelNotFoundException(int channelId, final MethodRegistry methodRegistry)
-    {
-        return getChannelException(AMQConstant.NOT_FOUND, "Channel not found for id:" + channelId, methodRegistry);
-    }
-
-    public AMQChannelException getChannelException(AMQConstant code,
-                                                   String message,
-                                                   final MethodRegistry methodRegistry)
-    {
-        return new AMQChannelException(code, message, getClazz(), getMethod(), methodRegistry);
-    }
-
-    public AMQConnectionException getConnectionException(AMQConstant code,
-                                                         String message,
-                                                         final MethodRegistry methodRegistry)
-    {
-        return new AMQConnectionException(code, message, this, methodRegistry);
-    }
-
     public void handle(final int channelId, final AMQVersionAwareProtocolSession session) throws QpidException
     {
         session.methodFrameReceived(channelId, this);
@@ -104,50 +73,49 @@ public abstract class AMQMethodBodyImpl
         return 2 + 2 + getBodySize();
     }
 
-    public void writePayload(DataOutput buffer) throws IOException
-    {
-        EncodingUtils.writeUnsignedShort(buffer, getClazz());
-        EncodingUtils.writeUnsignedShort(buffer, getMethod());
-        writeMethodPayload(buffer);
-    }
-
     @Override
-    public long writePayload(final ByteBufferSender sender) throws IOException
+    public long writePayload(final ByteBufferSender sender)
     {
 
         final int size = getSize();
         QpidByteBuffer buf = QpidByteBuffer.allocateDirect(size);
-        DataOutput dataOutput = buf.asDataOutput();
-        writePayload(dataOutput);
+        EncodingUtils.writeUnsignedShort(buf, getClazz());
+        EncodingUtils.writeUnsignedShort(buf, getMethod());
+        writeMethodPayload(buf);
         buf.flip();
         sender.send(buf);
         buf.dispose();
         return size;
     }
 
+    abstract protected void writeMethodPayload(QpidByteBuffer buffer);
+
+
     protected int getSizeOf(AMQShortString string)
     {
         return EncodingUtils.encodedShortStringLength(string);
     }
 
-    protected void writeByte(DataOutput buffer, byte b) throws IOException
+    protected void writeByte(QpidByteBuffer buffer, byte b)
     {
-        buffer.writeByte(b);
+        buffer.put(b);
     }
 
-    protected void writeAMQShortString(DataOutput buffer, AMQShortString string) throws IOException
+    protected void writeAMQShortString(QpidByteBuffer buffer, AMQShortString string)
     {
         EncodingUtils.writeShortStringBytes(buffer, string);
     }
 
-    protected int readInt(DataInput buffer) throws IOException
+
+    protected void writeInt(QpidByteBuffer buffer, int i)
     {
-        return buffer.readInt();
+        buffer.putInt(i);
     }
 
-    protected void writeInt(DataOutput buffer, int i) throws IOException
+
+    protected int readInt(DataInput buffer) throws IOException
     {
-        buffer.writeInt(i);
+        return buffer.readInt();
     }
 
     protected int getSizeOf(FieldTable table)
@@ -155,22 +123,23 @@ public abstract class AMQMethodBodyImpl
         return EncodingUtils.encodedFieldTableLength(table);  //To change body of created methods use File | Settings | File Templates.
     }
 
-    protected void writeFieldTable(DataOutput buffer, FieldTable table) throws IOException
+    protected void writeFieldTable(QpidByteBuffer buffer, FieldTable table)
     {
         EncodingUtils.writeFieldTableBytes(buffer, table);
     }
 
-    protected void writeLong(DataOutput buffer, long l) throws IOException
+    protected void writeLong(QpidByteBuffer buffer, long l)
     {
-        buffer.writeLong(l);
+        buffer.putLong(l);
     }
 
+
     protected int getSizeOf(byte[] response)
     {
         return (response == null) ? 4 : response.length + 4;
     }
 
-    protected void writeBytes(DataOutput buffer, byte[] data) throws IOException
+    protected void writeBytes(QpidByteBuffer buffer, byte[] data)
     {
         EncodingUtils.writeBytes(buffer,data);
     }
@@ -180,39 +149,29 @@ public abstract class AMQMethodBodyImpl
         return EncodingUtils.readShort(buffer);
     }
 
-    protected void writeShort(DataOutput buffer, short s) throws IOException
+    protected void writeShort(QpidByteBuffer buffer, short s)
     {
-        EncodingUtils.writeShort(buffer, s);
+        buffer.putShort(s);
     }
 
-    protected void writeBitfield(DataOutput buffer, byte bitfield0) throws IOException
+    protected void writeBitfield(QpidByteBuffer buffer, byte bitfield0)
     {
-        buffer.writeByte(bitfield0);
+        buffer.put(bitfield0);
     }
 
-    protected void writeUnsignedShort(DataOutput buffer, int s) throws IOException
+    protected void writeUnsignedShort(QpidByteBuffer buffer, int s)
     {
         EncodingUtils.writeUnsignedShort(buffer, s);
     }
 
-    protected void writeUnsignedInteger(DataOutput buffer, long i) throws IOException
+    protected void writeUnsignedInteger(QpidByteBuffer buffer, long i)
     {
         EncodingUtils.writeUnsignedInteger(buffer, i);
     }
 
-
-    protected void writeUnsignedByte(DataOutput buffer, short unsignedByte) throws IOException
+    protected void writeUnsignedByte(QpidByteBuffer buffer, short unsignedByte)
     {
         EncodingUtils.writeUnsignedByte(buffer, unsignedByte);
     }
 
-    protected long readTimestamp(DataInput buffer) throws IOException
-    {
-        return EncodingUtils.readTimestamp(buffer);
-    }
-
-    protected void writeTimestamp(DataOutput buffer, long t) throws IOException
-    {
-        EncodingUtils.writeTimestamp(buffer, t);
-    }
 }

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQShortString.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQShortString.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQShortString.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQShortString.java Tue Dec 15 15:45:46 2015
@@ -22,13 +22,10 @@
 package org.apache.qpid.framing;
 
 import java.io.DataInput;
-import java.io.DataOutput;
 import java.io.IOException;
 import java.nio.ByteBuffer;
 import java.nio.charset.StandardCharsets;
 import java.util.Arrays;
-import java.util.concurrent.ConcurrentHashMap;
-import java.util.concurrent.ConcurrentMap;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -202,16 +199,7 @@ public final class AMQShortString implem
         }
     }
 
-    public void writeToBuffer(DataOutput buffer) throws IOException
-    {
-
-        final int size = length();
-        buffer.writeByte(size);
-        buffer.write(_data, _offset, size);
-
-    }
-
-    public void writeToBuffer(QpidByteBuffer buffer) throws IOException
+    public void writeToBuffer(QpidByteBuffer buffer)
     {
         final int size = length();
         buffer.put((byte)size);

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQType.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQType.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQType.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQType.java Tue Dec 15 15:45:46 2015
@@ -20,11 +20,11 @@
  */
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 import java.math.BigDecimal;
 import java.util.Collection;
 
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.codec.MarkableDataInput;
 
 /**
@@ -53,7 +53,7 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
             EncodingUtils.writeLongStringBytes(buffer, (String) value);
         }
@@ -99,9 +99,10 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
-            EncodingUtils.writeUnsignedInteger(buffer, (Long) value);
+            buffer.putLong( (Long) value);
         }
 
         public Object readValueFromBuffer(MarkableDataInput buffer) throws IOException
@@ -130,7 +131,8 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
             BigDecimal bd = (BigDecimal) value;
 
@@ -138,9 +140,9 @@ public enum AMQType
 
             int unscaled = bd.intValue();
 
-            EncodingUtils.writeByte(buffer, places);
+            buffer.put(places);
 
-            EncodingUtils.writeInteger(buffer, unscaled);
+            buffer.putInt(unscaled);
         }
 
         public Object readValueFromBuffer(MarkableDataInput buffer) throws IOException
@@ -175,9 +177,9 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
-            EncodingUtils.writeLong(buffer, (Long) value);
+            buffer.putLong ((Long) value);
         }
 
         public Object readValueFromBuffer(MarkableDataInput buffer) throws IOException
@@ -233,13 +235,7 @@ public enum AMQType
             return (FieldTable) value;
         }
 
-        /**
-         * Writes an instance of the type to a specified byte buffer.
-         *
-         * @param value  An instance of the type.
-         * @param buffer The byte buffer to write it to.
-         */
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
             // Ensure that the value is a FieldTable.
             if (!(value instanceof FieldTable))
@@ -252,7 +248,6 @@ public enum AMQType
             // Loop over all name/values writing out into buffer.
             ftValue.writeToBuffer(buffer);
         }
-
         /**
          * Reads an instance of the type from a specified byte buffer.
          *
@@ -302,7 +297,7 @@ public enum AMQType
                     return FieldArray.asFieldArray((Collection)value);
                 }
 
-                public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+                public void writeValueImpl(Object value, QpidByteBuffer buffer)
                 {
 
                     if (!(value instanceof FieldArray))
@@ -350,7 +345,7 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer)
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         { }
 
         public Object readValueFromBuffer(MarkableDataInput buffer)
@@ -379,7 +374,7 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
             EncodingUtils.writeLongstr(buffer, (byte[]) value);
         }
@@ -409,7 +404,7 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
             EncodingUtils.writeLongStringBytes(buffer, (String) value);
         }
@@ -440,7 +435,7 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
             EncodingUtils.writeLongStringBytes(buffer, (String) value);
         }
@@ -475,7 +470,7 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
             EncodingUtils.writeBoolean(buffer, (Boolean) value);
         }
@@ -510,9 +505,10 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
-            EncodingUtils.writeChar(buffer, (Character) value);
+            char charVal = (Character) value;
+            buffer.put((byte) charVal);
         }
 
         public Object readValueFromBuffer(MarkableDataInput buffer) throws IOException
@@ -545,9 +541,9 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
-            EncodingUtils.writeByte(buffer, (Byte) value);
+            buffer.put((Byte) value);
         }
 
         public Object readValueFromBuffer(MarkableDataInput buffer) throws IOException
@@ -584,9 +580,9 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
-            EncodingUtils.writeShort(buffer, (Short) value);
+            buffer.putShort((Short) value);
         }
 
         public Object readValueFromBuffer(MarkableDataInput buffer) throws IOException
@@ -626,11 +622,10 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
-            EncodingUtils.writeInteger(buffer, (Integer) value);
+            buffer.putInt((Integer) value);
         }
-
         public Object readValueFromBuffer(MarkableDataInput buffer) throws IOException
         {
             return EncodingUtils.readInteger(buffer);
@@ -673,9 +668,9 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
-            EncodingUtils.writeLong(buffer, (Long) value);
+            buffer.putLong ((Long) value);
         }
 
         public Object readValueFromBuffer(MarkableDataInput buffer) throws IOException
@@ -708,9 +703,9 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
-            EncodingUtils.writeFloat(buffer, (Float) value);
+            buffer.putFloat ((Float) value);
         }
 
         public Object readValueFromBuffer(MarkableDataInput buffer) throws IOException
@@ -747,9 +742,9 @@ public enum AMQType
             }
         }
 
-        public void writeValueImpl(Object value, DataOutput buffer) throws IOException
+        public void writeValueImpl(Object value, QpidByteBuffer buffer)
         {
-            EncodingUtils.writeDouble(buffer, (Double) value);
+            buffer.putDouble((Double) value);
         }
 
         public Object readValueFromBuffer(MarkableDataInput buffer) throws IOException
@@ -812,27 +807,13 @@ public enum AMQType
         return AMQTypedValue.createAMQTypedValue(this, toNativeValue(value));
     }
 
-    /**
-     * Writes an instance of the type to a specified byte buffer, preceded by its one byte identifier. As the type and
-     * value are both written, this provides a fully encoded description of a parameters type and value.
-     *
-     * @param value  An instance of the type.
-     * @param buffer The byte buffer to write it to.
-     * @throws IOException if there is a problem writing to the buffer
-     */
-    public void writeToBuffer(Object value, DataOutput buffer) throws IOException
+    public void writeToBuffer(Object value, QpidByteBuffer buffer)
     {
-        buffer.writeByte(identifier());
+        buffer.put(identifier());
         writeValueImpl(value, buffer);
     }
 
-    /**
-     * Writes an instance of the type to a specified byte buffer.
-     *
-     * @param value  An instance of the type.
-     * @param buffer The byte buffer to write it to.
-     */
-    abstract void writeValueImpl(Object value, DataOutput buffer) throws IOException;
+    abstract void writeValueImpl(Object value, QpidByteBuffer buffer);
 
     /**
      * Reads an instance of the type from a specified byte buffer.

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQTypedValue.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQTypedValue.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQTypedValue.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AMQTypedValue.java Tue Dec 15 15:45:46 2015
@@ -21,13 +21,13 @@
 package org.apache.qpid.framing;
 
 import java.io.DataInput;
-import java.io.DataOutput;
 import java.io.IOException;
 import java.math.BigDecimal;
 import java.util.Collection;
 import java.util.Date;
 import java.util.Map;
 
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.codec.MarkableDataInput;
 
 /**
@@ -43,7 +43,7 @@ public abstract class AMQTypedValue
 
     public abstract Object getValue();
 
-    public abstract void writeToBuffer(DataOutput buffer) throws IOException;
+    public abstract void writeToBuffer(QpidByteBuffer buffer);
 
     public abstract int getEncodingSize();
 
@@ -84,7 +84,7 @@ public abstract class AMQTypedValue
             return _value;
         }
 
-        public void writeToBuffer(DataOutput buffer) throws IOException
+        public void writeToBuffer(QpidByteBuffer buffer)
         {
             _type.writeToBuffer(_value, buffer);
         }
@@ -147,10 +147,10 @@ public abstract class AMQTypedValue
             return _value;
         }
 
-        public void writeToBuffer(DataOutput buffer) throws IOException
+        public void writeToBuffer(QpidByteBuffer buffer)
         {
-            EncodingUtils.writeByte(buffer,AMQType.LONG.identifier());
-            EncodingUtils.writeLong(buffer,_value);
+            buffer.put(AMQType.LONG.identifier());
+            buffer.putLong(_value);
         }
 
 
@@ -186,13 +186,12 @@ public abstract class AMQTypedValue
             return _value;
         }
 
-        public void writeToBuffer(DataOutput buffer) throws IOException
+        public void writeToBuffer(QpidByteBuffer buffer)
         {
-            EncodingUtils.writeByte(buffer,AMQType.INT.identifier());
-            EncodingUtils.writeInteger(buffer, _value);
+            buffer.put(AMQType.INT.identifier());
+            buffer.putInt(_value);
         }
 
-
         public int getEncodingSize()
         {
             return EncodingUtils.encodedIntegerLength();

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AccessRequestBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AccessRequestBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AccessRequestBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AccessRequestBody.java Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 
 import org.apache.qpid.QpidException;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.codec.MarkableDataInput;
 
 public class AccessRequestBody extends AMQMethodBodyImpl implements EncodableAMQDataBlock, AMQMethodBody
@@ -130,7 +130,7 @@ public class AccessRequestBody extends A
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeAMQShortString( buffer, _realm );
         writeBitfield( buffer, _bitfield0 );

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AccessRequestOkBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AccessRequestOkBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AccessRequestOkBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/AccessRequestOkBody.java Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 
 import org.apache.qpid.QpidException;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.codec.MarkableDataInput;
 
 public class AccessRequestOkBody extends AMQMethodBodyImpl implements EncodableAMQDataBlock, AMQMethodBody
@@ -76,7 +76,7 @@ public class AccessRequestOkBody extends
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeUnsignedShort( buffer, _ticket );
     }

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicAckBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicAckBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicAckBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicAckBody.java Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 
 import org.apache.qpid.QpidException;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicAckBody extends AMQMethodBodyImpl implements EncodableAMQDataBlock, AMQMethodBody
@@ -89,7 +89,7 @@ public class BasicAckBody extends AMQMet
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeLong( buffer, _deliveryTag );
         writeBitfield( buffer, _bitfield0 );

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicCancelBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicCancelBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicCancelBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicCancelBody.java Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 
 import org.apache.qpid.QpidException;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicCancelBody extends AMQMethodBodyImpl implements EncodableAMQDataBlock, AMQMethodBody
@@ -90,7 +90,7 @@ public class BasicCancelBody extends AMQ
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeAMQShortString( buffer, _consumerTag );
         writeBitfield( buffer, _bitfield0 );

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicCancelOkBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicCancelOkBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicCancelOkBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicCancelOkBody.java Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 
 import org.apache.qpid.QpidException;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicCancelOkBody extends AMQMethodBodyImpl implements EncodableAMQDataBlock, AMQMethodBody
@@ -77,7 +77,7 @@ public class BasicCancelOkBody extends A
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeAMQShortString( buffer, _consumerTag );
     }

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicConsumeBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicConsumeBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicConsumeBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicConsumeBody.java Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 
 import org.apache.qpid.QpidException;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicConsumeBody extends AMQMethodBodyImpl implements EncodableAMQDataBlock, AMQMethodBody
@@ -147,7 +147,7 @@ public class BasicConsumeBody extends AM
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeUnsignedShort( buffer, _ticket );
         writeAMQShortString( buffer, _queue );

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicConsumeOkBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicConsumeOkBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicConsumeOkBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicConsumeOkBody.java Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 
 import org.apache.qpid.QpidException;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicConsumeOkBody extends AMQMethodBodyImpl implements EncodableAMQDataBlock, AMQMethodBody
@@ -77,7 +77,7 @@ public class BasicConsumeOkBody extends
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeAMQShortString( buffer, _consumerTag );
     }

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicContentHeaderProperties.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicContentHeaderProperties.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicContentHeaderProperties.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicContentHeaderProperties.java Tue Dec 15 15:45:46 2015
@@ -20,7 +20,6 @@
  */
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 
 import org.slf4j.Logger;
@@ -228,28 +227,18 @@ public class BasicContentHeaderPropertie
         return _propertyFlags;
     }
 
-    public synchronized void writePropertyListPayload(DataOutput buffer) throws IOException
+    public synchronized long writePropertyListPayload(QpidByteBuffer buffer)
     {
         if(useEncodedForm())
         {
-            int offset;
-            int length = _encodedForm.remaining();;
-            byte[] array;
-            if(_encodedForm.hasArray())
-            {
-                array = _encodedForm.array();
-                offset = _encodedForm.arrayOffset() + _encodedForm.position();
-            }
-            else
-            {
-                array = new byte[length];
-                _encodedForm.copyTo(array);
-                offset = 0;
-            }
-            buffer.write(array, offset, length);
+            buffer.putCopyOf(_encodedForm);
+            return _encodedForm.remaining();
+
         }
         else
         {
+            int propertyListSize = getPropertyListSize();
+
             if ((_propertyFlags & (CONTENT_TYPE_MASK)) != 0)
             {
                 EncodingUtils.writeShortStringBytes(buffer, _contentType);
@@ -267,12 +256,12 @@ public class BasicContentHeaderPropertie
 
             if ((_propertyFlags & DELIVERY_MODE_MASK) != 0)
             {
-                buffer.writeByte(_deliveryMode);
+                buffer.put(_deliveryMode);
             }
 
             if ((_propertyFlags & PRIORITY_MASK) != 0)
             {
-                buffer.writeByte(_priority);
+                buffer.put(_priority);
             }
 
             if ((_propertyFlags & CORRELATION_ID_MASK) != 0)
@@ -304,7 +293,7 @@ public class BasicContentHeaderPropertie
 
             if ((_propertyFlags & TIMESTAMP_MASK) != 0)
             {
-                EncodingUtils.writeTimestamp(buffer, _timestamp);
+                buffer.putLong(_timestamp);
             }
 
             if ((_propertyFlags & TYPE_MASK) != 0)
@@ -326,6 +315,8 @@ public class BasicContentHeaderPropertie
             {
                 EncodingUtils.writeShortStringBytes(buffer, _clusterId);
             }
+
+            return propertyListSize;
         }
     }
 
@@ -467,7 +458,7 @@ public class BasicContentHeaderPropertie
     }
 
 
-    public synchronized long writePropertyListPayload(final ByteBufferSender sender) throws IOException
+    public synchronized long writePropertyListPayload(final ByteBufferSender sender)
     {
         if(useEncodedForm())
         {
@@ -480,29 +471,13 @@ public class BasicContentHeaderPropertie
         {
             int propertyListSize = getPropertyListSize();
             QpidByteBuffer buf = QpidByteBuffer.allocateDirect(propertyListSize);
-            writePropertyListPayload(buf.asDataOutput());
+            writePropertyListPayload(buf);
             buf.flip();
             sender.send(buf);
             buf.dispose();
             return propertyListSize;
         }
 
-    }
-
-    public synchronized long writePropertyListPayload(final QpidByteBuffer buffer) throws IOException
-    {
-        if(useEncodedForm())
-        {
-            buffer.putCopyOf(_encodedForm);
-            return _encodedForm.remaining();
-        }
-        else
-        {
-            int propertyListSize = getPropertyListSize();
-            writePropertyListPayload(buffer.asDataOutput());
-            return propertyListSize;
-        }
-
     }
 
     public synchronized void populatePropertiesFromBuffer(MarkableDataInput buffer, int propertyFlags, int size) throws AMQFrameDecodingException, IOException

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicDeliverBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicDeliverBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicDeliverBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicDeliverBody.java Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 
 import org.apache.qpid.QpidException;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicDeliverBody extends AMQMethodBodyImpl implements EncodableAMQDataBlock, AMQMethodBody
@@ -117,7 +117,7 @@ public class BasicDeliverBody extends AM
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeAMQShortString( buffer, _consumerTag );
         writeLong( buffer, _deliveryTag );

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicGetBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicGetBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicGetBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicGetBody.java Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 
 import org.apache.qpid.QpidException;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicGetBody extends AMQMethodBodyImpl implements EncodableAMQDataBlock, AMQMethodBody
@@ -98,7 +98,7 @@ public class BasicGetBody extends AMQMet
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeUnsignedShort( buffer, _ticket );
         writeAMQShortString( buffer, _queue );

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicGetEmptyBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicGetEmptyBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicGetEmptyBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicGetEmptyBody.java Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 
 import org.apache.qpid.QpidException;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicGetEmptyBody extends AMQMethodBodyImpl implements EncodableAMQDataBlock, AMQMethodBody
@@ -77,7 +77,7 @@ public class BasicGetEmptyBody extends A
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeAMQShortString( buffer, _clusterId );
     }

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicGetOkBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicGetOkBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicGetOkBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicGetOkBody.java Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 
 import org.apache.qpid.QpidException;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 import org.apache.qpid.codec.MarkableDataInput;
 
 public class BasicGetOkBody extends AMQMethodBodyImpl implements EncodableAMQDataBlock, AMQMethodBody
@@ -116,7 +116,7 @@ public class BasicGetOkBody extends AMQM
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeLong( buffer, _deliveryTag );
         writeBitfield( buffer, _bitfield0 );

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -101,7 +101,7 @@ public class BasicNackBody extends AMQMe
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeLong( buffer, _deliveryTag );
         writeBitfield( buffer, _bitfield0 );

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -117,7 +117,7 @@ public class BasicPublishBody extends AM
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeUnsignedShort( buffer, _ticket );
         writeAMQShortString( buffer, _exchange );

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -97,7 +97,7 @@ public class BasicQosBody extends AMQMet
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeUnsignedInteger( buffer, _prefetchSize );
         writeUnsignedShort( buffer, _prefetchCount );

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -68,7 +68,7 @@ public class BasicQosOkBody extends AMQM
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
     }
 

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -81,7 +81,7 @@ public class BasicRecoverBody extends AM
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeBitfield( buffer, _bitfield0 );
     }

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -84,7 +84,7 @@ public class BasicRecoverSyncBody extend
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeBitfield( buffer, _bitfield0 );
     }

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRecoverSyncOkBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRecoverSyncOkBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRecoverSyncOkBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/BasicRecoverSyncOkBody.java Tue Dec 15 15:45:46 2015
@@ -27,10 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 
 public class BasicRecoverSyncOkBody extends AMQMethodBodyImpl implements EncodableAMQDataBlock, AMQMethodBody
 {
@@ -70,7 +68,7 @@ public class BasicRecoverSyncOkBody exte
         return 0;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
     }
 

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -89,7 +89,7 @@ public class BasicRejectBody extends AMQ
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeLong( buffer, _deliveryTag );
         writeBitfield( buffer, _bitfield0 );

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -103,7 +103,7 @@ public class BasicReturnBody extends AMQ
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeUnsignedShort( buffer, _replyCode );
         writeAMQShortString( buffer, _replyText );

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -94,7 +94,7 @@ public class ChannelAlertBody extends AM
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeUnsignedShort( buffer, _replyCode );
         writeAMQShortString( buffer, _replyText );

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -101,7 +101,7 @@ public class ChannelCloseBody extends AM
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeUnsignedShort( buffer, _replyCode );
         writeAMQShortString( buffer, _replyText );

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -67,7 +67,7 @@ public class ChannelCloseOkBody extends
         return 0;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
     }
 

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -73,7 +73,7 @@ public class ChannelFlowBody extends AMQ
         return 1;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeBitfield( buffer, _active ? (byte)1 : (byte)0);
     }

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -74,7 +74,7 @@ public class ChannelFlowOkBody extends A
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeBitfield( buffer, _active ? (byte)1 : (byte)0 );
     }

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -67,7 +67,7 @@ public class ChannelOpenBody extends AMQ
         return 1;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeAMQShortString( buffer, null );
     }

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -78,11 +78,11 @@ public class ChannelOpenOkBody extends A
         return _isAMQP08 ? 0 : 4;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         if(!_isAMQP08)
         {
-            buffer.writeInt(0);
+            buffer.putInt(0);
         }
     }
 

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/CompositeAMQDataBlock.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/CompositeAMQDataBlock.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/CompositeAMQDataBlock.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/CompositeAMQDataBlock.java Tue Dec 15 15:45:46 2015
@@ -20,9 +20,6 @@
  */
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
-import java.io.IOException;
-
 import org.apache.qpid.transport.ByteBufferSender;
 
 public class CompositeAMQDataBlock extends AMQDataBlock implements EncodableAMQDataBlock
@@ -52,16 +49,8 @@ public class CompositeAMQDataBlock exten
         return frameSize;
     }
 
-    public void writePayload(DataOutput buffer) throws IOException
-    {
-        for (int i = 0; i < _blocks.length; i++)
-        {
-            _blocks[i].writePayload(buffer);
-        }
-    }
-
     @Override
-    public long writePayload(final ByteBufferSender sender) throws IOException
+    public long writePayload(final ByteBufferSender sender)
     {
         long size = 0l;
         for (int i = 0; i < _blocks.length; i++)

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -73,7 +73,7 @@ public class ConfirmSelectBody extends A
         return 1;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeBitfield( buffer, _nowait ? (byte)1 : (byte)0 );
     }

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConfirmSelectOkBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConfirmSelectOkBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConfirmSelectOkBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConfirmSelectOkBody.java Tue Dec 15 15:45:46 2015
@@ -27,10 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 
 public class ConfirmSelectOkBody extends AMQMethodBodyImpl implements EncodableAMQDataBlock, AMQMethodBody
 {
@@ -60,7 +58,7 @@ public class ConfirmSelectOkBody extends
         return 0;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
     }
 

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -103,7 +103,7 @@ public class ConnectionCloseBody extends
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeUnsignedShort( buffer, _replyCode );
         writeAMQShortString( buffer, _replyText );

Modified: qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionCloseOkBody.java
URL: http://svn.apache.org/viewvc/qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionCloseOkBody.java?rev=1720183&r1=1720182&r2=1720183&view=diff
==============================================================================
--- qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionCloseOkBody.java (original)
+++ qpid/java/trunk/common/src/main/java/org/apache/qpid/framing/ConnectionCloseOkBody.java Tue Dec 15 15:45:46 2015
@@ -27,10 +27,8 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
-import java.io.IOException;
-
 import org.apache.qpid.QpidException;
+import org.apache.qpid.bytebuffer.QpidByteBuffer;
 
 public class ConnectionCloseOkBody extends AMQMethodBodyImpl implements EncodableAMQDataBlock, AMQMethodBody
 {
@@ -64,7 +62,7 @@ public class ConnectionCloseOkBody exten
         return 0;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
     }
 

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -94,7 +94,7 @@ public class ConnectionOpenBody extends
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeAMQShortString( buffer, _virtualHost );
         writeAMQShortString( buffer, _capabilities );

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -77,7 +77,7 @@ public class ConnectionOpenOkBody extend
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeAMQShortString( buffer, _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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -85,7 +85,7 @@ public class ConnectionRedirectBody exte
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeAMQShortString( buffer, _host );
         writeAMQShortString( buffer, _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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -77,7 +77,7 @@ public class ConnectionSecureBody extend
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeBytes( buffer, _challenge );
     }

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -77,7 +77,7 @@ public class ConnectionSecureOkBody exte
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeBytes( buffer, _response );
     }

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -101,7 +101,7 @@ public class ConnectionStartBody extends
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeUnsignedByte( buffer, _versionMajor );
         writeUnsignedByte( buffer, _versionMinor );

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -95,7 +95,7 @@ public class ConnectionStartOkBody exten
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeFieldTable( buffer, _clientProperties );
         writeAMQShortString( buffer, _mechanism );

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -92,7 +92,7 @@ public class ConnectionTuneBody extends
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeUnsignedShort( buffer, _channelMax );
         writeUnsignedInteger( buffer, _frameMax );

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -27,10 +27,10 @@
 
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 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
@@ -92,7 +92,7 @@ public class ConnectionTuneOkBody extend
         return size;
     }
 
-    public void writeMethodPayload(DataOutput buffer) throws IOException
+    public void writeMethodPayload(QpidByteBuffer buffer)
     {
         writeUnsignedShort( buffer, _channelMax );
         writeUnsignedInteger( buffer, _frameMax );

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -20,7 +20,6 @@
  */
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 import java.nio.ByteBuffer;
 
@@ -58,24 +57,6 @@ public class ContentBody implements AMQB
         return _payload == null ? 0 : _payload.remaining();
     }
 
-    public void writePayload(DataOutput buffer) throws IOException
-    {
-        if (_payload.hasArray())
-        {
-            int start = _payload.arrayOffset() + _payload.position();
-            buffer.write(_payload.array(),
-                         start,
-                         _payload.remaining());
-            _payload.position(_payload.position() + _payload.remaining());
-        }
-        else
-        {
-            byte[] data = new byte[_payload.remaining()];
-            _payload.copyTo(data);
-            buffer.write(data);
-        }
-    }
-
     public void handle(final int channelId, final AMQVersionAwareProtocolSession session)
             throws QpidException
     {
@@ -83,7 +64,7 @@ public class ContentBody implements AMQB
     }
 
     @Override
-    public long writePayload(final ByteBufferSender sender) throws IOException
+    public long writePayload(final ByteBufferSender sender)
     {
         if(_payload != null)
         {

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=1720183&r1=1720182&r2=1720183&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 Tue Dec 15 15:45:46 2015
@@ -20,7 +20,6 @@
  */
 package org.apache.qpid.framing;
 
-import java.io.DataOutput;
 import java.io.IOException;
 
 import org.apache.qpid.QpidException;
@@ -91,17 +90,8 @@ public class ContentHeaderBody implement
         return 2 + 2 + 8 + 2 + _properties.getPropertyListSize();
     }
 
-    public void writePayload(DataOutput buffer) throws IOException
-    {
-        EncodingUtils.writeUnsignedShort(buffer, CLASS_ID);
-        EncodingUtils.writeUnsignedShort(buffer, 0);
-        buffer.writeLong(_bodySize);
-        EncodingUtils.writeUnsignedShort(buffer, _properties.getPropertyFlags());
-        _properties.writePropertyListPayload(buffer);
-    }
-
     @Override
-    public long writePayload(final ByteBufferSender sender) throws IOException
+    public long writePayload(final ByteBufferSender sender)
     {
         QpidByteBuffer data = QpidByteBuffer.allocateDirect(HEADER_SIZE);
         EncodingUtils.writeUnsignedShort(data, CLASS_ID);
@@ -114,7 +104,7 @@ public class ContentHeaderBody implement
         return HEADER_SIZE + _properties.writePropertyListPayload(sender);
     }
 
-    public long writePayload(final QpidByteBuffer buf) throws IOException
+    public long writePayload(final QpidByteBuffer buf)
     {
         EncodingUtils.writeUnsignedShort(buf, CLASS_ID);
         EncodingUtils.writeUnsignedShort(buf, 0);




---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org