AMQP-CPP/src
Emiel Bruijntjes e841b3ff69 AMQP::Tagger now takes a std::string_view 2023-03-26 18:40:14 +02:00
..
linux_tcp make sure threads are synchronized (fixes 474) 2022-08-09 23:10:07 +02:00
.gitignore restore ignore file for make. 2018-01-23 19:22:33 +01:00
CMakeLists.txt 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
Makefile many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
array.cpp Replace shared_ptr by unique_ptr for Fields (#402) 2021-07-20 10:32:10 +02:00
basicackframe.h Replace old API with DeferredConfirm class 2018-05-14 21:12:34 +02:00
basiccancelframe.h many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
basiccancelokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
basicconsumeframe.h many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
basicconsumeokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
basicdeliverframe.h 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
basicframe.h Only allocate a message and its data when a consumer wants to and allow consumers to receive the individual parts 2016-06-23 14:42:50 +02:00
basicgetemptyframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
basicgetframe.h many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
basicgetokframe.h 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
basicheaderframe.h fixed crash because the wrong size was passed 2020-08-18 12:33:38 +02:00
basicnackframe.h Replace old API with DeferredConfirm class 2018-05-14 21:12:34 +02:00
basicpublishframe.h many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
basicqosframe.h Quality of service now supports "global" parameter (default is still false) 2014-08-07 11:00:05 +01:00
basicqosokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
basicrecoverasyncframe.h 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
basicrecoverframe.h 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
basicrecoverokframe.h 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
basicrejectframe.h 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
basicreturnframe.h 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
bodyframe.h 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
buffercheck.h 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
channel.cpp added Channel implementation file (fixes #267) 2018-11-25 12:46:12 +01:00
channelcloseframe.h work in progress on refactored tcp handling, to solve various issues, like the one that lost connections do not trigger operations to fail 2018-11-04 23:34:31 +01:00
channelcloseokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
channelflowframe.h Initial commit with the implementation of all methods apart from the publish and consume methods 2014-01-04 03:45:04 -08:00
channelflowokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
channelframe.h Removed and implemented many @todo tags from the source code, and added extra safety checks if some ignorant user decides to destruct channels or objects while they are still in use, implemented correct closing handshake for both connections and channels 2014-01-06 08:15:21 -08:00
channelimpl.cpp many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
channelopenframe.h added "override" keywords to overridden methods, fixed buffer overflow in setting up a connection 2015-11-28 11:38:15 +01:00
channelopenokframe.h 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
confirmframe.h convert dos line endings 2020-09-24 12:30:04 +02:00
confirmselectframe.h convert dos line endings 2020-09-24 12:30:04 +02:00
confirmselectokframe.h convert dos line endings 2020-09-24 12:30:04 +02:00
connectioncloseframe.h work in progress on refactored tcp handling, to solve various issues, like the one that lost connections do not trigger operations to fail 2018-11-04 23:34:31 +01:00
connectioncloseokframe.h Removed and implemented many @todo tags from the source code, and added extra safety checks if some ignorant user decides to destruct channels or objects while they are still in use, implemented correct closing handshake for both connections and channels 2014-01-06 08:15:21 -08:00
connectionframe.h Initial commit with the implementation of all methods apart from the publish and consume methods 2014-01-04 03:45:04 -08:00
connectionimpl.cpp Add check for _maxFrame > 0 2022-08-16 12:37:08 -04:00
connectionopenframe.h - Moved linux specific TCP implementation to a seperate folder and removed it from default build. Does not yet build correctly if you want that. 2018-01-23 16:47:53 +01:00
connectionopenokframe.h renamed ConnectionHandler::onConnectedO() to ConnectionHandler::onReady() 2018-11-08 08:34:58 +01:00
connectionsecureframe.h - Moved linux specific TCP implementation to a seperate folder and removed it from default build. Does not yet build correctly if you want that. 2018-01-23 16:47:53 +01:00
connectionsecureokframe.h - Moved linux specific TCP implementation to a seperate folder and removed it from default build. Does not yet build correctly if you want that. 2018-01-23 16:47:53 +01:00
connectionstartframe.h implemented "consumer cancel notifications" (see https://www.rabbitmq.com/consumer-cancel.html) 2022-11-23 22:09:15 +01:00
connectionstartokframe.h - Moved linux specific TCP implementation to a seperate folder and removed it from default build. Does not yet build correctly if you want that. 2018-01-23 16:47:53 +01:00
connectiontuneframe.h clients can now intercept the heartbeat negotiation, and install a shorter of longer heartbeat interval, and clients can be notified for received heartbeat frames 2015-12-02 10:46:55 +01:00
connectiontuneokframe.h Removed and implemented many @todo tags from the source code, and added extra safety checks if some ignorant user decides to destruct channels or objects while they are still in use, implemented correct closing handshake for both connections and channels 2014-01-06 08:15:21 -08:00
deferredcancel.cpp Only allocate a message and its data when a consumer wants to and allow consumers to receive the individual parts 2016-06-23 14:42:50 +02:00
deferredconfirm.cpp Change windows line endings to unix ones and fix whitespace (spaces not tabs). 2020-10-05 15:44:33 +02:00
deferredconsumer.cpp 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
deferredextreceiver.cpp breaking changes: 2018-03-01 21:12:53 +01:00
deferredget.cpp now we always flush when a success is reported, and the funcction is renamed to flush 2019-06-19 10:54:50 +02:00
deferredrecall.cpp 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
deferredreceiver.cpp breaking changes: 2018-03-01 21:12:53 +01:00
exchangebindframe.h many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
exchangebindokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
exchangedeclareframe.h many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
exchangedeclareokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
exchangedeleteframe.h many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
exchangedeleteokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
exchangeframe.h Initial commit with the implementation of all methods apart from the publish and consume methods 2014-01-04 03:45:04 -08:00
exchangeunbindframe.h many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
exchangeunbindokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
extframe.h make sure compilers dont complain about unused parameters 2022-07-24 01:18:07 +03:00
field.cpp Replace shared_ptr by unique_ptr for Fields (#402) 2021-07-20 10:32:10 +02:00
flags.cpp fixed autodelete flag for declaring an exchange and added support for internal exchange. this fixes #183 2018-02-06 21:54:56 +01:00
headerframe.h Only allocate a message and its data when a consumer wants to and allow consumers to receive the individual parts 2016-06-23 14:42:50 +02:00
heartbeatframe.h added connection::heartbeat() method, userspace programs are responsible for calling this method once every 60 seconds 2017-06-16 10:14:42 +01:00
inbuffer.cpp when retrieving data from an inbuffer, no longer restrict ourselves to uint32 2022-04-25 11:16:57 +02:00
includes.h {auto} renamed confirmed to tagger and added unacknowledged counter' 2020-10-21 11:50:34 +02:00
methodframe.h make sure compilers dont complain about unused parameters 2022-07-24 01:18:07 +03:00
passthroughbuffer.h fixed copy and move constructors of the PassthroughBuffer (fixes #418) 2021-08-10 14:24:04 +02:00
protocolheaderframe.h it now is possible to publish messages to an exchange with this library 2014-01-05 04:08:35 -08:00
queuebindframe.h many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
queuebindokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
queuedeclareframe.h many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
queuedeclareokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
queuedeleteframe.h many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
queuedeleteokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
queueframe.h Initial commit with the implementation of all methods apart from the publish and consume methods 2014-01-04 03:45:04 -08:00
queuepurgeframe.h many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
queuepurgeokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
queueunbindframe.h many methods in the Channel class now take a std::string_view instead of a std::string parameter, and are thus a bit more efficient 2023-02-13 10:27:51 +01:00
queueunbindokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
receivedframe.cpp Remove unused ConsumedMessage class 2021-07-28 12:14:50 +02:00
receivedframe.h 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
reducedbuffer.h added destructor of ReducedBuffer 2014-08-13 15:02:54 +02:00
returnedmessage.h the AMQP::Message and AMQP::Envelope objects can now longer be copied or moved, and the signatures for creating an envelope and publishing a message have been made much more strict. This could be a API breaking change, to the version number should be upped 2017-03-08 13:32:51 +01:00
table.cpp Fix: cannot call size() on a moved-from Field 2021-07-01 13:48:10 +02:00
tagger.cpp AMQP::Tagger now takes a std::string_view 2023-03-26 18:40:14 +02:00
throttle.cpp {auto} renamed confirmed to tagger and added unacknowledged counter' 2020-10-21 11:50:34 +02:00
transactioncommitframe.h Removed and implemented many @todo tags from the source code, and added extra safety checks if some ignorant user decides to destruct channels or objects while they are still in use, implemented correct closing handshake for both connections and channels 2014-01-06 08:15:21 -08:00
transactioncommitokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
transactionframe.h Initial commit with the implementation of all methods apart from the publish and consume methods 2014-01-04 03:45:04 -08:00
transactionrollbackframe.h Removed and implemented many @todo tags from the source code, and added extra safety checks if some ignorant user decides to destruct channels or objects while they are still in use, implemented correct closing handshake for both connections and channels 2014-01-06 08:15:21 -08:00
transactionrollbackokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
transactionselectframe.h Removed and implemented many @todo tags from the source code, and added extra safety checks if some ignorant user decides to destruct channels or objects while they are still in use, implemented correct closing handshake for both connections and channels 2014-01-06 08:15:21 -08:00
transactionselectokframe.h fix for incorrect handling of synchronous flag 2019-06-19 09:38:56 +02:00
watchable.cpp Initial commit with the implementation of all methods apart from the publish and consume methods 2014-01-04 03:45:04 -08:00