Commit Graph

23 Commits

Author SHA1 Message Date
Matt Broadstone 1ae43ef4bd change the way messages are received
Messages used to be "delivered" and pushed right onto the queue, which
is where the requirement for Message to be explicitly shared came from.
Now messages that are incomplete come in and are stored in a "currentMessage"
private member (there is a requirement that messages are delivered in this
fashion, by the spec). Once the message body has come in, it is put into
the local queue and the messageReceived signal is emitted.

Also, modified Queue to be able to track a number of consumer tags. This
was exposed by the "routing" tutorial, where a single consumer can bind
to a number of exchanges with a generated consumer tag. The previous example
did not run into this problem because it used an explicitly set consumer tag
and therefore there were no conflicts.
2014-06-19 10:01:47 -04:00
Matt Broadstone 8e2b66677d add roForce to Queue, replace forceRemove 2014-06-10 21:27:59 -04:00
Matt Broadstone 46e974aeb8 provide purged signal, other small cleanups 2014-06-10 13:04:57 -04:00
Matt Broadstone 4ff7683536 standardize MessageProperties throughout codebase 2014-06-10 09:16:04 -04:00
Matt Broadstone 4422924219 convert QAMQP::Queue to a proper QQueue subclass, move MessageProperties to QAMQP namespace 2014-06-10 09:05:42 -04:00
Matt Broadstone 50a588e678 allow for creation of a queue with no name, added auto test for validation 2014-06-09 14:07:13 -04:00
Matt Broadstone bea9204824 added qAmqpDebug to reduce debug messages during testing 2014-06-06 13:46:08 -04:00
Matt Broadstone 8599cec147 - added auto tests for binding to standard AMQP-defined exchanges
- removed name parameter from Queue::declare, reducing confusion. Updated manual test to reflect this change
2014-06-06 13:37:36 -04:00
Matt Broadstone 9b45f2ac58 - added auto tests for remove
- remove now takes flags rather than magical booleans
- fixed a bug delete -> deleteOk in QueuePrivate so we can listen for sync queue destruction
- added error signals to Client(Connection), and Channel
- removed automatic calls to remove a Queue when the channel is closed, or Queue is deleted
  this behavior is already handled by the AutoDelete declare option
2014-06-06 12:10:51 -04:00
Matt Broadstone d9d52e489a Queue::messageReceived no longer passes the queue as a parameter (use sender() if you need it)
fixed qamqp manual test to send key before message
2014-06-05 15:44:14 -04:00
Matt Broadstone 01d792f38d refactor Message to be explicitly shared class, rather than passing
shared pointers around directly
2014-06-05 15:37:41 -04:00
Matt Broadstone 1a769b2b48 rename ChannelPrivate::number -> channelNumber 2014-06-04 09:50:31 -04:00
Matt Broadstone 343609d884 move all frame handlers to private classes in an effort to make amqp_frame private 2014-06-04 09:46:15 -04:00
Matt Broadstone 1198db2857 refactored Channel, changed some methods to better convey their intention 2014-06-03 13:00:25 -04:00
Matt Broadstone 10ca783442 split binded to bound/unbound, replaced invokeMetaMethod with Q_EMIT 2014-05-30 15:40:38 -04:00
Matt Broadstone 93287a4836 moved declare/remove from QueuePrivate to Queue 2014-05-30 15:36:11 -04:00
Matt Broadstone d8da64b373 merge QueuePrivate and Queue bind/unbind methods 2014-05-30 15:20:57 -04:00
Matt Broadstone 598b10bf73 merge more code from private functions to Queue class 2014-05-30 15:10:55 -04:00
Matt Broadstone 1c3bd9fdf1 merge _q_body/_q_content from QueuePrivate to Queue 2014-05-30 14:57:09 -04:00
Matt Broadstone e5e3036d03 merge Queue::purge and QueuePrivate::purge 2014-05-30 14:51:44 -04:00
Matt Broadstone c6d0c57d5f remove crufty unused functions, used constBegin/End for iterations, store itEnd during loop, various other cleanups 2014-05-30 14:33:24 -04:00
Matt Broadstone 64f23fd648 namespace cleanup 2014-05-28 14:58:18 -04:00
Matt Broadstone dbb03b9df4 move library files to src directory 2014-05-28 12:35:31 -04:00