From 0ebb8f7e9efa2d28f3ff1ca501c749e04996e402 Mon Sep 17 00:00:00 2001 From: Gordon Sim Date: Wed, 15 Aug 2007 17:26:43 +0000 Subject: Altered old client channel to use new generated session interface (primarily to reduce the number of places where method bodies are constructed). git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk@566274 13f79535-47bb-0310-9956-ffa450edef68 --- qpid/cpp/rubygen/templates/Session.rb | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) (limited to 'qpid/cpp/rubygen') diff --git a/qpid/cpp/rubygen/templates/Session.rb b/qpid/cpp/rubygen/templates/Session.rb index fd861b7a4e..eaa4347974 100644 --- a/qpid/cpp/rubygen/templates/Session.rb +++ b/qpid/cpp/rubygen/templates/Session.rb @@ -13,7 +13,7 @@ class SessionGen < CppGen end def declare_method (m) - gen "Response #{m.amqp_parent.name.lcaps}#{m.cppname.caps}(" + gen "Response #{m.amqp_parent.name.lcaps}#{m.name.caps}(" if (m.content()) params=m.signature + ["const MethodContent& content"] else @@ -28,7 +28,7 @@ class SessionGen < CppGen end def define_method (m) - gen "Response Session::#{m.amqp_parent.name.lcaps}#{m.cppname.caps}(" + gen "Response Session::#{m.amqp_parent.name.lcaps}#{m.name.caps}(" if (m.content()) params=m.signature + ["const MethodContent& content"] else @@ -89,8 +89,8 @@ public: ~#{@classname}(); ReceivedContent::shared_ptr get() { return impl->get(); } - void close() { impl->close(); parent->released(impl); } - + void setSynchronous(bool sync) { impl->setSync(sync); } + void close(); EOS indent { @amqp.amqp_classes.each { |c| declare_class(c) if !excludes.include?(c.name) } } gen <stop(); - parent->released(impl); + if (parent) { + parent->released(impl); + parent.reset(); + } +} + +void #{@classname}::close() +{ + impl->close(); + if (parent) { + parent->released(impl); + parent.reset(); + } } EOS -- cgit v1.2.1