Commit Graph

20 Commits

Author SHA1 Message Date
Matt Broadstone 0ccb3035cd move QAMQP::Frame to private API
QAMQP::Frame used to be public API mostly for MessageProperties. There
is no longer a need to keep this API public, as it should all be wrapped
with the cleaner Message/Queue/Exchange/Client API set
2014-08-26 09:57:08 -04:00
Matt Broadstone 695f7d2997 complete close handshakes properly for Client and Channel
We had frame handlers for Close messages from the server, but were not
doing our due diligence and sending a corresponding CloseOk back to the
server after processing. It seems RabbitMQ is generous in this case, but
at least we're doing it the right way now
2014-08-07 14:12:28 -04:00
Matt Broadstone d5cc6258c6 refactor type handling in QAMQP
There are two distinctive type sets in AMQP, the basic AMQP types
and then the superset of Table value types. This commit attempts to
make that distinction more clear by the addition of a Table class.
Basically, AMQP value type read/write support is left in Frame for the
time being, while table value field read/write support has been moved
to the Table class. Also, a number of type differences exist between
the spec and rabbitmq's binary parser (noted in the errata page) which
were not previously honored.
2014-08-05 14:34:12 -04:00
Matt Broadstone a89dbb3805 add tests for proper uri validation
this is the missing component from PR #41, tests a number of example
amqp uri's provided by the RabbitMQ spec/documentation
2014-06-26 16:05:47 -04:00
Matt Broadstone 496e00abb9 move error constants to global namespace 2014-06-11 13:44:30 -04:00
Matt Broadstone 1d3f53ba60 clear buffer on forced disconnect, fatal disconnect on bad frame end, store tuning parameters 2014-06-09 16:01:23 -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 75ebbec309 stubbed out an SslClient, no tests at all but it builds 2014-06-05 21:31:24 -04:00
Matt Broadstone 607af62b7a added crude autotest for autoReconnect, made connect and disconnect private slots of Client 2014-06-05 16:09:52 -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 80ba14136b rename customProperty -> customProperties 2014-06-03 17:30:41 -04:00
Matt Broadstone d4b1824b46 merged Client Connection and Network classes, fixed a bug allowing for proper
connecting and disconnecting from a broker
2014-06-03 16:11:30 -04:00
Matt Broadstone 128f350cf8 refactored QAMQP::Network to include a dptr, made whole class private as it is
not meant to be used externally (only used by Client internally)
2014-06-03 12:28:12 -04:00
Matt Broadstone 60bcfabe2b refactor Connection into a private class, since it can only be created by a Client.
moved ConnectionPrivate methods into Connection
2014-06-03 11:50:24 -04:00
Matt Broadstone 9eabe0587e refactored Connection to take a Network in the ctor
standardized variable names
decoupled Connection and Client (they are no longer friends)
2014-06-03 09:13:37 -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 64f23fd648 namespace cleanup 2014-05-28 14:58:18 -04:00
Matt Broadstone cd33957147 rename amqp => amqp_client 2014-05-28 13:05:51 -04:00