summaryrefslogtreecommitdiff
path: root/cpp/gentools/templ.java/MethodBodyClass.tmpl
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/gentools/templ.java/MethodBodyClass.tmpl')
-rw-r--r--cpp/gentools/templ.java/MethodBodyClass.tmpl180
1 files changed, 180 insertions, 0 deletions
diff --git a/cpp/gentools/templ.java/MethodBodyClass.tmpl b/cpp/gentools/templ.java/MethodBodyClass.tmpl
new file mode 100644
index 0000000000..42582fcb7c
--- /dev/null
+++ b/cpp/gentools/templ.java/MethodBodyClass.tmpl
@@ -0,0 +1,180 @@
+&{${CLASS}${METHOD}Body.java}
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you 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.
+ *
+ */
+
+/*
+ * This file is auto-generated by ${GENERATOR} - do not modify.
+ * Supported AMQP versions:
+%{VLIST} * ${major}-${minor}
+ */
+
+package org.apache.qpid.framing;
+
+import java.util.HashMap;
+
+import org.apache.mina.common.ByteBuffer;
+
+public class ${CLASS}${METHOD}Body extends AMQMethodBody implements EncodableAMQDataBlock
+{
+ private static final AMQMethodBodyInstanceFactory factory = new AMQMethodBodyInstanceFactory()
+ {
+ public AMQMethodBody newInstance(byte major, byte minor, ByteBuffer in, long size) throws AMQFrameDecodingException
+ {
+ return new ${CLASS}${METHOD}Body(major, minor, in);
+ }
+
+ public AMQMethodBody newInstance(byte major, byte minor, int clazzID, int methodID, ByteBuffer in, long size) throws AMQFrameDecodingException
+ {
+ return new ${CLASS}${METHOD}Body(major, minor, clazzID, methodID, in);
+ }
+
+ };
+
+ public static AMQMethodBodyInstanceFactory getFactory()
+ {
+ return factory;
+ }
+
+ public static HashMap<Integer, Integer> classIdMap = new HashMap<Integer, Integer>();
+ public static HashMap<Integer, Integer> methodIdMap = new HashMap<Integer, Integer>();
+
+ private static void registerMethodId(byte major, byte minor, int methodId)
+ {
+ methodIdMap.put((0xff & (int) major) | ((0xff & (int) minor)<<8), methodId);
+ }
+
+ private static void registerClassId(byte major, byte minor, int classId)
+ {
+ classIdMap.put((0xff & (int) major) | ((0xff & (int) minor)<<8), classId);
+ }
+
+
+ static
+ {
+ ${CLASS_ID_INIT}
+ ${METHOD_ID_INIT}
+ }
+
+ // Fields declared in specification
+%{FLIST} ${field_declaration}
+
+ private final int _clazz;
+ private final int _method;
+
+
+ // Constructor
+
+ public ${CLASS}${METHOD}Body(byte major, byte minor, ByteBuffer buffer) throws AMQFrameDecodingException
+ {
+ this(major, minor, getClazz(major,minor), getMethod(major,minor), buffer);
+ }
+
+ public ${CLASS}${METHOD}Body(byte major, byte minor, int clazzID, int methodID, ByteBuffer buffer) throws AMQFrameDecodingException
+ {
+ super(major, minor);
+ _clazz = clazzID;
+ _method = methodID;
+%{FLIST} ${mb_field_decode}
+ }
+
+ public ${CLASS}${METHOD}Body(byte major, byte minor, int clazzID, int methodID
+%{FLIST} ${mb_field_parameter_list}
+ )
+ {
+ super(major, minor);
+ _clazz = getClazz(major,minor);
+ _method = getMethod(major,minor);
+%{FLIST} ${mb_field_body_initialize}
+ }
+
+ public int getClazz()
+ {
+ return _clazz;
+ }
+
+ public int getMethod()
+ {
+ return _method;
+ }
+
+ public static int getClazz(byte major, byte minor)
+ {
+ return classIdMap.get((0xff & (int) major) | ((0xff & (int) minor)<<8));
+ }
+
+ public static int getMethod(byte major, byte minor)
+ {
+ return methodIdMap.get((0xff & (int) major) | ((0xff & (int) minor)<<8));
+ }
+
+
+ // Field methods
+%{FLIST} ${mb_field_get_method}
+
+ public int getBodySize()
+ {
+ int size = 0;
+%{FLIST} ${mb_field_size}
+ return size;
+ }
+
+ protected void writeMethodPayload(ByteBuffer buffer)
+ {
+%{FLIST} ${mb_field_encode}
+ }
+
+ public void populateMethodBodyFromBuffer(ByteBuffer buffer) throws AMQFrameDecodingException
+ {
+%{FLIST} ${mb_field_decode}
+ }
+
+ public String toString()
+ {
+ StringBuffer buf = new StringBuffer(super.toString());
+%{FLIST} ${mb_field_to_string}
+ return buf.toString();
+ }
+
+ public static ${CLASS}${METHOD}Body createMethodBody(byte major, byte minor
+%{FLIST} ${mb_field_parameter_list}
+ )
+ {
+ return createMethodBody(major, minor, getClazz(major, minor), getMethod(major, minor)
+%{FLIST} ${mb_field_passed_parameter_list}
+ );
+ }
+
+ public static ${CLASS}${METHOD}Body createMethodBody(byte major, byte minor, int clazzID, int methodID
+%{FLIST} ${mb_field_parameter_list}
+ )
+ {
+ return new ${CLASS}${METHOD}Body(major, minor, clazzID, methodID
+%{FLIST} ${mb_field_passed_parameter_list}
+ );
+ }
+
+ public ${CLASS}${METHOD}Body copy()
+ {
+ return new ${CLASS}${METHOD}Body(major, minor, getClazz(major, minor), getMethod(major, minor)
+%{FLIST} ${mb_field_passed_parameter_list}
+ );
+ }
+}