You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@activemq.apache.org by ch...@apache.org on 2006/10/27 18:19:06 UTC
svn commit: r468441 [4/6] - in /incubator/activemq/sandbox/qpid: ./ specs/
src/main/java/org/apache/activemq/amqp/broker/
src/main/java/org/apache/activemq/amqp/command/
src/main/java/org/apache/activemq/amqp/transport/
src/main/java/org/apache/activem...
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ConnectionTuneOkBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ConnectionTuneOkBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ConnectionTuneOkBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ConnectionTuneOkBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,79 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class ConnectionTuneOkBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 10;
+ public static final int METHOD_ID = 31;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new ConnectionTuneOkBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ ConnectionTuneOkBody object = (ConnectionTuneOkBody)o;
+
+ return
+ 2 /*channelMax*/+
+ 4 /*frameMax*/+
+ 2 /*heartbeat*/
+ ;
+
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ ConnectionTuneOkBody object = (ConnectionTuneOkBody)o;
+ EncodingUtils.writeUnsignedShort(buffer, object.channelMax);
+ EncodingUtils.writeUnsignedInteger(buffer, object.frameMax);
+ EncodingUtils.writeUnsignedShort(buffer, object.heartbeat);
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ ConnectionTuneOkBody object = (ConnectionTuneOkBody)o;
+ object.channelMax = EncodingUtils.readUnsignedShort(buffer);
+ object.frameMax = EncodingUtils.readUnsignedInteger(buffer);
+ object.heartbeat = EncodingUtils.readUnsignedShort(buffer);
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxSelectBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxSelectBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxSelectBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxSelectBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,67 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class DtxSelectBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 100;
+ public static final int METHOD_ID = 10;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new DtxSelectBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ DtxSelectBody object = (DtxSelectBody)o;
+ return 0;
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ DtxSelectBody object = (DtxSelectBody)o;
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ DtxSelectBody object = (DtxSelectBody)o;
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxSelectOkBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxSelectOkBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxSelectOkBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxSelectOkBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,67 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class DtxSelectOkBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 100;
+ public static final int METHOD_ID = 11;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new DtxSelectOkBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ DtxSelectOkBody object = (DtxSelectOkBody)o;
+ return 0;
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ DtxSelectOkBody object = (DtxSelectOkBody)o;
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ DtxSelectOkBody object = (DtxSelectOkBody)o;
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxStartBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxStartBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxStartBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxStartBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,73 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class DtxStartBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 100;
+ public static final int METHOD_ID = 20;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new DtxStartBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ DtxStartBody object = (DtxStartBody)o;
+
+ return
+ EncodingUtils.encodedShortStringLength(object.dtxIdentifier)
+ ;
+
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ DtxStartBody object = (DtxStartBody)o;
+ EncodingUtils.writeShortStringBytes(buffer, object.dtxIdentifier);
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ DtxStartBody object = (DtxStartBody)o;
+ object.dtxIdentifier = EncodingUtils.readShortString(buffer);
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxStartOkBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxStartOkBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxStartOkBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/DtxStartOkBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,67 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class DtxStartOkBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 100;
+ public static final int METHOD_ID = 21;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new DtxStartOkBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ DtxStartOkBody object = (DtxStartOkBody)o;
+ return 0;
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ DtxStartOkBody object = (DtxStartOkBody)o;
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ DtxStartOkBody object = (DtxStartOkBody)o;
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/EncodingUtils.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/EncodingUtils.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/EncodingUtils.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/EncodingUtils.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,882 @@
+/*
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+import java.nio.charset.Charset;
+import java.util.Iterator;
+import java.util.Map;
+
+import org.apache.activemq.amqp.command.BasicContentHeaderProperties;
+import org.apache.activemq.amqp.command.FieldTable;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+public class EncodingUtils
+{
+ private final static Log _logger = LogFactory.getLog(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;
+
+ public static int encodedShortStringLength(String s)
+ {
+ if (s == null)
+ {
+ return 1;
+ }
+ else
+ {
+ return (short) (1 + s.length());
+ }
+ }
+
+ public static int encodedLongStringLength(String s)
+ {
+ if (s == null)
+ {
+ return 4;
+ }
+ else
+ {
+ return 4 + s.length();
+ }
+ }
+
+ public static int encodedLongStringLength(char[] s)
+ {
+ if (s == null)
+ {
+ return 4;
+ }
+ else
+ {
+ return 4 + s.length;
+ }
+ }
+
+ public static int encodedLongstrLength(byte[] bytes)
+ {
+ if (bytes == null)
+ {
+ return 4;
+ }
+ else
+ {
+ return 4 + bytes.length;
+ }
+ }
+
+ public static int encodedFieldTableLength(FieldTable table)
+ {
+ if (table == null)
+ {
+ return 4;
+ }
+ else
+ {
+ return (int)getFieldTableSize(table) + 4;
+ }
+ }
+
+
+ public static void writeShortStringBytes(DataOutput buffer, String s) throws IOException
+ {
+ if (s != null)
+ {
+ byte[] encodedString = new byte[s.length()];
+ char[] cha = s.toCharArray();
+ for (int i = 0; i < cha.length; i++)
+ {
+ encodedString[i] = (byte) cha[i];
+ }
+ // TODO: check length fits in an unsigned byte
+ writeUnsignedByte(buffer, (short) encodedString.length);
+ buffer.write(encodedString);
+ }
+ else
+ {
+ // really writing out unsigned byte
+ buffer.writeByte((byte) 0);
+ }
+ }
+
+ public static void writeLongStringBytes(DataOutput buffer, String s) throws IOException
+ {
+ assert s == null || s.length() <= 0xFFFE;
+ if (s != null)
+ {
+ int len = s.length();
+ writeUnsignedInteger(buffer, s.length());
+ byte[] encodedString = new byte[len];
+ char[] cha = s.toCharArray();
+ for (int i = 0; i < cha.length; i++)
+ {
+ encodedString[i] = (byte) cha[i];
+ }
+ buffer.write(encodedString);
+ }
+ else
+ {
+ writeUnsignedInteger(buffer, 0);
+ }
+ }
+
+ public static void writeLongStringBytes(DataOutput buffer, char[] s) throws IOException
+ {
+ assert s == null || s.length <= 0xFFFE;
+ if (s != null)
+ {
+ int len = s.length;
+ writeUnsignedInteger(buffer, s.length);
+ byte[] encodedString = new byte[len];
+ for (int i = 0; i < s.length; i++)
+ {
+ encodedString[i] = (byte) s[i];
+ }
+ buffer.write(encodedString);
+ }
+ else
+ {
+ writeUnsignedInteger(buffer, 0);
+ }
+ }
+
+ public static void writeLongStringBytes(DataOutput buffer, byte[] bytes) throws IOException
+ {
+ assert bytes == null || bytes.length <= 0xFFFE;
+ if (bytes != null)
+ {
+ writeUnsignedInteger(buffer, bytes.length);
+ buffer.write(bytes);
+ }
+ else
+ {
+ writeUnsignedInteger(buffer, 0);
+ }
+ }
+
+ public static void writeUnsignedByte(DataOutput buffer, short b) throws IOException
+ {
+ byte bv = (byte) b;
+ buffer.writeByte(bv);
+ }
+
+ public static void writeUnsignedShort(DataOutput buffer, int s) throws IOException
+ {
+ // TODO: Is this comparison safe? Do I need to cast RHS to long?
+ if (s < Short.MAX_VALUE)
+ {
+ buffer.writeShort((short) s);
+ }
+ else
+ {
+ short sv = (short) s;
+ buffer.writeByte((byte) (0xFF & (sv >> 8)));
+ buffer.writeByte((byte) (0xFF & sv));
+ }
+ }
+
+ public static void writeUnsignedInteger(DataOutput buffer, long l) throws IOException
+ {
+ // TODO: Is this comparison safe? Do I need to cast RHS to long?
+ if (l < Integer.MAX_VALUE)
+ {
+ buffer.writeInt((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.writeByte((byte) (0xFF & (iv >> 24)));
+ buffer.writeByte((byte) (0xFF & (iv >> 16)));
+ buffer.writeByte((byte) (0xFF & (iv >> 8)));
+ buffer.writeByte((byte) (0xFF & iv));
+ }
+ }
+
+ public static void writeFieldTableBytes(DataOutput buffer, FieldTable table) throws IOException
+ {
+ if (table != null)
+ {
+ writeFieldTable(buffer, table);
+ }
+ else
+ {
+ writeUnsignedInteger(buffer, 0);
+ }
+ }
+
+ public static void writeBooleans(DataOutput buffer, boolean[] values) throws IOException
+ {
+ byte packedValue = 0;
+ for (int i = 0; i < values.length; i++)
+ {
+ if (values[i])
+ {
+ packedValue = (byte) (packedValue | (1 << i));
+ }
+ }
+
+ buffer.writeByte(packedValue);
+ }
+
+ /**
+ * This is used for writing longstrs.
+ * @param buffer
+ * @param data
+ * @throws IOException
+ */
+ public static void writeLongstr(DataOutput buffer, byte[] data) throws IOException
+ {
+ if (data != null)
+ {
+ writeUnsignedInteger(buffer, data.length);
+ buffer.write(data);
+ }
+ else
+ {
+ writeUnsignedInteger(buffer, 0);
+ }
+ }
+
+ public static void writeTimestamp(DataOutput buffer, long timestamp) throws IOException
+ {
+ writeUnsignedInteger(buffer, 0/*timestamp msb*/);
+ writeUnsignedInteger(buffer, timestamp);
+ }
+
+ public static boolean[] readBooleans(DataInput buffer) throws IOException
+ {
+ byte packedValue = buffer.readByte();
+ boolean[] result = new boolean[8];
+
+ for (int i = 0; i < 8; i++)
+ {
+ result[i] = ((packedValue & (1 << i)) != 0);
+ }
+ return result;
+ }
+
+ public static FieldTable readFieldTable(DataInput buffer) throws IOException
+ {
+ long length = readUnsignedInteger(buffer);
+ if (length == 0)
+ {
+ return null;
+ }
+ else
+ {
+ FieldTable table = new FieldTable();
+ readFieldTable(buffer, length, table);
+ return table;
+ }
+ }
+
+
+ public static short readUnsignedByte(DataInput buffer) throws IOException
+ {
+ return (short)(buffer.readByte() & 0xFF);
+ }
+
+ public static int readUnsignedShort(DataInput buffer) throws IOException
+ {
+ return (int)(
+ ((buffer.readByte() & 0xFF)<<8) |
+ ((buffer.readByte() & 0xFF))
+ );
+ }
+
+ public static long readUnsignedInteger(DataInput buffer) throws IOException
+ {
+ return (long)(
+ ((buffer.readByte() & 0xFF)<<24) |
+ ((buffer.readByte() & 0xFF)<<16) |
+ ((buffer.readByte() & 0xFF)<<8) |
+ ((buffer.readByte() & 0xFF))
+ );
+ }
+
+
+ public static String readShortString(DataInput buffer) throws IOException
+ {
+ short length = readUnsignedByte(buffer);
+ if (length == 0)
+ {
+ return null;
+ }
+ else
+ {
+ // this may seem rather odd to declare two array but testing has shown
+ // that constructing a string from a byte array is 5 (five) times slower
+ // than constructing one from a char array.
+ // this approach here is valid since we know that all the chars are
+ // ASCII (0-127)
+ byte[] stringBytes = new byte[length];
+ buffer.readFully(stringBytes, 0, length);
+ char[] stringChars = new char[length];
+ for (int i = 0; i < stringChars.length; i++)
+ {
+ stringChars[i] = (char) stringBytes[i];
+ }
+
+ return new String(stringChars);
+ }
+ }
+
+ public static String readLongString(DataInput buffer) throws IOException
+ {
+ long length = readUnsignedInteger(buffer);
+ if (length == 0)
+ {
+ return null;
+ }
+ else
+ {
+ // this may seem rather odd to declare two array but testing has shown
+ // that constructing a string from a byte array is 5 (five) times slower
+ // than constructing one from a char array.
+ // this approach here is valid since we know that all the chars are
+ // ASCII (0-127)
+ byte[] stringBytes = new byte[(int)length];
+ buffer.readFully(stringBytes, 0, (int)length);
+ char[] stringChars = new char[(int)length];
+ for (int i = 0; i < stringChars.length; i++)
+ {
+ stringChars[i] = (char) stringBytes[i];
+ }
+ return new String(stringChars);
+ }
+ }
+
+ public static byte[] readLongstr(DataInput buffer) throws IOException
+ {
+ long length = readUnsignedInteger(buffer);
+ if (length == 0)
+ {
+ return null;
+ }
+ else
+ {
+ byte[] result = new byte[(int)length];
+ buffer.readFully(result);
+ return result;
+ }
+ }
+
+ public static long readTimestamp(DataInput buffer) throws IOException
+ {
+ // Discard msb from AMQ timestamp
+ readUnsignedInteger(buffer);
+ return readUnsignedInteger(buffer);
+ }
+
+ // Will barf with a NPE on a null input. Not sure whether it should return null or
+ // an empty field-table (which would be slower - perhaps unnecessarily).
+ //
+ // Some sample input and the result output:
+ //
+ // Input: "a=1" "a=2 c=3" "a=3 c=4 d" "a='four' b='five'" "a=bad"
+ //
+ // Parsing <a=1>...
+ // {a=1}
+ // Parsing <a=2 c=3>...
+ // {a=2, c=3}
+ // Parsing <a=3 c=4 d>...
+ // {a=3, c=4, d=null}
+ // Parsing <a='four' b='five'>...
+ // {a=four, b=five}
+ // Parsing <a=bad>...
+ // java.lang.IllegalArgumentException: a: Invalid integer in <bad> from <a=bad>.
+ //
+ public static FieldTable createFieldTableFromMessageSelector(String selector)
+ {
+ boolean debug = _logger.isDebugEnabled();
+
+ // TODO: Doesn't support embedded quotes properly.
+ String[] expressions = selector.split(" +");
+
+ FieldTable result = new FieldTable();
+
+ for (int i = 0; i < expressions.length; i++)
+ {
+ String expr = expressions[i];
+
+ if (debug)
+ {
+ _logger.debug("Expression = <" + expr + ">");
+ }
+
+ int equals = expr.indexOf('=');
+
+ if (equals < 0)
+ {
+ // Existence check
+ result.put("S" + expr.trim(), null);
+ }
+ else
+ {
+ String key = expr.substring(0, equals).trim();
+ String value = expr.substring(equals + 1).trim();
+
+ if (debug)
+ {
+ _logger.debug("Key = <" + key + ">, Value = <" + value + ">");
+ }
+
+ if (value.charAt(0) == '\'')
+ {
+ if (value.charAt(value.length() - 1) != '\'')
+ {
+ throw new IllegalArgumentException(key + ": Missing quote in <" + value + "> from <" + selector + ">.");
+ }
+ else
+ {
+ value = value.substring(1, value.length() - 1);
+
+ result.put("S" + key, value);
+ }
+ }
+ else
+ {
+ try
+ {
+ int intValue = Integer.parseInt(value);
+ result.put("i" + key, value);
+ }
+ catch (NumberFormatException e)
+ {
+ throw new IllegalArgumentException(key + ": Invalid integer in <" + value + "> from <" + selector + ">.");
+
+ }
+ }
+ }
+ }
+
+ if (debug)
+ {
+ _logger.debug("Field-table created from <" + selector + "> is <" + result + ">");
+ }
+
+ return (result);
+
+ }
+
+ static byte[] hexToByteArray(String id)
+ {
+ // Should check param for null, long enough for this check, upper-case and trailing char
+ String s = (id.charAt(1) == 'x') ? id.substring(2) : id; // strip 0x
+
+ int len = s.length();
+ int byte_len = len / 2;
+ byte[] b = new byte[byte_len];
+
+ for (int i = 0; i < byte_len; i++)
+ {
+ // fixme: refine these repetitive subscript calcs.
+ int ch = i * 2;
+
+ byte b1 = Byte.parseByte(s.substring(ch, ch + 1), 16);
+ byte b2 = Byte.parseByte(s.substring(ch + 1, ch + 2), 16);
+
+ b[i] = (byte) (b1 * 16 + b2);
+ }
+
+ return (b);
+ }
+
+ 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);
+ }
+
+ public static String convertToHexString(byte[] from)
+ {
+ return (new String(convertToHexCharArray(from)));
+ }
+
+// public static String convertToHexString(ByteBuffer bb)
+// {
+// int size = bb.limit();
+//
+// byte[] from = new byte[size];
+//
+// // Is this not the same.
+// //bb.get(from, 0, size);
+// for (int i = 0; i < size; i++)
+// {
+// from[i] = bb.get(i);
+// }
+//
+// return (new String(convertToHexCharArray(from)));
+// }
+
+ public static void main(String[] args)
+ {
+ for (int i = 0; i < args.length; i++)
+ {
+ String selector = args[i];
+
+ System.err.println("Parsing <" + selector + ">...");
+
+ try
+ {
+ System.err.println(createFieldTableFromMessageSelector(selector));
+ }
+ catch (IllegalArgumentException e)
+ {
+ System.err.println(e);
+ }
+ }
+ }
+
+ private static char hex_chars[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'};
+
+
+ /**
+ * Construct a new field table.
+ *
+ * @param buffer the buffer from which to read data. The length byte must be read already
+ * @param length the length of the field table. Must be > 0.
+ * @throws AMQFrameDecodingException if there is an error decoding the table
+ */
+ static public void readFieldTable(DataInput buffer, final long length, FieldTable table) throws IOException {
+ int sizeRead = 0;
+ while (sizeRead < length) {
+ final String key = EncodingUtils.readShortString(buffer);
+ byte iType = buffer.readByte();
+
+ sizeRead += EncodingUtils.encodedShortStringLength(key)+1;
+
+ final char type = (char) iType;
+ Object value;
+ switch (type)
+ {
+ case 'S':
+ value = EncodingUtils.readLongString(buffer);
+ sizeRead += EncodingUtils.encodedLongStringLength((String)value);
+ break;
+ case 'I':
+ value = new Long(EncodingUtils.readUnsignedInteger(buffer));
+ sizeRead += 4;
+ break;
+ default:
+ String msg = "Field '" + key + "' - unsupported field table type: " + type;
+ // some extra debug information...
+ msg += " (" + iType + "), length=" + length + ", sizeRead=" + sizeRead + ", totalSize=" + length;
+ throw new IOException(msg);
+ }
+
+ // we deliberately want to call put in the parent class since we do
+ // not need to do the size calculations
+ table.put(key, value);
+ }
+ }
+
+ static public void writeFieldTable(DataOutput buffer, FieldTable table) throws IOException
+ {
+ long _encodedSize = getFieldTableSize(table);
+ // write out the total length, which we have kept up to date as data is added
+ EncodingUtils.writeUnsignedInteger(buffer, _encodedSize);
+ final Iterator it = table.entrySet().iterator();
+ while (it.hasNext())
+ {
+ Map.Entry me = (Map.Entry) it.next();
+ String key = (String) me.getKey();
+
+ EncodingUtils.writeShortStringBytes(buffer, key);
+ Object value = me.getValue();
+
+ if (value instanceof byte[])
+ {
+ buffer.writeByte((byte) 'S');
+ EncodingUtils.writeLongstr(buffer, (byte[]) value);
+ }
+ else if (value instanceof String)
+ {
+ // TODO: look at using proper charset encoder
+ buffer.writeByte((byte) 'S');
+ EncodingUtils.writeLongStringBytes(buffer, (String) value);
+ }
+ else if (value instanceof Integer)
+ {
+ buffer.writeByte((byte) 'I');
+ EncodingUtils.writeUnsignedInteger(buffer, ((Integer) value).longValue());
+ }
+ else if (value instanceof Long)
+ {
+ buffer.writeByte((byte) 'I');
+ EncodingUtils.writeUnsignedInteger(buffer, ((Long) value).longValue());
+ }
+ else
+ {
+ throw new IllegalArgumentException("Key '" + key + "': Unsupported type in field table, type: " + value.getClass());
+ }
+ }
+ }
+
+ static private long getFieldTableSize(FieldTable table) {
+ long rc = 0;
+ for (Iterator iter = table.entrySet().iterator(); iter.hasNext();) {
+ Map.Entry entry = (Map.Entry) iter.next();
+ rc += EncodingUtils.encodedShortStringLength((String) entry
+ .getKey());
+ Object value = entry.getValue();
+
+ // the extra byte if for the type indicator that is written out
+ if (value instanceof String) {
+ rc += 1 + EncodingUtils.encodedLongStringLength((String) value);
+ } else if (value instanceof char[]) {
+ rc += 1 + EncodingUtils.encodedLongStringLength((char[]) value);
+ } else if (value instanceof Integer) {
+ rc += 1 + 4;
+ } else if (value instanceof Long) {
+ rc += 1 + 4;
+ } else {
+ throw new IllegalArgumentException("Unsupported type in field table: " + value.getClass());
+ }
+
+ }
+ return rc;
+ }
+
+
+ /////////////////////////////////////////////////////////////////////////
+ //
+ // HANDLE Marhsalling ContentHeaderProperties objects
+ //
+ /////////////////////////////////////////////////////////////////////////
+ static final int CONTENT_TYPE_FLAG = 1 << 15;
+ static final int ENCODING_FLAG = 1 << 14;
+ static final int HEADERS_FLAG = 1 << 13;
+ static final int DELIVERY_MODE_FLAG = 1 << 12;
+ static final int PRIORITY_FLAG = 1 << 11;
+ static final int CORRELATION_ID_FLAG = 1 << 10;
+ static final int REPLY_TO_FLAG = 1 << 9;
+ static final int EXPIRATION_FLAG = 1 << 8;
+ static final int MESSAGE_ID_FLAG = 1 << 7;
+ static final int TIMESTAMP_FLAG = 1 << 6;
+ static final int TYPE_FLAG = 1 << 5;
+ static final int USER_ID_FLAG = 1 << 4;
+ static final int APP_ID_FLAG = 1 << 3;
+ static final int CLUSTER_ID_FLAG = 1 << 2;
+
+ public static int getContentHeaderPropertiesSize(BasicContentHeaderProperties properties) {
+ int size = 2;
+ if( properties.contentType != null ) {
+ size += EncodingUtils.encodedShortStringLength(properties.contentType);
+ }
+ if( properties.encoding != null ) {
+ size += EncodingUtils.encodedShortStringLength(properties.encoding);
+ }
+ if( properties.headers != null ) {
+ size += EncodingUtils.encodedFieldTableLength(properties.headers);
+ }
+ if( properties.deliveryMode != 0 ) {
+ size += 1;
+ }
+ if( properties.priority != 0 ) {
+ size += 1;
+ }
+ if( properties.correlationId != null ) {
+ size += EncodingUtils.encodedShortStringLength(properties.correlationId);
+ }
+ if( properties.replyTo != null ) {
+ size += EncodingUtils.encodedShortStringLength(properties.replyTo);
+ }
+ if( properties.expiration != 0 ) {
+ size += EncodingUtils.encodedShortStringLength(String.valueOf(properties.expiration));
+ }
+ if( properties.messageId != null ) {
+ size += EncodingUtils.encodedShortStringLength(properties.messageId);
+ }
+ if( properties.timestamp != 0 ) {
+ size += 8;
+ }
+ if( properties.type != null ) {
+ size += EncodingUtils.encodedShortStringLength(properties.type);
+ }
+ if( properties.userId != null ) {
+ size += EncodingUtils.encodedShortStringLength(properties.userId);
+ }
+ if( properties.appId != null ) {
+ size += EncodingUtils.encodedShortStringLength(properties.appId);
+ }
+ if( properties.clusterId != null ) {
+ size += EncodingUtils.encodedShortStringLength(properties.clusterId);
+ }
+
+ return size;
+ }
+
+ static public void marshalContentHeaderProperties(DataOutput buffer, BasicContentHeaderProperties properties) throws IOException
+ {
+ int propertyFlags=0;
+ if( properties.contentType != null ) {
+ propertyFlags |= CONTENT_TYPE_FLAG;
+ }
+ if( properties.encoding != null ) {
+ propertyFlags |= ENCODING_FLAG;
+ }
+ if( properties.headers != null ) {
+ propertyFlags |= HEADERS_FLAG;
+ }
+ if( properties.deliveryMode != 0 ) {
+ propertyFlags |= DELIVERY_MODE_FLAG;
+ }
+ if( properties.priority != 0 ) {
+ propertyFlags |= PRIORITY_FLAG;
+ }
+ if( properties.correlationId != null ) {
+ propertyFlags |= CORRELATION_ID_FLAG;
+ }
+ if( properties.replyTo != null ) {
+ propertyFlags |= REPLY_TO_FLAG;
+ }
+ if( properties.expiration != 0 ) {
+ propertyFlags |= EXPIRATION_FLAG;
+ }
+ if( properties.messageId != null ) {
+ propertyFlags |= MESSAGE_ID_FLAG;
+ }
+ if( properties.timestamp != 0 ) {
+ propertyFlags |= TIMESTAMP_FLAG;
+ }
+ if( properties.type != null ) {
+ propertyFlags |= TYPE_FLAG;
+ }
+ if( properties.userId != null ) {
+ propertyFlags |= USER_ID_FLAG;
+ }
+ if( properties.appId != null ) {
+ propertyFlags |= APP_ID_FLAG;
+ }
+ if( properties.clusterId != null ) {
+ propertyFlags |= CLUSTER_ID_FLAG;
+ }
+
+ EncodingUtils.writeUnsignedShort(buffer, propertyFlags);
+
+ if( properties.contentType != null ) {
+ EncodingUtils.writeShortStringBytes(buffer, properties.contentType);
+ }
+ if( properties.encoding != null ) {
+ EncodingUtils.writeShortStringBytes(buffer, properties.encoding);
+ }
+ if( properties.headers != null ) {
+ EncodingUtils.writeFieldTableBytes(buffer, properties.headers);
+ }
+ if( properties.deliveryMode != 0 ) {
+ buffer.writeByte(properties.deliveryMode);
+ }
+ if( properties.priority != 0 ) {
+ buffer.writeByte(properties.priority);
+ }
+ if( properties.correlationId != null ) {
+ EncodingUtils.writeShortStringBytes(buffer, properties.correlationId);
+ }
+ if( properties.replyTo != null ) {
+ EncodingUtils.writeShortStringBytes(buffer, properties.replyTo);
+ }
+ if( properties.expiration != 0 ) {
+ EncodingUtils.writeShortStringBytes(buffer, String.valueOf(properties.expiration));
+ }
+ if( properties.messageId != null ) {
+ EncodingUtils.writeShortStringBytes(buffer, properties.messageId);
+ }
+ if( properties.timestamp != 0 ) {
+ EncodingUtils.writeTimestamp(buffer, properties.timestamp);
+ }
+ if( properties.type != null ) {
+ EncodingUtils.writeShortStringBytes(buffer, properties.type);
+ }
+ if( properties.userId != null ) {
+ EncodingUtils.writeShortStringBytes(buffer, properties.userId);
+ }
+ if( properties.appId != null ) {
+ EncodingUtils.writeShortStringBytes(buffer, properties.appId);
+ }
+ if( properties.clusterId != null ) {
+ EncodingUtils.writeShortStringBytes(buffer, properties.clusterId);
+ }
+ }
+
+ static public void unmarshalContentHeaderProperties(DataInput buffer, BasicContentHeaderProperties properties) throws IOException
+ {
+ int propertyFlags = EncodingUtils.readUnsignedShort(buffer);
+
+ properties.contentType = ((propertyFlags & CONTENT_TYPE_FLAG) > 0) ?
+ EncodingUtils.readShortString(buffer) : null;
+ properties.encoding = ((propertyFlags & ENCODING_FLAG) > 0) ?
+ EncodingUtils.readShortString(buffer) : null;
+ properties.headers = ((propertyFlags & HEADERS_FLAG) > 0) ?
+ EncodingUtils.readFieldTable(buffer) : null;
+ properties.deliveryMode = ((propertyFlags & DELIVERY_MODE_FLAG) > 0) ?
+ buffer.readByte() : 0;
+ properties.priority = ((propertyFlags & PRIORITY_FLAG) > 0) ?
+ buffer.readByte() : 0;
+ properties.correlationId = ((propertyFlags & CORRELATION_ID_FLAG) > 0) ?
+ EncodingUtils.readShortString(buffer) : null;
+ properties.replyTo = ((propertyFlags & REPLY_TO_FLAG) > 0) ?
+ EncodingUtils.readShortString(buffer) : null;
+ properties.expiration = ((propertyFlags & EXPIRATION_FLAG) > 0) ?
+ Long.parseLong(EncodingUtils.readShortString(buffer)) : 0;
+ properties.messageId = ((propertyFlags & MESSAGE_ID_FLAG) > 0) ?
+ EncodingUtils.readShortString(buffer) : null;
+ properties.timestamp = ((propertyFlags & TIMESTAMP_FLAG) > 0) ?
+ EncodingUtils.readTimestamp(buffer) : 0;
+ properties.type = ((propertyFlags & TYPE_FLAG) > 0) ?
+ EncodingUtils.readShortString(buffer) : null;
+ properties.userId = ((propertyFlags & USER_ID_FLAG) > 0) ?
+ EncodingUtils.readShortString(buffer) : null;
+ properties.appId = ((propertyFlags & APP_ID_FLAG) > 0) ?
+ EncodingUtils.readShortString(buffer) : null;
+ properties.clusterId = ((propertyFlags & CLUSTER_ID_FLAG) > 0) ?
+ EncodingUtils.readShortString(buffer) : null;
+ }
+
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeclareBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeclareBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeclareBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeclareBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,93 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class ExchangeDeclareBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 40;
+ public static final int METHOD_ID = 10;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new ExchangeDeclareBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ ExchangeDeclareBody object = (ExchangeDeclareBody)o;
+
+ return
+ 2 /*ticket*/+
+ EncodingUtils.encodedShortStringLength(object.exchange)+
+ EncodingUtils.encodedShortStringLength(object.type)+
+ 1 /*passive*/+
+ 0 /*durable*/+
+ 0 /*autoDelete*/+
+ 0 /*internal*/+
+ 0 /*nowait*/+
+ EncodingUtils.encodedFieldTableLength(object.arguments)
+ ;
+
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ ExchangeDeclareBody object = (ExchangeDeclareBody)o;
+ EncodingUtils.writeUnsignedShort(buffer, object.ticket);
+ EncodingUtils.writeShortStringBytes(buffer, object.exchange);
+ EncodingUtils.writeShortStringBytes(buffer, object.type);
+ EncodingUtils.writeBooleans(buffer, new boolean[]{ object.passive, object.durable, object.autoDelete, object.internal, object.nowait});
+ EncodingUtils.writeFieldTableBytes(buffer, object.arguments);
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ ExchangeDeclareBody object = (ExchangeDeclareBody)o;
+ object.ticket = EncodingUtils.readUnsignedShort(buffer);
+ object.exchange = EncodingUtils.readShortString(buffer);
+ object.type = EncodingUtils.readShortString(buffer);
+ boolean[] bools = EncodingUtils.readBooleans(buffer);object.passive = bools[0];
+ object.durable = bools[1];
+ object.autoDelete = bools[2];
+ object.internal = bools[3];
+ object.nowait = bools[4];
+ object.arguments = EncodingUtils.readFieldTable(buffer);
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeclareOkBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeclareOkBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeclareOkBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeclareOkBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,67 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class ExchangeDeclareOkBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 40;
+ public static final int METHOD_ID = 11;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new ExchangeDeclareOkBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ ExchangeDeclareOkBody object = (ExchangeDeclareOkBody)o;
+ return 0;
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ ExchangeDeclareOkBody object = (ExchangeDeclareOkBody)o;
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ ExchangeDeclareOkBody object = (ExchangeDeclareOkBody)o;
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeleteBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeleteBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeleteBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeleteBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,81 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class ExchangeDeleteBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 40;
+ public static final int METHOD_ID = 20;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new ExchangeDeleteBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ ExchangeDeleteBody object = (ExchangeDeleteBody)o;
+
+ return
+ 2 /*ticket*/+
+ EncodingUtils.encodedShortStringLength(object.exchange)+
+ 1 /*ifUnused*/+
+ 0 /*nowait*/
+ ;
+
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ ExchangeDeleteBody object = (ExchangeDeleteBody)o;
+ EncodingUtils.writeUnsignedShort(buffer, object.ticket);
+ EncodingUtils.writeShortStringBytes(buffer, object.exchange);
+ EncodingUtils.writeBooleans(buffer, new boolean[]{ object.ifUnused, object.nowait});
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ ExchangeDeleteBody object = (ExchangeDeleteBody)o;
+ object.ticket = EncodingUtils.readUnsignedShort(buffer);
+ object.exchange = EncodingUtils.readShortString(buffer);
+ boolean[] bools = EncodingUtils.readBooleans(buffer);object.ifUnused = bools[0];
+ object.nowait = bools[1];
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeleteOkBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeleteOkBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeleteOkBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/ExchangeDeleteOkBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,67 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class ExchangeDeleteOkBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 40;
+ public static final int METHOD_ID = 21;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new ExchangeDeleteOkBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ ExchangeDeleteOkBody object = (ExchangeDeleteOkBody)o;
+ return 0;
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ ExchangeDeleteOkBody object = (ExchangeDeleteOkBody)o;
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ ExchangeDeleteOkBody object = (ExchangeDeleteOkBody)o;
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileAckBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileAckBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileAckBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileAckBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,76 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class FileAckBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 70;
+ public static final int METHOD_ID = 90;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new FileAckBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ FileAckBody object = (FileAckBody)o;
+
+ return
+ 8 /*deliveryTag*/+
+ 1 /*multiple*/
+ ;
+
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ FileAckBody object = (FileAckBody)o;
+ buffer.writeLong(object.deliveryTag);
+ EncodingUtils.writeBooleans(buffer, new boolean[]{ object.multiple});
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ FileAckBody object = (FileAckBody)o;
+ object.deliveryTag = buffer.readLong();
+ boolean[] bools = EncodingUtils.readBooleans(buffer);object.multiple = bools[0];
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileCancelBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileCancelBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileCancelBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileCancelBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,76 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class FileCancelBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 70;
+ public static final int METHOD_ID = 30;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new FileCancelBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ FileCancelBody object = (FileCancelBody)o;
+
+ return
+ EncodingUtils.encodedShortStringLength(object.consumerTag)+
+ 1 /*nowait*/
+ ;
+
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ FileCancelBody object = (FileCancelBody)o;
+ EncodingUtils.writeShortStringBytes(buffer, object.consumerTag);
+ EncodingUtils.writeBooleans(buffer, new boolean[]{ object.nowait});
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ FileCancelBody object = (FileCancelBody)o;
+ object.consumerTag = EncodingUtils.readShortString(buffer);
+ boolean[] bools = EncodingUtils.readBooleans(buffer);object.nowait = bools[0];
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileCancelOkBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileCancelOkBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileCancelOkBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileCancelOkBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,73 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class FileCancelOkBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 70;
+ public static final int METHOD_ID = 31;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new FileCancelOkBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ FileCancelOkBody object = (FileCancelOkBody)o;
+
+ return
+ EncodingUtils.encodedShortStringLength(object.consumerTag)
+ ;
+
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ FileCancelOkBody object = (FileCancelOkBody)o;
+ EncodingUtils.writeShortStringBytes(buffer, object.consumerTag);
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ FileCancelOkBody object = (FileCancelOkBody)o;
+ object.consumerTag = EncodingUtils.readShortString(buffer);
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileConsumeBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileConsumeBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileConsumeBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileConsumeBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,88 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class FileConsumeBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 70;
+ public static final int METHOD_ID = 20;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new FileConsumeBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ FileConsumeBody object = (FileConsumeBody)o;
+
+ return
+ 2 /*ticket*/+
+ EncodingUtils.encodedShortStringLength(object.queue)+
+ EncodingUtils.encodedShortStringLength(object.consumerTag)+
+ 1 /*noLocal*/+
+ 0 /*noAck*/+
+ 0 /*exclusive*/+
+ 0 /*nowait*/
+ ;
+
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ FileConsumeBody object = (FileConsumeBody)o;
+ EncodingUtils.writeUnsignedShort(buffer, object.ticket);
+ EncodingUtils.writeShortStringBytes(buffer, object.queue);
+ EncodingUtils.writeShortStringBytes(buffer, object.consumerTag);
+ EncodingUtils.writeBooleans(buffer, new boolean[]{ object.noLocal, object.noAck, object.exclusive, object.nowait});
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ FileConsumeBody object = (FileConsumeBody)o;
+ object.ticket = EncodingUtils.readUnsignedShort(buffer);
+ object.queue = EncodingUtils.readShortString(buffer);
+ object.consumerTag = EncodingUtils.readShortString(buffer);
+ boolean[] bools = EncodingUtils.readBooleans(buffer);object.noLocal = bools[0];
+ object.noAck = bools[1];
+ object.exclusive = bools[2];
+ object.nowait = bools[3];
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileConsumeOkBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileConsumeOkBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileConsumeOkBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileConsumeOkBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,73 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class FileConsumeOkBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 70;
+ public static final int METHOD_ID = 21;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new FileConsumeOkBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ FileConsumeOkBody object = (FileConsumeOkBody)o;
+
+ return
+ EncodingUtils.encodedShortStringLength(object.consumerTag)
+ ;
+
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ FileConsumeOkBody object = (FileConsumeOkBody)o;
+ EncodingUtils.writeShortStringBytes(buffer, object.consumerTag);
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ FileConsumeOkBody object = (FileConsumeOkBody)o;
+ object.consumerTag = EncodingUtils.readShortString(buffer);
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileDeliverBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileDeliverBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileDeliverBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileDeliverBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,88 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class FileDeliverBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 70;
+ public static final int METHOD_ID = 80;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new FileDeliverBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ FileDeliverBody object = (FileDeliverBody)o;
+
+ return
+ EncodingUtils.encodedShortStringLength(object.consumerTag)+
+ 8 /*deliveryTag*/+
+ 1 /*redelivered*/+
+ EncodingUtils.encodedShortStringLength(object.exchange)+
+ EncodingUtils.encodedShortStringLength(object.routingKey)+
+ EncodingUtils.encodedShortStringLength(object.identifier)
+ ;
+
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ FileDeliverBody object = (FileDeliverBody)o;
+ EncodingUtils.writeShortStringBytes(buffer, object.consumerTag);
+ buffer.writeLong(object.deliveryTag);
+ EncodingUtils.writeBooleans(buffer, new boolean[]{ object.redelivered});
+ EncodingUtils.writeShortStringBytes(buffer, object.exchange);
+ EncodingUtils.writeShortStringBytes(buffer, object.routingKey);
+ EncodingUtils.writeShortStringBytes(buffer, object.identifier);
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ FileDeliverBody object = (FileDeliverBody)o;
+ object.consumerTag = EncodingUtils.readShortString(buffer);
+ object.deliveryTag = buffer.readLong();
+ boolean[] bools = EncodingUtils.readBooleans(buffer);object.redelivered = bools[0];
+ object.exchange = EncodingUtils.readShortString(buffer);
+ object.routingKey = EncodingUtils.readShortString(buffer);
+ object.identifier = EncodingUtils.readShortString(buffer);
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileOpenBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileOpenBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileOpenBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileOpenBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,76 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class FileOpenBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 70;
+ public static final int METHOD_ID = 40;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new FileOpenBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ FileOpenBody object = (FileOpenBody)o;
+
+ return
+ EncodingUtils.encodedShortStringLength(object.identifier)+
+ 8 /*contentSize*/
+ ;
+
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ FileOpenBody object = (FileOpenBody)o;
+ EncodingUtils.writeShortStringBytes(buffer, object.identifier);
+ buffer.writeLong(object.contentSize);
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ FileOpenBody object = (FileOpenBody)o;
+ object.identifier = EncodingUtils.readShortString(buffer);
+ object.contentSize = buffer.readLong();
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileOpenOkBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileOpenOkBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileOpenOkBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileOpenOkBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,73 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class FileOpenOkBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 70;
+ public static final int METHOD_ID = 41;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new FileOpenOkBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ FileOpenOkBody object = (FileOpenOkBody)o;
+
+ return
+ 8 /*stagedSize*/
+ ;
+
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ FileOpenOkBody object = (FileOpenOkBody)o;
+ buffer.writeLong(object.stagedSize);
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ FileOpenOkBody object = (FileOpenOkBody)o;
+ object.stagedSize = buffer.readLong();
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FilePublishBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FilePublishBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FilePublishBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FilePublishBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,87 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class FilePublishBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 70;
+ public static final int METHOD_ID = 60;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new FilePublishBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ FilePublishBody object = (FilePublishBody)o;
+
+ return
+ 2 /*ticket*/+
+ EncodingUtils.encodedShortStringLength(object.exchange)+
+ EncodingUtils.encodedShortStringLength(object.routingKey)+
+ 1 /*mandatory*/+
+ 0 /*immediate*/+
+ EncodingUtils.encodedShortStringLength(object.identifier)
+ ;
+
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ FilePublishBody object = (FilePublishBody)o;
+ EncodingUtils.writeUnsignedShort(buffer, object.ticket);
+ EncodingUtils.writeShortStringBytes(buffer, object.exchange);
+ EncodingUtils.writeShortStringBytes(buffer, object.routingKey);
+ EncodingUtils.writeBooleans(buffer, new boolean[]{ object.mandatory, object.immediate});
+ EncodingUtils.writeShortStringBytes(buffer, object.identifier);
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ FilePublishBody object = (FilePublishBody)o;
+ object.ticket = EncodingUtils.readUnsignedShort(buffer);
+ object.exchange = EncodingUtils.readShortString(buffer);
+ object.routingKey = EncodingUtils.readShortString(buffer);
+ boolean[] bools = EncodingUtils.readBooleans(buffer);object.mandatory = bools[0];
+ object.immediate = bools[1];
+ object.identifier = EncodingUtils.readShortString(buffer);
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileQosBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileQosBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileQosBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileQosBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,79 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class FileQosBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 70;
+ public static final int METHOD_ID = 10;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new FileQosBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ FileQosBody object = (FileQosBody)o;
+
+ return
+ 4 /*prefetchSize*/+
+ 2 /*prefetchCount*/+
+ 1 /*global*/
+ ;
+
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ FileQosBody object = (FileQosBody)o;
+ EncodingUtils.writeUnsignedInteger(buffer, object.prefetchSize);
+ EncodingUtils.writeUnsignedShort(buffer, object.prefetchCount);
+ EncodingUtils.writeBooleans(buffer, new boolean[]{ object.global});
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ FileQosBody object = (FileQosBody)o;
+ object.prefetchSize = EncodingUtils.readUnsignedInteger(buffer);
+ object.prefetchCount = EncodingUtils.readUnsignedShort(buffer);
+ boolean[] bools = EncodingUtils.readBooleans(buffer);object.global = bools[0];
+
+ }
+}
Added: incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileQosOkBodyMarshaller.java
URL: http://svn.apache.org/viewvc/incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileQosOkBodyMarshaller.java?view=auto&rev=468441
==============================================================================
--- incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileQosOkBodyMarshaller.java (added)
+++ incubator/activemq/sandbox/qpid/src/main/java/org/apache/activemq/amqp/wireformat/v0_80/FileQosOkBodyMarshaller.java Fri Oct 27 09:18:49 2006
@@ -0,0 +1,67 @@
+/**
+ *
+ * Copyright (c) 2006 The Apache Software Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+package org.apache.activemq.amqp.wireformat.v0_80;
+
+import java.io.DataInput;
+import java.io.DataOutput;
+import java.io.IOException;
+
+import org.apache.activemq.amqp.command.*;
+import org.apache.activemq.amqp.wireformat.*;
+
+/**
+ * This class is autogenerated, do not modify. [From AMQ protocol 0.80 (major=0, minor=80)]
+ */
+public class FileQosOkBodyMarshaller extends MethodBodyMarshaller
+{
+ public static final int CLASS_ID = 70;
+ public static final int METHOD_ID = 11;
+
+ protected int getClazz()
+ {
+ return CLASS_ID;
+ }
+
+ protected int getMethod()
+ {
+ return METHOD_ID;
+ }
+
+ public MethodBody createBody() {
+ return new FileQosOkBody();
+ }
+
+ protected int getBodySize(MethodBody o)
+ {
+ FileQosOkBody object = (FileQosOkBody)o;
+ return 0;
+ }
+
+ public void writeMethodPayload(DataOutput buffer, MethodBody o) throws IOException
+ {
+ FileQosOkBody object = (FileQosOkBody)o;
+
+ }
+
+ public void populateMethodBodyFromBuffer(DataInput buffer, MethodBody o) throws IOException
+ {
+ FileQosOkBody object = (FileQosOkBody)o;
+
+ }
+}