diff options
Diffstat (limited to 'qpid/gentools/templ.cpp/model')
10 files changed, 612 insertions, 0 deletions
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 |