summaryrefslogtreecommitdiff
path: root/qpid/gentools/templ.cpp
diff options
context:
space:
mode:
authorRajith Muditha Attapattu <rajith@apache.org>2011-05-27 15:44:23 +0000
committerRajith Muditha Attapattu <rajith@apache.org>2011-05-27 15:44:23 +0000
commit66765100f4257159622cefe57bed50125a5ad017 (patch)
treea88ee23bb194eb91f0ebb2d9b23ff423e3ea8e37 /qpid/gentools/templ.cpp
parent1aeaa7b16e5ce54f10c901d75c4d40f9f88b9db6 (diff)
parent88b98b2f4152ef59a671fad55a0d08338b6b78ca (diff)
downloadqpid-python-rajith_jms_client.tar.gz
Creating a branch for experimenting with some ideas for JMS client.rajith_jms_client
git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/rajith_jms_client@1128369 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/gentools/templ.cpp')
-rw-r--r--qpid/gentools/templ.cpp/method/MethodBodyClass.h.tmpl112
-rw-r--r--qpid/gentools/templ.cpp/model/AMQP_ClientOperations.h.tmpl82
-rw-r--r--qpid/gentools/templ.cpp/model/AMQP_ClientProxy.cpp.tmpl52
-rw-r--r--qpid/gentools/templ.cpp/model/AMQP_ClientProxy.h.tmpl75
-rw-r--r--qpid/gentools/templ.cpp/model/AMQP_Constants.h.tmpl34
-rw-r--r--qpid/gentools/templ.cpp/model/AMQP_HighestVersion.h.tmpl42
-rw-r--r--qpid/gentools/templ.cpp/model/AMQP_MethodVersionMap.cpp.tmpl62
-rw-r--r--qpid/gentools/templ.cpp/model/AMQP_MethodVersionMap.h.tmpl57
-rw-r--r--qpid/gentools/templ.cpp/model/AMQP_ServerOperations.h.tmpl83
-rw-r--r--qpid/gentools/templ.cpp/model/AMQP_ServerProxy.cpp.tmpl51
-rw-r--r--qpid/gentools/templ.cpp/model/AMQP_ServerProxy.h.tmpl74
11 files changed, 724 insertions, 0 deletions
diff --git a/qpid/gentools/templ.cpp/method/MethodBodyClass.h.tmpl b/qpid/gentools/templ.cpp/method/MethodBodyClass.h.tmpl
new file mode 100644
index 0000000000..5819a9cf9c
--- /dev/null
+++ b/qpid/gentools/templ.cpp/method/MethodBodyClass.h.tmpl
@@ -0,0 +1,112 @@
+&{${CLASS}${METHOD}Body.h}
+/*
+ *
+ * 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}
+ */
+
+#ifndef qpid_framing_${CLASS}${METHOD}Body__
+#define qpid_framing_${CLASS}${METHOD}Body__
+
+#include <string>
+#include <sstream>
+
+#include <amqp_types.h>
+#include <AMQMethodBody.h>
+#include <Buffer.h>
+#include <FieldTable.h>
+
+namespace qpid
+{
+namespace framing
+{
+${version_namespace_start}
+
+class ${CLASS}${METHOD}Body : public AMQMethodBody
+{
+ // Method field declarations
+
+%{FLIST} ${mb_field_declaration}
+
+
+public:
+ typedef boost::shared_ptr<${CLASS}${METHOD}Body> shared_ptr;
+
+ // Constructors and destructors
+
+${mb_constructor_with_initializers}
+
+ inline ${CLASS}${METHOD}Body(u_int8_t major, u_int8_t minor): AMQMethodBody(major, minor) {}
+ inline ${CLASS}${METHOD}Body(ProtocolVersion& version): AMQMethodBody(version) {}
+ virtual ~${CLASS}${METHOD}Body() {}
+
+ // Attribute get methods
+
+%{FLIST} ${mb_field_get_method}
+
+ // Helper methods
+
+ inline void print(std::ostream& out) const
+ {
+ out << "${CLASS}${METHOD}: ";
+%{FLIST} ${mb_field_print}
+ }
+
+ inline u_int16_t amqpClassId() const
+ {
+ return ${CLASS_ID_INIT};
+ }
+
+ inline u_int16_t amqpMethodId() const
+ {
+ return ${METHOD_ID_INIT};
+ }
+
+ inline u_int32_t bodySize() const
+ {
+ u_int32_t size = 0;
+%{FLIST} ${mb_body_size}
+ return size;
+ }
+
+ inline void encodeContent(Buffer&${mb_buffer_param}) const
+ {
+%{FLIST} ${mb_encode}
+ }
+
+ inline void decodeContent(Buffer&${mb_buffer_param})
+ {
+%{FLIST} ${mb_decode}
+ }
+
+${mb_server_operation_invoke}
+
+}; // class ${CLASS}${METHOD}Body
+
+${version_namespace_end}
+} // namespace framing
+} // namespace qpid
+
+#endif
+
diff --git a/qpid/gentools/templ.cpp/model/AMQP_ClientOperations.h.tmpl b/qpid/gentools/templ.cpp/model/AMQP_ClientOperations.h.tmpl
new file mode 100644
index 0000000000..a9fb0e0f69
--- /dev/null
+++ b/qpid/gentools/templ.cpp/model/AMQP_ClientOperations.h.tmpl
@@ -0,0 +1,82 @@
+&{AMQP_ClientOperations.h}
+/*
+ *
+ * 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}
+ */
+
+#ifndef qpid_framing_AMQP_ClientOperations__
+#define qpid_framing_AMQP_ClientOperations__
+
+#include <sstream>
+
+#include <FieldTable.h>
+#include <ProtocolVersion.h>
+#include <ProtocolVersionException.h>
+
+namespace qpid {
+namespace framing {
+
+class AMQP_ClientProxy;
+
+class AMQP_ClientOperations
+{
+protected:
+ ProtocolVersion version;
+ AMQP_ClientOperations() {}
+
+public:
+ AMQP_ClientOperations(u_int8_t major, u_int8_t minor) : version(major, minor) {}
+ AMQP_ClientOperations(ProtocolVersion& version) : version(version) {}
+ virtual ~AMQP_ClientOperations() {}
+
+ inline u_int8_t getMajor() const { return version.getMajor(); }
+ inline u_int8_t getMinor() const { return version.getMinor(); }
+ inline const ProtocolVersion& getVersion() const { return version; }
+ inline bool isVersion(u_int8_t _major, u_int8_t _minor) const
+ {
+ return version.equals(_major, _minor);
+ }
+ inline bool isVersion(ProtocolVersion& _version) const
+ {
+ return version.equals(_version);
+ }
+
+ // Include framing constant declarations
+ #include <AMQP_Constants.h>
+
+ // Inner classes
+
+%{CLIST} ${coh_inner_class}
+
+ // Method handler get methods
+
+%{CLIST} ${coh_method_handler_get_method}
+
+}; /* class AMQP_ClientOperations */
+
+} /* namespace framing */
+} /* namespace qpid */
+
+#endif
diff --git a/qpid/gentools/templ.cpp/model/AMQP_ClientProxy.cpp.tmpl b/qpid/gentools/templ.cpp/model/AMQP_ClientProxy.cpp.tmpl
new file mode 100644
index 0000000000..8cca6e5cec
--- /dev/null
+++ b/qpid/gentools/templ.cpp/model/AMQP_ClientProxy.cpp.tmpl
@@ -0,0 +1,52 @@
+&{AMQP_ClientProxy.cpp}
+/*
+ *
+ * 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}
+ */
+
+#include <sstream>
+
+#include <AMQP_ClientProxy.h>
+#include <AMQFrame.h>
+%{MLIST} ${cpc_method_body_include}
+
+namespace qpid {
+namespace framing {
+
+AMQP_ClientProxy::AMQP_ClientProxy(OutputHandler* out, u_int8_t major, u_int8_t minor) :
+%{CLIST} ${cpc_constructor_initializer}
+
+{}
+
+ // Inner class instance get methods
+
+%{CLIST} ${cpc_inner_class_get_method}
+
+ // Inner class implementation
+
+%{CLIST} ${cpc_inner_class_impl}
+
+} /* namespace framing */
+} /* namespace qpid */
diff --git a/qpid/gentools/templ.cpp/model/AMQP_ClientProxy.h.tmpl b/qpid/gentools/templ.cpp/model/AMQP_ClientProxy.h.tmpl
new file mode 100644
index 0000000000..0653ed7186
--- /dev/null
+++ b/qpid/gentools/templ.cpp/model/AMQP_ClientProxy.h.tmpl
@@ -0,0 +1,75 @@
+&{AMQP_ClientProxy.h}
+/*
+ *
+ * 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}
+ */
+
+#ifndef qpid_framing_AMQP_ClientProxy__
+#define qpid_framing_AMQP_ClientProxy__
+
+#include <AMQP_ClientOperations.h>
+#include <FieldTable.h>
+#include <OutputHandler.h>
+
+namespace qpid {
+namespace framing {
+
+class AMQP_ClientProxy : public AMQP_ClientOperations
+{
+private:
+
+ ProtocolVersion version;
+ OutputHandler* out;
+%{CLIST} ${cph_handler_pointer_defn}
+
+public:
+ AMQP_ClientProxy(OutputHandler* out, u_int8_t major, u_int8_t minor);
+ ProtocolVersion& getProtocolVersion() {return version;}
+ virtual ~AMQP_ClientProxy() {}
+
+ // Get methods for handlers
+
+%{CLIST} ${cph_handler_pointer_get_method}
+
+ // Inner class definitions
+
+%{CLIST} ${cph_inner_class_defn}
+
+private:
+ // Inner class instances
+
+%{CLIST} ${cph_inner_class_instance}
+
+public:
+ // Inner class instance get methods
+
+%{CLIST} ${cph_inner_class_get_method}
+
+}; /* class AMQP_ClientProxy */
+
+} /* namespace framing */
+} /* namespace qpid */
+
+#endif
diff --git a/qpid/gentools/templ.cpp/model/AMQP_Constants.h.tmpl b/qpid/gentools/templ.cpp/model/AMQP_Constants.h.tmpl
new file mode 100644
index 0000000000..4631bc8de6
--- /dev/null
+++ b/qpid/gentools/templ.cpp/model/AMQP_Constants.h.tmpl
@@ -0,0 +1,34 @@
+&{AMQP_Constants.h}
+/*
+ *
+ * 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}
+ */
+ // NOTE: This file is intended to be included within the class structure of both
+ // the client and server operations classes. These need to have <sstream> included.
+
+ // Constant getValue methods
+
+%{TLIST} ${ch_get_value_method}
+ \ No newline at end of file
diff --git a/qpid/gentools/templ.cpp/model/AMQP_HighestVersion.h.tmpl b/qpid/gentools/templ.cpp/model/AMQP_HighestVersion.h.tmpl
new file mode 100644
index 0000000000..9753b454ba
--- /dev/null
+++ b/qpid/gentools/templ.cpp/model/AMQP_HighestVersion.h.tmpl
@@ -0,0 +1,42 @@
+&{AMQP_HighestVersion.h}
+/*
+ *
+ * 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}
+ */
+#ifndef qpid_framing_highestProtocolVersion__
+#define qpid_framing_highestProtocolVersion__
+
+#include <ProtocolVersion.h>
+
+
+namespace qpid {
+namespace framing {
+
+static ProtocolVersion highestProtocolVersion(${hv_latest_major}, ${hv_latest_minor});
+
+} /* namespace framing */
+} /* namespace qpid */
+
+#endif
diff --git a/qpid/gentools/templ.cpp/model/AMQP_MethodVersionMap.cpp.tmpl b/qpid/gentools/templ.cpp/model/AMQP_MethodVersionMap.cpp.tmpl
new file mode 100644
index 0000000000..dc2a890c88
--- /dev/null
+++ b/qpid/gentools/templ.cpp/model/AMQP_MethodVersionMap.cpp.tmpl
@@ -0,0 +1,62 @@
+&{AMQP_MethodVersionMap.cpp}
+/*
+ *
+ * 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}
+ */
+
+#include <sstream>
+
+#include <AMQP_MethodVersionMap.h>
+
+namespace qpid
+{
+namespace framing
+{
+
+AMQP_MethodVersionMap::AMQP_MethodVersionMap()
+{
+%{CLIST} ${mc_create_method_body_map_entry}
+}
+
+AMQMethodBody* AMQP_MethodVersionMap::createMethodBody(u_int16_t classId, u_int16_t methodId, u_int8_t major, u_int8_t minor)
+{
+ iterator itr = find(createMapKey(classId, methodId, major, minor));
+ if (itr == end())
+ {
+ std::stringstream ss;
+ ss << "Unable to find MethodBody class for classId = " << classId << ", methodId = " <<
+ methodId << ", AMQ protocol version = " << major << "-" << minor << ".";
+ throw ProtocolVersionException(ss.str());
+ }
+ return (itr->second)(major, minor);
+}
+
+u_int64_t AMQP_MethodVersionMap::createMapKey(u_int16_t classId, u_int16_t methodId, u_int8_t major, u_int8_t minor)
+{
+ return ((u_int64_t)classId<<48) + ((u_int64_t)methodId<<32) + ((u_int64_t)major<<16) + minor;
+}
+
+} /* namespace framing */
+} /* namespace qpid */
diff --git a/qpid/gentools/templ.cpp/model/AMQP_MethodVersionMap.h.tmpl b/qpid/gentools/templ.cpp/model/AMQP_MethodVersionMap.h.tmpl
new file mode 100644
index 0000000000..c197871d4b
--- /dev/null
+++ b/qpid/gentools/templ.cpp/model/AMQP_MethodVersionMap.h.tmpl
@@ -0,0 +1,57 @@
+&{AMQP_MethodVersionMap.h}
+/*
+ *
+ * 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}
+ */
+
+#ifndef qpid_framing_AMQP_MethodVersionMap__
+#define qpid_framing_AMQP_MethodVersionMap__
+
+#include <map>
+#include <AMQMethodBody.h>
+
+%{MLIST} ${mc_method_body_include}
+
+namespace qpid
+{
+namespace framing
+{
+
+template <class T> AMQMethodBody* createMethodBodyFn(u_int8_t major, u_int8_t minor) { return new T(major, minor); }
+typedef AMQMethodBody* (*fnPtr)(u_int8_t, u_int8_t);
+
+class AMQP_MethodVersionMap: public std::map<u_int64_t, fnPtr>
+{
+protected:
+ u_int64_t createMapKey(u_int16_t classId, u_int16_t methodId, u_int8_t major, u_int8_t minor);
+public:
+ AMQP_MethodVersionMap();
+ AMQMethodBody* createMethodBody(u_int16_t classId, u_int16_t methodId, u_int8_t major, u_int8_t minor);
+};
+
+} /* namespace framing */
+} /* namespace qpid */
+
+#endif
diff --git a/qpid/gentools/templ.cpp/model/AMQP_ServerOperations.h.tmpl b/qpid/gentools/templ.cpp/model/AMQP_ServerOperations.h.tmpl
new file mode 100644
index 0000000000..e87723667b
--- /dev/null
+++ b/qpid/gentools/templ.cpp/model/AMQP_ServerOperations.h.tmpl
@@ -0,0 +1,83 @@
+&{AMQP_ServerOperations.h}
+/*
+ *
+ * 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}
+ */
+
+#ifndef qpid_framing_AMQP_ServerOperations__
+#define qpid_framing_AMQP_ServerOperations__
+
+#include <sstream>
+
+#include <FieldTable.h>
+#include <ProtocolVersion.h>
+#include <ProtocolVersionException.h>
+
+namespace qpid {
+namespace framing {
+
+class AMQP_ServerProxy;
+class AMQP_ClientProxy;
+
+class AMQP_ServerOperations
+{
+protected:
+ ProtocolVersion version;
+ AMQP_ServerOperations() {}
+
+public:
+ AMQP_ServerOperations(u_int8_t major, u_int8_t minor) : version(major, minor) {}
+ AMQP_ServerOperations(ProtocolVersion& version) : version(version) {}
+ virtual ~AMQP_ServerOperations() {}
+
+ inline u_int8_t getMajor() const { return version.getMajor(); }
+ inline u_int8_t getMinor() const { return version.getMinor(); }
+ inline const ProtocolVersion& getVersion() const { return version; }
+ inline bool isVersion(u_int8_t _major, u_int8_t _minor) const
+ {
+ return version.equals(_major, _minor);
+ }
+ inline bool isVersion(ProtocolVersion& _version) const
+ {
+ return version.equals(_version);
+ }
+
+ // Include framing constant declarations
+ #include <AMQP_Constants.h>
+
+ // Inner classes
+
+%{CLIST} ${soh_inner_class}
+
+ // Method handler get methods
+
+%{CLIST} ${soh_method_handler_get_method}
+
+}; /* class AMQP_ServerOperations */
+
+} /* namespace framing */
+} /* namespace qpid */
+
+#endif
diff --git a/qpid/gentools/templ.cpp/model/AMQP_ServerProxy.cpp.tmpl b/qpid/gentools/templ.cpp/model/AMQP_ServerProxy.cpp.tmpl
new file mode 100644
index 0000000000..cce369f98b
--- /dev/null
+++ b/qpid/gentools/templ.cpp/model/AMQP_ServerProxy.cpp.tmpl
@@ -0,0 +1,51 @@
+&{AMQP_ServerProxy.cpp}
+/*
+ *
+ * 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}
+ */
+
+#include <sstream>
+
+#include <AMQP_ServerProxy.h>
+#include <AMQFrame.h>
+%{MLIST} ${spc_method_body_include}
+
+namespace qpid {
+namespace framing {
+
+AMQP_ServerProxy::AMQP_ServerProxy(OutputHandler* out, u_int8_t major, u_int8_t minor) :
+%{CLIST} ${spc_constructor_initializer}
+{}
+
+ // Inner class instance get methods
+
+%{CLIST} ${spc_inner_class_get_method}
+
+ // Inner class implementation
+
+%{CLIST} ${spc_inner_class_impl}
+
+} /* namespace framing */
+} /* namespace qpid */
diff --git a/qpid/gentools/templ.cpp/model/AMQP_ServerProxy.h.tmpl b/qpid/gentools/templ.cpp/model/AMQP_ServerProxy.h.tmpl
new file mode 100644
index 0000000000..fab29f2c60
--- /dev/null
+++ b/qpid/gentools/templ.cpp/model/AMQP_ServerProxy.h.tmpl
@@ -0,0 +1,74 @@
+&{AMQP_ServerProxy.h}
+/*
+ *
+ * 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}
+ */
+
+#ifndef qpid_framing_AMQP_ServerProxy__
+#define qpid_framing_AMQP_ServerProxy__
+
+#include <AMQP_ServerOperations.h>
+#include <FieldTable.h>
+#include <OutputHandler.h>
+
+namespace qpid {
+namespace framing {
+
+class AMQP_ServerProxy : public AMQP_ServerOperations
+{
+private:
+ ProtocolVersion version;
+ OutputHandler* out;
+%{CLIST} ${sph_handler_pointer_defn}
+
+public:
+ AMQP_ServerProxy(OutputHandler* out, u_int8_t major, u_int8_t minor);
+ ProtocolVersion& getProtocolVersion() {return version;}
+ virtual ~AMQP_ServerProxy() {}
+
+ // Get methods for handlers
+
+%{CLIST} ${sph_handler_pointer_get_method}
+
+ // Inner class definitions
+
+%{CLIST} ${sph_inner_class_defn}
+
+private:
+ // Inner class instances
+
+%{CLIST} ${sph_inner_class_instance}
+
+public:
+ // Inner class instance get methods
+
+%{CLIST} ${sph_inner_class_get_method}
+
+}; /* class AMQP_ServerProxy */
+
+} /* namespace framing */
+} /* namespace qpid */
+
+#endif