Michael van der Werve
2262d92938
{auto} disconnected explicit requirement of reliable and throttle
2020-10-21 10:36:39 +02:00
Emiel Bruijntjes
31f2d78778
Breaking change: the channel.publish() method no longer returns a DeferredPublisher-object, because it was not logical that you had to reinstall the callbacks for bounce-methods after each individual publish() call, not was it logical that the callbacks were not always logically linked to the publish() operation that failed (they were always sent to the handler of the most recent publish() instead of to the handler of the failed publish()). At the same time we added a channel.recall() method that can be used to notify the library that user-space is prepared to recall/take-back/accept bounced messages
2020-10-19 08:52:50 +02:00
Emiel Bruijntjes
2e49fd1220
Merge pull request #345 from tarhan/master
...
Added Void field type
2020-10-14 21:02:12 +02:00
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
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
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
Dmitriy Lekomtsev
bc4b9aa163
Added setting nullptr for Table's key
2020-07-29 18:35:11 +03:00
Dmitriy Lekomtsev
1c4917bead
Added Void field type
2020-07-29 16:21:28 +03:00
Marcin Gibula
bf1caa1eae
Add DeferredConfirm class
2018-05-14 21:05:49 +02:00
Marcin Gibula
bfd91b6ab5
Merge with upstream
2018-04-10 10:30:01 +02: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
Aart Stuurman
cf7261add5
Reordered public include files so they are now in include/amqpcpp/.
2018-01-24 01:58:18 +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
Marcin Gibula
c7a12d22c1
Add confirm.select and confirm.select-ok frames
2017-06-08 22:00:28 +02:00
Okke
bdae991324
Moved header files to include/ because of broken header dependencies
2017-03-09 11:53:13 +01:00
Emiel Bruijntjes
1f5f641d8b
we now use passthrough buffers, so we no longer have to dynamically allocate a buffer for each and every outgoing message
2017-03-09 00:18:53 +01:00
theirix
66f2001c7b
Avoid SIGPIPE on OS X without MSG_NOSIGNAL
...
OS X does not have Linux-specific option MSG_NOSIGNAL.
SIGPIPE can be avoided on OS X by using sockopt SO_NOSIGPIPE.
Credits: https://noahdesu.github.io/2014/01/16/port-sendmsg.html
2016-07-10 21:44:14 +03:00
Maksim Kuzevanov
1dcbc33b53
make it compile with cmake 2.8/gcc 4.7.3
2016-07-01 17:29:35 +03:00
Emiel Bruijntjes
e2ce7103aa
disable the nagle algorithm to speed up write operations to the tcp connections (and dramatically improving write performance) fixes issue 50
2015-12-07 14:05:49 +01:00
Emiel Bruijntjes
89efd4670f
fix windows build
2015-11-01 11:11:51 +01:00
Emiel Bruijntjes
b4bd61580b
fixed to parsing incoming tcp data
2015-11-01 09:43:17 +01:00
Emiel Bruijntjes
f3955bcd51
implemented TcpConnection, so that users of the library do not have to setup their own tcp connections
2015-10-31 18:26:04 +01:00
Jakub Stefanski
6782a7bfd4
Fix Windows build
...
Fixed windef.h shadowing of 'max' definition and added LEAN_AND_MEAN
definition for more lightweight build.
Added missing 'functional' includes.
2015-10-02 15:54:15 +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
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
301b8153e3
deferred objects are now correctly destructed + added extra checks so that no crashes occur when someone destructs a channel inside a callback function
2014-04-15 12:25:56 +02:00
Emiel Bruijntjes
5680ea8f11
fix the library after the rename operation
2014-01-07 01:17:09 -08:00
Emiel Bruijntjes
aba769f5cb
monitor class moved from include directory to src
2014-01-06 13:34:54 -08:00
Emiel Bruijntjes
a442a4773a
use default compiler
2014-01-06 09:21:15 -08:00
Emiel Bruijntjes
cf1cbfa551
implemented consuming, refactored a lot of code from cpp files to header files
2014-01-05 09:50:41 -08:00
Emiel Bruijntjes
e5b705b742
Implemented buffering of outgoing messages before the connection is set up, so that it is possible to create channel objects and call AMQP methods even while the connection handshake is still in progress
2014-01-04 11:34:36 -08:00
Emiel Bruijntjes
ea4f82ac8f
Initial commit with the implementation of all methods apart from the publish and consume methods
2014-01-04 03:45:04 -08:00