Commit Graph

232 Commits

Author SHA1 Message Date
Emiel Bruijntjes a025e6c1c9 breaking change: the linux-tcp module is no longer included by default, applications that rely on this now have to explicitly include amcpcpp/linux_tcp 2018-03-06 08:46:17 +01:00
Emiel Bruijntjes 5b8841c937 removed more tabs 2018-03-06 08:45:12 +01:00
Emiel Bruijntjes 69c615d0a4 removed tcp prefix from all ssl related classes 2018-03-06 08:39:42 +01:00
Emiel Bruijntjes 463eed89c0 work in progress on closing ssl connections 2018-03-05 22:24:19 +01:00
Tamas Elekes e46dfcf3b8 work in progress on ssl support for the AMQP-CPP library 2018-03-05 17:29:37 +01:00
Tamas Elekes 342268e50a support for amqps:// addresses in the AMQP::Address class (although it does not yet make a real secure connection) 2018-03-02 13:53:00 +01:00
Tamas Elekes ab817384b1 fixed auth method prefix extra / char 2018-03-02 12:54:09 +01:00
Tamas Elekes b9047f5ea7 added ampqs:// parsing to address 2018-03-02 12:14:43 +01:00
Emiel Bruijntjes 41239a1952 fixed to make returning message functional, and added test code 2018-03-01 22:54:50 +01:00
Emiel Bruijntjes 1ccd93cc5e final step (although untested) for handling returned messages 2018-03-01 22:27:27 +01:00
Emiel Bruijntjes 1f3500cee8 breaking changes:
channel.publish() now returns a DeferredConsumer object on which callbacks can be installed for handling returned messages,
channel.get().onSize() has a different behavior: it now reports the message size (and no longer the queue size),
channel.get().onCount() has been added: it reports the queue size (this used to be the onSize() method),
channel.consume().onSize() method has been added to find out the size of the upcoming message
2018-03-01 21:12:53 +01:00
Emiel Bruijntjes f39df772d3 breaking changes:
channel.publish() now returns a DeferredConsumer object on which callbacks can be installed for handling returned messages,
channel.get().onSize() has a different behavior: it now reports the message size (and no longer the queue size),
channel.get().onCount() has been added: it reports the queue size (this used to be the onSize() method),
channel.consume().onSize() method has been added to find out the size of the upcoming message
2018-03-01 21:12:50 +01:00
Emiel Bruijntjes ef76876d67 refactored code to make room for a deferredpublisher class (which will also use the deferredreceiver base class) 2018-03-01 18:07:18 +01:00
Emiel Bruijntjes 520fe40201 refactored handling of incoming messages from consume and get operations, to prepare for future handling of returned messages and publisher confirms. this also implies a small change to the api: the begin-callback when a message is received now also gets the original exchange and routing key (which could be useful) 2018-03-01 17:34:27 +01:00
Emiel Bruijntjes 3ccc6af475 added deferredreceiver files (forgotter in prev commit) 2018-02-27 05:09:03 +01:00
Emiel Bruijntjes e0feb17ecc renamed deferredconsumerbase into deferredreceiver, because it is not only a base class for the consumer, but also for other receiving operations: get requests and in the future also for returned messages 2018-02-27 05:08:21 +01:00
Emiel Bruijntjes ec327de396 less conservative caching of outgoing data. This fixes #184 2018-02-07 10:08:32 +01:00
Emiel Bruijntjes f5540e9af2 fixed autodelete flag for declaring an exchange and added support for internal exchange. this fixes #183 2018-02-06 21:54:56 +01:00
Steven Geddis accc1810a0 remove timer interval from ctor init list 2018-02-01 15:31:19 +01:00
Steven Geddis 5a853134aa remove second ctor with heartbeat interval (extend class instead). Change private to protected to allow LibBoostAsioHandler to be extended. 2018-02-01 15:27:59 +01:00
Steven Geddis 33c8e76a7e correct comment 2018-02-01 13:11:23 +01:00
Steven Geddis ae3b94fe92 use custom heartbeat interval outright, if set. 2018-02-01 13:05:41 +01:00
Steven Geddis b713d48bb9 add second constructor with heartbeat interval; apply modern cpp typedefs; Add comments; 2018-02-01 12:44:48 +01:00
zerodefect af1b54e268
Removed double inclusion of boost/function.hpp 2018-01-30 11:45:40 +00:00
zerodefect 1e9d1360f7 Fixed build error. 2018-01-30 10:43:08 +00:00
zerodefect 4b2c423896 Build examples now with travis-ci to ensure new changes don't break existing code. Fixed warnings as a result of lambda captures. 2018-01-30 10:07:27 +00:00
Aljar Meesters c287382770 fix includes because existing code was no longer compiling after the latest changes 2018-01-30 10:45:16 +01:00
Emiel Bruijntjes 3d823adb51 add include for boost/function.hpp 2018-01-30 09:27:43 +01:00
Aart Stuurman 99974d36d3 fixed strcasecmp error on windows platforms. 2018-01-29 17:29:27 +01:00
Aart Stuurman 0995b3e0ec fixed htonll compile error on windows. 2018-01-29 17:12:06 +01:00
Aart Stuurman f64b705c19 Merge branch 'clean-build' of https://github.com/surgura/AMQP-CPP into clean-build 2018-01-28 22:20:18 +01:00
Aart Stuurman 62065431b3 forgot file 2018-01-26 22:42:56 +01:00
Aart Stuurman 99cc34d922 Added linux_tcp.h so we can now once again use the tcp implementation of the handler. 2018-01-26 22:42:28 +01:00
Aart Stuurman f25efd2235 Merge https://github.com/CopernicaMarketingSoftware/AMQP-CPP into travis 2018-01-25 18:17:43 +01:00
Steven Geddis 959e6238ae code formatting; capture strand by copy in timer handler 2018-01-24 15:06:35 +01:00
Steven Geddis 8477fbb272 add PTR_FROM_THIS define; remove io_handler code duplication via read/write/dispatch wrapper functions. 2018-01-24 13:24:43 +01:00
Aart Stuurman cf7261add5 Reordered public include files so they are now in include/amqpcpp/. 2018-01-24 01:58:18 +01:00
Aart Stuurman 4c7a71e3a6 Fixed compile error on g++ caused by fixing warning. 2018-01-24 00:59:46 +01:00
Aart Stuurman b211fc7779 fixed 32 bit warnings. 2018-01-24 00:38:07 +01:00
Aart Stuurman 4072430fb3 Attempt to fix warning C4267 2018-01-24 00:19:55 +01:00
Steven Geddis d71040b2e5 fix bad opening comment block 2018-01-23 19:16:44 +01:00
Aart Stuurman 27f765b5f7 linux tcp is now opt-out instead of opt-in(to keep compatibility with the original lib). 2018-01-23 19:15:10 +01:00
Steven Geddis 4652a9cbdf libboostasio.h does not compile with clang-3.9 due to following error when compile if cpp17 preprocessor check: embedding a directive within macro arguments has undefined behavior [-Werror,-Wembedded-directive]. Fix this by moving the bind away from preprocessor macro. Replace the STRAND_SOCKET_HANDLER, STRAND_TIMER_HANDLER macros with template functions. 2018-01-23 18:55:46 +01:00
Aart Stuurman 5701d28b2b added BUILD_TCP option to build the linux sockets implementation. 2018-01-23 18:49:59 +01:00
Aart Stuurman 001dfaa7e0 - Moved linux specific TCP implementation to a seperate folder and removed it from default build. Does not yet build correctly if you want that.
- Fixed conversion warnings from <some integer> type to uint32_t, which happens a lot around here. This is no functional change, just making it explicit so the compiler doesn't warn.
2018-01-23 16:47:53 +01:00
Alessandro Pischedda fd14790166 fix boost::placeholders undefined error and remain well explicited than use just '_1' or '_2' 2018-01-18 10:08:56 +01:00
Alessandro Pischedda 97124dc604
Fix compile
remove ?boost::placeholders::' .
2018-01-17 15:20:04 +01:00
Emiel Bruijntjes b25bd583a3 added operator< to AMQP::Address 2017-12-29 19:27:40 +01:00
Emiel Bruijntjes f05aba0782 added TcpConnection::fileno() to expose the internal filedescriptor / socket 2017-12-12 17:10:51 +01:00
Emiel Bruijntjes c63f62189e better docblocks so that future users will understand the difference between the callbacks for a consumer (mentioned in issue #156) 2017-11-21 16:45:05 +01:00