Commit Graph

341 Commits

Author SHA1 Message Date
Michael van der Werve 0b9f4e4af5 {auto} initial implementation of the confirmed wrapper 2020-10-07 11:49:38 +02:00
Michael van der Werve f10e861532
{auto} renamed the throttledchannel to AMQP::Throttle, since it is only a wrapper and not strictly a channel (#366) 2020-10-07 10:04:05 +02:00
Michael van der Werve 94bf5fe74b initial implementation 2020-10-06 15:14:42 +02:00
Michael van der Werve 05059ec372 case insensitive comparisons 2020-10-05 15:43:36 +02:00
Emiel Bruijntjes 0686286b9e
Merge pull request #353 from CopernicaMarketingSoftware/address-params
Address optional parameters
2020-09-29 13:16:52 +02:00
Michael van der Werve 66faa8a925 add const char * option and allow parameters to address without vhost 2020-09-29 12:04:09 +02:00
Michael van der Werve 2496dbbd4e make sure onLost and onDetached are always called 2020-09-28 16:37:12 +02:00
Michael van der Werve 18d4a2cd56 {auto} parameters in the address 2020-09-28 15:48:45 +02:00
Bas van Berckel bcb1ba1361 exclude addresses.h from include file 2020-09-24 12:24:36 +02:00
Bas van Berckel 723470d6d6 add string/cstring constructors to addresses.h; add addresses.h to include file 2020-09-23 17:09:27 +02:00
Emiel Bruijntjes 96a6fa9a5c ability to store and retrieve envelopes 2020-08-17 15:16:24 +02:00
Emiel Bruijntjes 5d95ba824f moved the ReceivedFrame class to the src-directory, as it is of no use for userspace applications 2020-08-14 12:24:40 +02:00
Emiel Bruijntjes 92d21c5ddd the ReceivedFrame class has been split into a InBuffer base class to make it easier to store messages without having to construct a full frame, this commit adds the newly introduced classes 2020-08-14 12:20:58 +02:00
Emiel Bruijntjes b03cc6ff1c the ReceivedFrame class has been split into a InBuffer base class to make it easier to store messages without having to construct a full frame 2020-08-14 12:20:22 +02:00
Emiel Bruijntjes ee6ed20430 added more parameter-types to set properties in the envelope 2020-08-14 11:52:08 +02:00
Emiel Bruijntjes e7f76bc75d the TcpConnection class no longer calls back to userspace / to the user-supplied handler if user-space explicitly destructs the object 2020-04-30 21:41:41 +02:00
Emiel Bruijntjes 31e4a8596c The onFinalize() callback could be called more than once, which is not ok 2020-04-18 16:50:14 +02:00
Emiel Bruijntjes 79fe85cc0b added Channel::ready() method 2020-04-18 08:30:44 +02:00
Emiel Bruijntjes 599764ebb8 fix bug in Channel destructor for objects that were already moved 2020-03-13 09:21:26 +01:00
Emiel Bruijntjes f3ba779e67 deferred-chain was in kept in scope by a consumer-operation, this fixes #323 2020-02-28 12:45:45 +01:00
aljar 1e44e6b68b Fixed issue where the negotiate was overwritten by the handler and the connection was closed but still a timeout was triggered 2020-02-19 11:19:12 +01:00
Emiel Bruijntjes 949dc933eb fixed obvious typo in comment 2020-02-12 07:43:08 +01:00
LAD Martin 022bd87ac1 Adds channel callbacks checking 2019-11-05 13:39:45 +00:00
Michael van der Werve 7b79b7c6e2 now we always flush when a success is reported, and the funcction is renamed to flush 2019-06-19 10:54:50 +02:00
Michael van der Werve c82fce8ec9 fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
Michael van der Werve 19d82ed1f2 fixed issue where timer could set negative value in repeat if heavily delayed 2019-05-02 12:08:14 +02:00
Emiel Bruijntjes b4a67ac618 fixed dealing with timers in libev handler 2019-03-06 12:53:35 +01:00
thijs-blom a18e518ac8 when heartbeats were disabled, the event loop refcount would not be restored correctly after the timer expired. This has been fixed (#281) 2019-01-17 16:16:38 +01:00
Thijs Blom a3c68009e7 Give the server more time to send a heartbeat to make sure one missed heartbeat does not close the connection 2019-01-15 13:12:57 +01:00
Michael van der Werve 0857022bc4 ev_timer_again should be called after next has been reset 2019-01-10 15:59:57 +01:00
Emiel Bruijntjes 901298cd1c fixed libev handler: the heartbeat interval proposed by the server was not accepted 2018-12-17 16:19:40 +01:00
Emiel Bruijntjes 5d1d2c2852 fix timer that expired too early (fix #272) 2018-12-17 16:11:53 +01:00
Emiel Bruijntjes 1256c82d60 use std::list instead of std::vector 2018-12-14 00:07:19 +01:00
Emiel Bruijntjes 20d4104d18
Merge pull request #271 from CopernicaMarketingSoftware/heartbeats
Implemented custom heartbeats in Livev
2018-12-13 23:41:20 +01:00
Youri Moll a92dc27653 Implemented custom heartbeats in Livev 2018-12-13 13:01:38 +01:00
Moreno Carullo 3d1605009b This simple change allows the library to be compiled under FreeBSD. 2018-12-03 13:00:00 +01:00
Emiel Bruijntjes d2e3792abc fixed issue when end-of-file was encountered, this fixes #266 2018-11-30 06:42:54 +01:00
Emiel Bruijntjes 53f994d61d when user calls connection.heartbeat() we now always send out the heartbeat (AMQP-CPP no longer tries to be smart about skipping heartbeats, because that could lead to timeouts if the user is a little late with its call, or when there is network congestion) 2018-11-28 13:52:00 +01:00
Emiel Bruijntjes 91a23d5737 Merge branch 'master' of github.com:CopernicaMarketingSoftware/AMQP-CPP 2018-11-23 11:16:03 +01:00
Emiel Bruijntjes ee60aeb025 The Channel constructor now throws an exception if the max number of channels has been reached 2018-11-23 11:15:51 +01:00
Emiel Bruijntjes 799583ea39 Merge branch 'master' of github.com:CopernicaMarketingSoftware/AMQP-CPP 2018-11-21 13:56:53 +01:00
Emiel Bruijntjes 8eed709988 Connection::fail() will now also call the channel::onError method 2018-11-21 13:56:44 +01:00
Emiel Bruijntjes 45ca61cc43 added TcpConnection::closed() 2018-11-14 14:15:52 +01:00
Emiel Bruijntjes 549fec5cb1 libevhandler only checks for heartbeats if not overridden by user 2018-11-12 22:07:48 +01:00
Emiel Bruijntjes 888dc8c40b added channel::usable() to replace channel::connected() 2018-11-12 15:24:25 +01:00
Emiel Bruijntjes 6432ce2ec1 added connection::usable() 2018-11-12 15:19:31 +01:00
Emiel Bruijntjes a80847dc5e fixed a couple of todos, make sure that onError() is always called 2018-11-12 12:12:04 +01:00
Emiel Bruijntjes 6f81b0a097 when tcp connection is lost, the pending operations are now reported with an error 2018-11-11 23:46:58 +01:00
Emiel Bruijntjes 8d08916b8c fixed libev compiler errors 2018-11-11 22:58:13 +01:00
Emiel Bruijntjes d83e88b95d fixed the libev handler to be compatible with amqp-cpp 4.0, and we now also close the connection if the server stops sending heartbeats 2018-11-11 22:54:42 +01:00