Commit Graph

96 Commits

Author SHA1 Message Date
RafalGoslawski bcf77ea1c8 Add soname and release build traget, default make target is debug 2015-05-19 13:51:36 +02:00
Martijn Otto a93b88697d Fix double ready bug for channel, fixes #25 2015-05-18 10:56:50 +02:00
Martijn Otto 7ae4f9c5ff Fixed a bug in the envelope, easy retrieval of field type and improved casting operators for numeric fields 2015-05-05 13:38:20 +02:00
Martijn Otto fcc9522e16 Some bugfixes and performance enhancements 2015-04-30 14:18:18 +02:00
Martijn Otto 45deeaa754 Fixed a bug where a frame could be sent exceeding the maximum frame size (resulting in protocol errors) and added some optimizations 2015-04-30 10:59:03 +02:00
Martijn Otto b9caf0199d Received messages are now moved into the callback instead of provided as a const reference 2015-04-28 10:58:49 +02:00
Emiel Bruijntjes ad3b95741e various trics and changes so that windows compilers, and 32bit systems will not complain about stuff 2015-04-24 10:46:44 +02:00
Emiel Bruijntjes 3a4de6194c removed symlinks from repository because not all systems (hello windows) understand them 2015-04-24 09:58:32 +02:00
Emiel Bruijntjes f23dc72a4f Fixed documentation, removed references to the ChannelHandler - an object that is no longer supported by AMQP-CPP 2015-01-26 14:47:30 +01:00
Emiel Bruijntjes 236dd02b13 fixed theoretical issue when deferredGet onSize() methods destructs the underlying channel object 2014-09-02 11:18:11 +02:00
Emiel Bruijntjes 9653578d4a The Channel.get().onFinalize() function was called before the Channel.get().onSuccess() method, which is strange. This has been fixed. To fix this, we had to refactor the Deferred* into shared_ptrs 2014-09-02 10:32:55 +02:00
Emiel Bruijntjes aceac8b677 the finalize callback is now called as part of the deferred object destructor, this ensures that the finalize callback will always be called 2014-08-29 13:18:08 +02:00
Emiel Bruijntjes 8759258a3e Channel::get() and Channel::purgeQueue() methods always reported an error, even while there was no error 2014-08-29 13:16:05 +02:00
Emiel Bruijntjes ebcdd71848 Added onSize() method to DeferredGet 2014-08-28 10:02:01 +02:00
Emiel Bruijntjes c7b3f71f14 the connection.close function was only waiting for synchronous calls to complete, async calls that were waiting (after a synchronous) were still discarded, this has been fixed 2014-08-20 13:40:29 +02:00
Emiel Bruijntjes d23e818f64 turns out that shared_from_this() can not be called from the constructor, so we made a special attach() function to postpone object initialization 2014-08-20 12:44:52 +02:00
Michael van der Werve 53b2bd9f0d fixed typo in the connection implementation file 2014-08-20 12:03:15 +02:00
Emiel Bruijntjes 36734671cc channel instructions that were given before the connection was fully initialized were immediately lost, if the connection was immediately closed 2014-08-20 11:59:05 +02:00
Emiel Bruijntjes 6997a70cf1 when a connection was closed, the commands already given to the channels were sometimes by-passed by the closing channel. This has been fixed. Also solved the problem that calls executed on channel objects that fall out of scope were not always completed 2014-08-20 11:47:16 +02:00
Emiel Bruijntjes 328820f898 renamed apple.h to endian.h because it turns out that it is also used for linux systems, and removed double implemented ChannelImpl::get() function 2014-08-14 15:25:44 +02:00
Emiel Bruijntjes 3e47191f90 fixed apple incompatibility 2014-08-14 15:19:08 +02:00
Emiel Bruijntjes 271cc39c17 whitespace change 2014-08-13 16:43:59 +02:00
Emiel Bruijntjes 5bc7b4b5b3 added destructor of ReducedBuffer 2014-08-13 15:02:54 +02:00
Emiel Bruijntjes 945a01f659 The Connection::parse() method can now also be called with a buffer object, which allows the user to implement the buffer much more efficiently: it no longer has to be an array 2014-08-13 13:01:27 +02:00
Richard Hodges d2a84b5f8d build - added new source files to CMakeLists 2014-08-07 11:09:02 +01:00
Emiel Bruijntjes a8ff6de550 fixed bug in channel.get() calls 2014-08-07 11:00:06 +01:00
Emiel Bruijntjes 37a51cdc7b basic.get is asynchronous until the entire body has been received, only then subsequent messages are sent + first work in progress on implementing smarter buffers 2014-08-07 11:00:06 +01:00
Emiel Bruijntjes dca76db2f0 empty messages could not be consumed or get, this has now been fixed 2014-08-07 11:00:06 +01:00
Emiel Bruijntjes bcbe50e22c basic.get callbacks only have to be installed for a single message, so we uninstall it right after the message was handled 2014-08-07 11:00:06 +01:00
Emiel Bruijntjes b4270f39bc added Channel::get() that allows one to retrieve a single message from the channel 2014-08-07 11:00:06 +01:00
Emiel Bruijntjes f905c9db49 Quality of service now supports "global" parameter (default is still false) 2014-08-07 11:00:05 +01:00
Emiel Bruijntjes d99b117a60 fixed bug in channel.get() calls 2014-08-04 13:44:17 +02:00
Emiel Bruijntjes e299aa5fac basic.get is asynchronous until the entire body has been received, only then subsequent messages are sent + first work in progress on implementing smarter buffers 2014-08-01 11:55:07 +02:00
Emiel Bruijntjes b97222c4db empty messages could not be consumed or get, this has now been fixed 2014-08-01 10:37:18 +02:00
Emiel Bruijntjes 7956d706fb basic.get callbacks only have to be installed for a single message, so we uninstall it right after the message was handled 2014-08-01 10:05:02 +02:00
Emiel Bruijntjes 42514e80db Merge branch 'master' of https://github.com/CopernicaMarketingSoftware/AMQP-CPP 2014-07-31 13:11:30 +02:00
Emiel Bruijntjes f39410039b added Channel::get() that allows one to retrieve a single message from the channel 2014-07-31 12:58:13 +02:00
Martijn Otto f2f241665f Merge branch 'master' of github.com:CopernicaMarketingSoftware/AMQP-CPP 2014-07-31 10:17:15 +02:00
Martijn Otto 98aba8f638 Fix for issue #12 2014-07-31 10:16:55 +02:00
Emiel Bruijntjes cac3247304 Quality of service now supports "global" parameter (default is still false) 2014-07-31 10:10:15 +02:00
Richard Hodges d4b10cbf35 bug - negate the result of send() before using the result in a DeferredResult constructor 2014-07-30 15:29:05 +01:00
Richard Hodges d2a97c1dd3 bugfix - fixes bug where channel declaration deferred object is put in fail state after successful send of data
refs #12
2014-07-30 09:39:20 +01:00
Richard Hodges b9ca150dba merged from latest upstream 2014-07-28 15:16:32 +01:00
Richard Hodges b41e2edc52 Merge remote-tracking branch 'upstream/master' 2014-07-28 15:07:06 +01:00
Emiel Bruijntjes 850252e1dd link time optimization only for static libs 2014-07-25 09:34:01 +02:00
Richard Hodges 7c0642f30d build - added CMakeLists.txt to allow integration into a CMAKE build tree 2014-07-11 18:17:03 +01:00
Emiel Bruijntjes 3a700226c8 BasicNack frame makes the consumer stop (dont know why) so we use the BackReject message instead when there is no need to reject multiple messages 2014-05-26 18:17:49 +02:00
Martijn Otto a9570277b7 Removed the nowait option from the public interface, because the deferred would never be called and implemented a queue to wait for synchronous methods to complete before sending the next frame 2014-04-29 15:51:33 +02:00
Emiel Bruijntjes 1fecc57d67 when a connection gets in error state, all deferred results will now also call their error callback, and the channel wide error handler is called _after_ all individual error handlers are called 2014-04-16 09:25:08 +02:00
Emiel Bruijntjes 82249ee368 update documentation, error callbacks now get a const char * instead of a std::string 2014-04-15 14:22:30 +02:00