Commit Graph

24 Commits

Author SHA1 Message Date
Matt Broadstone cab23c97cc add support for cancelling a consumer
cancel method and cancelled signal added to Queue, added auto tests
to guarantee conditions surrounding the cancel process
2014-06-24 11:09:19 -04:00
Matt Broadstone c43c2d6788 ensure consuming only occurs once per queue
a Queue can act as a consumer in QAMQP, but previously we did no checks
to ensure that a Queue sent a request to consume only once. This commit
adds API for checking and ensuring that this is the case. Also, I reverted
the changes to allow multiple consumer tags because this was incorrect.
Also included is a new signal "consuming" to notify when consumption occurs,
and auto tests have been updated to use this, as well as verify that it
can only occur once per-consumer
2014-06-24 10:30:05 -04:00
Matt Broadstone 4f808bef92 add publish options
- add publish options to Exchange (these need to move to a Basic abstraction)
- listen for bmReturn in Exchange to catch errors
- added auto tests to check behavior of an invalid mandatory publish
- cleaned up bit fields in exchange and queue
2014-06-23 15:36:03 -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 4422924219 convert QAMQP::Queue to a proper QQueue subclass, move MessageProperties to QAMQP namespace 2014-06-10 09:05:42 -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 73a1d1db36 organize which methods are related to which parts of the spec, try to figure
out what we're missing
2014-06-05 14:10:29 -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 1c3bd9fdf1 merge _q_body/_q_content from QueuePrivate to Queue 2014-05-30 14:57:09 -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 e325037fdd remove needless function duplication in private class 2014-05-29 14:10:38 -04:00
Matt Broadstone 8f39b2a367 missed a few namespace cleanups 2014-05-28 16:28:45 -04:00
Matt Broadstone 2ba2823b84 export it all! this may be unnecessary, more investigation needed 2014-05-28 15:33:15 -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
fuCtor 3fbb01fef4 [+] Exchange
[+] Queue
[+] Basic.publish
2012-02-12 04:22:10 -08:00
fuCtor 5ca89c228b First commit
Implement:
* Connection
* Channel
2012-01-29 07:36:03 -08:00