summaryrefslogtreecommitdiff
path: root/qpid/cpp/gentools/templ.java/MethodBodyClass.tmpl
diff options
context:
space:
mode:
authorAlan Conway <aconway@apache.org>2007-03-21 02:08:18 +0000
committerAlan Conway <aconway@apache.org>2007-03-21 02:08:18 +0000
commitd2eb3361494710466280341c98f76c03536d2ebe (patch)
treef16ec2eacd8383e388657e54a22fc0214a0ce023 /qpid/cpp/gentools/templ.java/MethodBodyClass.tmpl
parent732544fe86089ab86c03fcc48d5ca4c72667c275 (diff)
downloadqpid-python-d2eb3361494710466280341c98f76c03536d2ebe.tar.gz
Renamed cpp-0-9 to cpp
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@520706 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/cpp/gentools/templ.java/MethodBodyClass.tmpl')
-rw-r--r--qpid/cpp/gentools/templ.java/MethodBodyClass.tmpl180
1 files changed, 180 insertions, 0 deletions
diff --git a/qpid/cpp/gentools/templ.java/MethodBodyClass.tmpl b/qpid/cpp/gentools/templ.java/MethodBodyClass.tmpl
new file mode 100644
index 0000000000..42582fcb7c
--- /dev/null
+++ b/qpid/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}
+ );
+ }
+}