<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/qpid-python.git/cpp/src/qpid/client/ConnectionHandler.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>QPID-974: allow the size of the queue of outgoing frames to be restricted</title>
<updated>2008-04-29T20:15:18+00:00</updated>
<author>
<name>Gordon Sim</name>
<email>gsim@apache.org</email>
</author>
<published>2008-04-29T20:15:18+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=acc0dee435e1fa22e3b1e7cdfecf6913bf88988e'/>
<id>acc0dee435e1fa22e3b1e7cdfecf6913bf88988e</id>
<content type='text'>
QPID-544: tidy up configuration (ensuring desired settings are used correctly, 
          allowing tcp socket options to be set etc)


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@652083 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
QPID-544: tidy up configuration (ensuring desired settings are used correctly, 
          allowing tcp socket options to be set etc)


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@652083 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Generate c++ code from final 0-10 spec</title>
<updated>2008-04-24T21:07:34+00:00</updated>
<author>
<name>Gordon Sim</name>
<email>gsim@apache.org</email>
</author>
<published>2008-04-24T21:07:34+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=1c86294add5cbb640aac7f458c4de693de48dd9f'/>
<id>1c86294add5cbb640aac7f458c4de693de48dd9f</id>
<content type='text'>
git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@651423 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@651423 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>QPID-648: (based on patch from mfarrellee@redhat.com) </title>
<updated>2008-04-22T10:33:12+00:00</updated>
<author>
<name>Gordon Sim</name>
<email>gsim@apache.org</email>
</author>
<published>2008-04-22T10:33: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=2b8e82875776feb8393c7791975acc9cf9fdb5e1'/>
<id>2b8e82875776feb8393c7791975acc9cf9fdb5e1</id>
<content type='text'>
* apply authentication to final 0-10 codepath
* consolidate conditional compilation of sasl-related code
* improved handling of connection close during connection establishment in client



git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@650439 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* apply authentication to final 0-10 codepath
* consolidate conditional compilation of sasl-related code
* improved handling of connection close during connection establishment in client



git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@650439 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>QPID-920: converted c++ client to use final 0-10 protocol</title>
<updated>2008-04-20T12:10:37+00:00</updated>
<author>
<name>Gordon Sim</name>
<email>gsim@apache.org</email>
</author>
<published>2008-04-20T12:10:37+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=0637677cf6653256b67c82dcb74f35133601220c'/>
<id>0637677cf6653256b67c82dcb74f35133601220c</id>
<content type='text'>
* connection handler converted to using invoker &amp; proxy and updated to final method defs
* SessionCore &amp; ExecutionHandler replace by SessionImpl
* simplified handling of completion &amp; results, removed handling of responses



git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@649915 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* connection handler converted to using invoker &amp; proxy and updated to final method defs
* SessionCore &amp; ExecutionHandler replace by SessionImpl
* simplified handling of completion &amp; results, removed handling of responses



git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@649915 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Improved/additional client API tests.</title>
<updated>2008-01-24T22:26:12+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2008-01-24T22:26: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=f0a31beb7a609591e7b34e60ddfd85e9e183fbc0'/>
<id>f0a31beb7a609591e7b34e60ddfd85e9e183fbc0</id>
<content type='text'>
 - Replaced InProcessBroker with a more accurate loopback BrokerFixture.
 - Added asserts for mutex/condition/thread errors in debug build.
 - Added client tests for several exception conditions.
 - Added peer address to log ouput, client/server distinguished by (addr) or [addr]
 - Fixed various deadlocks &amp; races exposed by the new  asserts &amp; tests.


File-by-file:

New BrokerFixture replaces InProcessBroker
D      src/tests/InProcessBroker.h
M      src/tests/BrokerFixture.h
M      src/tests/SocketProxy.h
M      src/tests/Makefile.am

Made it run a bit faster.
M      src/tests/quick_perftest

Redundant
D      src/tests/APRBaseTest.cpp

Updated tests to use BrokerFixture
M      src/tests/ClientChannelTest.cpp
M      src/tests/exception_test.cpp
M      src/tests/ClientSessionTest.cpp

Print thread IDs in decimal, same as GDB.
M      src/qpid/log/Logger.cpp

Assert mutex/condition ops in debug build.
M      src/qpid/sys/posix/check.h
M      src/qpid/sys/posix/Mutex.h
M      src/qpid/sys/posix/Condition.h
M      src/qpid/sys/posix/Thread.h

Added toFd() so SocketProxy can use ::select()
M      src/qpid/sys/Socket.h
M      src/qpid/sys/posix/Socket.cpp

Fixes for races &amp; deadlocks shown up by new tests &amp; asserts.
Mostly shutdown/close issues.
M      src/qpid/client/ConnectionHandler.h
M      src/qpid/client/ConnectionImpl.cpp
M      src/qpid/client/Demux.h
M      src/qpid/client/SessionCore.cpp
M      src/qpid/client/ConnectionHandler.cpp
M      src/qpid/client/Connector.h
M      src/qpid/client/Demux.cpp
M      src/qpid/client/Dispatcher.cpp
M      src/qpid/client/ConnectionImpl.h

Logging peer address.
M      src/qpid/sys/AsynchIOAcceptor.cpp


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@615063 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 - Replaced InProcessBroker with a more accurate loopback BrokerFixture.
 - Added asserts for mutex/condition/thread errors in debug build.
 - Added client tests for several exception conditions.
 - Added peer address to log ouput, client/server distinguished by (addr) or [addr]
 - Fixed various deadlocks &amp; races exposed by the new  asserts &amp; tests.


File-by-file:

New BrokerFixture replaces InProcessBroker
D      src/tests/InProcessBroker.h
M      src/tests/BrokerFixture.h
M      src/tests/SocketProxy.h
M      src/tests/Makefile.am

Made it run a bit faster.
M      src/tests/quick_perftest

Redundant
D      src/tests/APRBaseTest.cpp

Updated tests to use BrokerFixture
M      src/tests/ClientChannelTest.cpp
M      src/tests/exception_test.cpp
M      src/tests/ClientSessionTest.cpp

Print thread IDs in decimal, same as GDB.
M      src/qpid/log/Logger.cpp

Assert mutex/condition ops in debug build.
M      src/qpid/sys/posix/check.h
M      src/qpid/sys/posix/Mutex.h
M      src/qpid/sys/posix/Condition.h
M      src/qpid/sys/posix/Thread.h

Added toFd() so SocketProxy can use ::select()
M      src/qpid/sys/Socket.h
M      src/qpid/sys/posix/Socket.cpp

Fixes for races &amp; deadlocks shown up by new tests &amp; asserts.
Mostly shutdown/close issues.
M      src/qpid/client/ConnectionHandler.h
M      src/qpid/client/ConnectionImpl.cpp
M      src/qpid/client/Demux.h
M      src/qpid/client/SessionCore.cpp
M      src/qpid/client/ConnectionHandler.cpp
M      src/qpid/client/Connector.h
M      src/qpid/client/Demux.cpp
M      src/qpid/client/Dispatcher.cpp
M      src/qpid/client/ConnectionImpl.h

Logging peer address.
M      src/qpid/sys/AsynchIOAcceptor.cpp


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@615063 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>	* src/qpid/broker/Session.h, .cpp: Session holds all state of a session including</title>
<updated>2007-08-29T23:27:40+00:00</updated>
<author>
<name>Alan Conway</name>
<email>aconway@apache.org</email>
</author>
<published>2007-08-29T23:27:40+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=e183227707d150b1f42e750df0e90cd7dac8744e'/>
<id>e183227707d150b1f42e750df0e90cd7dac8744e</id>
<content type='text'>
	handlers created for that session. Session is not directly associated with a channel.
	* src/qpid/broker/SessionAdapter.h, .cpp: SessionAdapter is bound to a channel
	managed by the Connection. It can be attached to and detatched from a Session.
	* src/qpid/broker/Connection.cpp, .h:  Use SessionAdapter.
	
	* src/qpid/framing/Handler.h: Removed use of shared_ptr. Handlers belong
	either to a Session or a Connection and are destroyed with it.
	* src/qpid/framing/InputHandler.h, OutputHandler.h: Both now inherit from
	FrameHandler and can be used as FrameHandlers. Intermediate step to removing
	them entirely.

	* src/qpid/broker/ConnectionAdapter.h:
	* src/qpid/client/ConnectionHandler.h:
	* src/qpid/framing/ChannelAdapter.cpp, .h:
	  Minor changes required by Handler changes.


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@570982 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	handlers created for that session. Session is not directly associated with a channel.
	* src/qpid/broker/SessionAdapter.h, .cpp: SessionAdapter is bound to a channel
	managed by the Connection. It can be attached to and detatched from a Session.
	* src/qpid/broker/Connection.cpp, .h:  Use SessionAdapter.
	
	* src/qpid/framing/Handler.h: Removed use of shared_ptr. Handlers belong
	either to a Session or a Connection and are destroyed with it.
	* src/qpid/framing/InputHandler.h, OutputHandler.h: Both now inherit from
	FrameHandler and can be used as FrameHandlers. Intermediate step to removing
	them entirely.

	* src/qpid/broker/ConnectionAdapter.h:
	* src/qpid/client/ConnectionHandler.h:
	* src/qpid/framing/ChannelAdapter.cpp, .h:
	  Minor changes required by Handler changes.


git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@570982 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>Added first cut of generated client interface.</title>
<updated>2007-08-05T13:25:36+00:00</updated>
<author>
<name>Gordon Sim</name>
<email>gsim@apache.org</email>
</author>
<published>2007-08-05T13:25:36+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=b2efcb6ed3e1e2104836928cda81ed69f2f24559'/>
<id>b2efcb6ed3e1e2104836928cda81ed69f2f24559</id>
<content type='text'>
Old channel interface still supported; shares SessionCore with the new interface.
Todo: allow applications to signal completion of received commands; keywrod args for interface.



git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@562866 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Old channel interface still supported; shares SessionCore with the new interface.
Todo: allow applications to signal completion of received commands; keywrod args for interface.



git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@562866 13f79535-47bb-0310-9956-ffa450edef68
</pre>
</div>
</content>
</entry>
<entry>
<title>Some restructuring of the client code: </title>
<updated>2007-08-02T18:09:48+00:00</updated>
<author>
<name>Gordon Sim</name>
<email>gsim@apache.org</email>
</author>
<published>2007-08-02T18:09:48+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/qpid-python.git/commit/?id=89aa36d093182e9e191c000504c174663932458f'/>
<id>89aa36d093182e9e191c000504c174663932458f</id>
<content type='text'>
 * Introduced three separate 'handlers' for the connection, channel and execution 'layers'.
 * Support for asynchronous retrieval of response or completion status.
 * Channel methods no longer included in execution layers command id count.



git-svn-id: https://svn.apache.org/repos/asf/incubator/qpid/trunk/qpid@562212 13f79535-47bb-0310-9956-ffa450edef68
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
 * Introduced three separate 'handlers' for the connection, channel and execution 'layers'.
 * Support for asynchronous retrieval of response or completion status.
 * Channel methods no longer included in execution layers command id count.



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