<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/qpid-python.git/cpp/src/qpid/framing/AMQMethodBody.h, 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>Added framing::BodyHolder:</title>
<updated>2007-11-22T23:55:39+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2007-11-22T23:55:39+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=cb070d9813e4232b4ec8409ca555b529ee5cee4b'/>
<id>cb070d9813e4232b4ec8409ca555b529ee5cee4b</id>
<content type='text'>
 - Uniform holder for all body types, replaces MethodHolder.
 - Uses in_place constructors to avoid avoid body copy.

framing::AMQFrame:
 - Holds body in heap-allocated intrusive_ptr&lt;BodyHolder&gt;
 - Uses in_place constructors to avoid avoid body copy.

Removed/downgraded to TODO many redundant FIXME comments.


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@597513 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 - Uniform holder for all body types, replaces MethodHolder.
 - Uses in_place constructors to avoid avoid body copy.

framing::AMQFrame:
 - Holds body in heap-allocated intrusive_ptr&lt;BodyHolder&gt;
 - Uses in_place constructors to avoid avoid body copy.

Removed/downgraded to TODO many redundant FIXME comments.


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@597513 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<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>Minor refactoring of execution layer</title>
<updated>2007-09-28T15:06:12+00:00</updated>
<author>
<name>Gordon Sim</name>
<email>gsim@apache.org</email>
</author>
<published>2007-09-28T15:06:12+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=b46c7467a0422e16f63f6b7d7fabb8d1ca9a2cff'/>
<id>b46c7467a0422e16f63f6b7d7fabb8d1ca9a2cff</id>
<content type='text'>
Set sync bit when session is in sync mode



git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@580380 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Set sync bit when session is in sync mode



git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@580380 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Honour sync bit when processing L4 method</title>
<updated>2007-09-28T09:27:03+00:00</updated>
<author>
<name>Gordon Sim</name>
<email>gsim@apache.org</email>
</author>
<published>2007-09-28T09:27:03+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=816b56837d862980e9086fe8ed02b84ca764eb1f'/>
<id>816b56837d862980e9086fe8ed02b84ca764eb1f</id>
<content type='text'>
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@580266 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@580266 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Implementation of execution.result on the client side </title>
<updated>2007-09-06T20:27:33+00:00</updated>
<author>
<name>Gordon Sim</name>
<email>gsim@apache.org</email>
</author>
<published>2007-09-06T20:27: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=b33a63b36c659a894143382d0a61efe6a598fcc6'/>
<id>b33a63b36c659a894143382d0a61efe6a598fcc6</id>
<content type='text'>
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@573359 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@573359 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Updated message.transfer encoding to use header and content segments (including new structs). </title>
<updated>2007-08-28T19:38:17+00:00</updated>
<author>
<name>Gordon Sim</name>
<email>gsim@apache.org</email>
</author>
<published>2007-08-28T19:38: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=9e10f4ea3b2f8ab6650f635cada48e4735ca20d7'/>
<id>9e10f4ea3b2f8ab6650f635cada48e4735ca20d7</id>
<content type='text'>
Unified more between the basic and message classes messages.



git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@570538 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Unified more between the basic and message classes messages.



git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@570538 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>
</feed>
