<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/qpid-python.git/cpp/src/qpid/framing/AMQMethodBody.cpp, branch qpid.0-10</title>
<subtitle>git.apache.org: qpid.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/'/>
<entry>
<title>	* Summary: generalized Invoker visitor to all *Operations and</title>
<updated>2007-10-16T19:07:54+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2007-10-16T19:07:54+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=428de9b6fe6f81f2bfc3f47d5db013b4b00da6a2'/>
<id>428de9b6fe6f81f2bfc3f47d5db013b4b00da6a2</id>
<content type='text'>
	  *Handler classes, client and broker. Single template
	  free function invoke(Invocable, const AMQBody&amp;); works for
	  all invocable handlers.
	  
	* rubygen/templates/OperationsInvoker.rb: Generates invoker
	  visitors for all Operations classes, client and server.

	* src/qpid/framing/Invoker.h: Invoker base class and
	  template invoke() function.

	* rubygen/templates/structs.rb: add generic invoke method template
	  to invoke an arbitrary object with the correct memeber function.

	* src/qpid/framing/AMQMethodBody.cpp, .h: Removed invoke(),
	  replaced by qpid::framing::invoke()

	* src/qpid/broker/SemanticHandler.cpp, ConnectionHandler.cpp:
	  Replace AMQMethodBody::invoke with invoke() free function.

	* src/qpid/framing/StructHelper.h: Avoid un-necessary alloc
	  and copy in encode/decode.


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@585223 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	  *Handler classes, client and broker. Single template
	  free function invoke(Invocable, const AMQBody&amp;); works for
	  all invocable handlers.
	  
	* rubygen/templates/OperationsInvoker.rb: Generates invoker
	  visitors for all Operations classes, client and server.

	* src/qpid/framing/Invoker.h: Invoker base class and
	  template invoke() function.

	* rubygen/templates/structs.rb: add generic invoke method template
	  to invoke an arbitrary object with the correct memeber function.

	* src/qpid/framing/AMQMethodBody.cpp, .h: Removed invoke(),
	  replaced by qpid::framing::invoke()

	* src/qpid/broker/SemanticHandler.cpp, ConnectionHandler.cpp:
	  Replace AMQMethodBody::invoke with invoke() free function.

	* src/qpid/framing/StructHelper.h: Avoid un-necessary alloc
	  and copy in encode/decode.


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@585223 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Reapply rev 568249 with the changes made to the generator this time, rather than the generated file itself.</title>
<updated>2007-08-22T08:54:54+00:00</updated>
<author>
<name>Gordon Sim</name>
<email>gsim@apache.org</email>
</author>
<published>2007-08-22T08:54:54+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=4a362885479d9d8de7d922db60ca220c537afa11'/>
<id>4a362885479d9d8de7d922db60ca220c537afa11</id>
<content type='text'>
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@568517 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@568517 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Undo revision 568249, causing tests to hang.</title>
<updated>2007-08-21T21:52:31+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2007-08-21T21:52:31+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=a9bd6d6e8686574d0170248ccd0280ec21dd67c3'/>
<id>a9bd6d6e8686574d0170248ccd0280ec21dd67c3</id>
<content type='text'>
------------------------------------------------------------------------
r568249 | gsim | 2007-08-21 16:11:20 -0400 (Tue, 21 Aug 2007) | 3 lines

Invocation now uses the visitor mechanism


------------------------------------------------------------------------


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@568298 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
------------------------------------------------------------------------
r568249 | gsim | 2007-08-21 16:11:20 -0400 (Tue, 21 Aug 2007) | 3 lines

Invocation now uses the visitor mechanism


------------------------------------------------------------------------


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@568298 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Invocation now uses the visitor mechanism</title>
<updated>2007-08-21T20:11:20+00:00</updated>
<author>
<name>Gordon Sim</name>
<email>gsim@apache.org</email>
</author>
<published>2007-08-21T20:11:20+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=f3737cf4414656f9804dde96271ef426523df050'/>
<id>f3737cf4414656f9804dde96271ef426523df050</id>
<content type='text'>
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@568249 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@568249 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>AMQBodies are no longer allocated on the heap and passed with shared_ptr.</title>
<updated>2007-08-16T20:12:33+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2007-08-16T20:12:33+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=49c7a491c98c26fe7d4f017a7ba655dfc029278c'/>
<id>49c7a491c98c26fe7d4f017a7ba655dfc029278c</id>
<content type='text'>
AMQFrame contains a boost::variant of AMQHeaderBody,AMQContentBody,
AMQHeatbeatBody, and MethodHolder. A variant is basically a type-safe
union, it can allocate any of the types in-place.

MethodHolder contains a Blob, a less sophisticated kind of variant,
which can contain any of the concrete method body types. 

Using variants for all the method types causes outrageous compile
times and bloated library symbol names. Blob lacks some of the finer
features of variant and needs help from generated code. For now both
are hidden to the rest of the code base behind AMQFrame and MethodBody
classes so if/when we decide to settle on just one "variant" type
solution we can do so.

This commit touches nearly 100 files, mostly converting method
signatures with shared_ptr&lt;FooBody&gt; to FooBody* or FooBody&amp;, and
converting stored shared_ptr&lt;AMQBody&gt; to AMQFrame and
share_ptr&lt;AMQMethodBody&gt; to MethodHolder.

There is one outstanding client memory leak, which I will fix in my next commit.


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@566822 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
AMQFrame contains a boost::variant of AMQHeaderBody,AMQContentBody,
AMQHeatbeatBody, and MethodHolder. A variant is basically a type-safe
union, it can allocate any of the types in-place.

MethodHolder contains a Blob, a less sophisticated kind of variant,
which can contain any of the concrete method body types. 

Using variants for all the method types causes outrageous compile
times and bloated library symbol names. Blob lacks some of the finer
features of variant and needs help from generated code. For now both
are hidden to the rest of the code base behind AMQFrame and MethodBody
classes so if/when we decide to settle on just one "variant" type
solution we can do so.

This commit touches nearly 100 files, mostly converting method
signatures with shared_ptr&lt;FooBody&gt; to FooBody* or FooBody&amp;, and
converting stored shared_ptr&lt;AMQBody&gt; to AMQFrame and
share_ptr&lt;AMQMethodBody&gt; to MethodHolder.

There is one outstanding client memory leak, which I will fix in my next commit.


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@566822 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Removed unused types: RequestId, ResponseId, MethodContext.</title>
<updated>2007-08-14T16:15:26+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2007-08-14T16:15:26+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=cb65298edd497295d215220397f8fedff7b14aca'/>
<id>cb65298edd497295d215220397f8fedff7b14aca</id>
<content type='text'>
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@565821 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@565821 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Use execution layer to acknowledge messages. </title>
<updated>2007-07-27T15:44:52+00:00</updated>
<author>
<name>Gordon Sim</name>
<email>gsim@apache.org</email>
</author>
<published>2007-07-27T15:44:52+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=80406d0fb680239a0141b81fb0b9f20d20c9b1e1'/>
<id>80406d0fb680239a0141b81fb0b9f20d20c9b1e1</id>
<content type='text'>
Turn off 0-9 framing of requests and responses. 
Some refactoring around message delivery.



git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@560285 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Turn off 0-9 framing of requests and responses. 
Some refactoring around message delivery.



git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@560285 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Added initial 'execution-layer' to try out methods form the 0-10 execution class.</title>
<updated>2007-07-23T12:29:17+00:00</updated>
<author>
<name>Gordon Sim</name>
<email>gsim@apache.org</email>
</author>
<published>2007-07-23T12:29:17+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=0db1af31320aa010c8e97da80000f7548d889068'/>
<id>0db1af31320aa010c8e97da80000f7548d889068</id>
<content type='text'>
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@558700 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@558700 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Moved src/ source code to src/qpid directory:</title>
<updated>2007-04-13T20:58:27+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2007-04-13T20:58:27+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=ca3a7cd64822e874076bd23e9981af077eb47b03'/>
<id>ca3a7cd64822e874076bd23e9981af077eb47b03</id>
<content type='text'>
 - allows rhm package to build consistently against checked-out or installed qpid. 
 - consistent correspondence between source paths and C++ namespaces.
 - consistent use of #include &lt;qpid/foo&gt; in source and by users.
 - allows header files to split over multiple directories,
   e.g. separating generated code, separating public API from private files.


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@528668 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 - allows rhm package to build consistently against checked-out or installed qpid. 
 - consistent correspondence between source paths and C++ namespaces.
 - consistent use of #include &lt;qpid/foo&gt; in source and by users.
 - allows header files to split over multiple directories,
   e.g. separating generated code, separating public API from private files.


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@528668 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>2006-12-01  Jim Meyering  &lt;meyering@redhat.com&gt;</title>
<updated>2006-12-01T05:11:45+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2006-12-01T05:11:45+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=fb9ad93a3d422c1e83c998f44c4782f7bf1d1a66'/>
<id>fb9ad93a3d422c1e83c998f44c4782f7bf1d1a66</id>
<content type='text'>
This delta imposes two major changes on the C++ hierarchy:
  - adds autoconf, automake, libtool support
  - makes the hierarchy flatter and renames a few files (e.g., Queue.h,
  Queue.cpp) that appeared twice, once under client/ and again under broker/.

In the process, I've changed many #include directives, mostly
to remove a qpid/ or qpid/framing/ prefix from the file name argument.
Although most changes were to .cpp and .h files under qpid/cpp/, there
were also several to template files under qpid/gentools, and even one
to CppGenerator.java.

Nearly all files are moved to a new position in the hierarchy.
The new hierarchy looks like this:

  src               # this is the new home of qpidd.cpp
  tests             # all tests are here.  See Makefile.am.
  gen               # As before, all generated files go here.
  lib               # This is just a container for the 3 lib dirs:
  lib/client
  lib/broker
  lib/common
  lib/common/framing
  lib/common/sys
  lib/common/sys/posix
  lib/common/sys/apr
  build-aux
  m4


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@481159 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This delta imposes two major changes on the C++ hierarchy:
  - adds autoconf, automake, libtool support
  - makes the hierarchy flatter and renames a few files (e.g., Queue.h,
  Queue.cpp) that appeared twice, once under client/ and again under broker/.

In the process, I've changed many #include directives, mostly
to remove a qpid/ or qpid/framing/ prefix from the file name argument.
Although most changes were to .cpp and .h files under qpid/cpp/, there
were also several to template files under qpid/gentools, and even one
to CppGenerator.java.

Nearly all files are moved to a new position in the hierarchy.
The new hierarchy looks like this:

  src               # this is the new home of qpidd.cpp
  tests             # all tests are here.  See Makefile.am.
  gen               # As before, all generated files go here.
  lib               # This is just a container for the 3 lib dirs:
  lib/client
  lib/broker
  lib/common
  lib/common/framing
  lib/common/sys
  lib/common/sys/posix
  lib/common/sys/apr
  build-aux
  m4


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@481159 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
</feed>
