weili-jiang
fc22637578
Check pipe writes in linux_tcp to suppress Wunused-result in GCC
2019-02-05 08:33:28 +13:00
Emiel Bruijntjes
e10fd61ac8
slightly prettified the code
2019-01-10 08:25:31 +01:00
Michael van der Werve
a774e6c10c
on ssl error, make sure that it is found out
2019-01-08 13:14:42 +01:00
Michael van der Werve
63d4acdce3
should be in working order now
2019-01-08 12:58:38 +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
Emiel Bruijntjes
03ca83cb50
handle case when tcp connection is lost during reading, that should report an error back to user-space too ( fixes #266 )
2018-12-03 08:29:17 +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
ec31f5ad11
added Channel implementation file ( fixes #267 )
2018-11-25 12:46:12 +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
888dc8c40b
added channel::usable() to replace channel::connected()
2018-11-12 15:24:25 +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
e83a07f871
renamed onClosed to onLost to prevent confusion between TcpHandler::onClosed() and ConnectionHandler::onClosed()
2018-11-08 09:58:36 +01:00
Emiel Bruijntjes
da6744bf4d
renamed ConnectionHandler::onConnectedO() to ConnectionHandler::onReady()
2018-11-08 08:34:58 +01:00
Emiel Bruijntjes
34f84e1ab7
handle unlikely error when ssl-handshake could not be started
2018-11-07 23:44:24 +01:00
Emiel Bruijntjes
06dc23190d
added ConnectionHandler::onProperties and TcpConnectionHandler::onProperties
2018-11-07 23:22:25 +01:00
Emiel Bruijntjes
428219ad83
simplified and improved the close procedure
2018-11-07 15:04:08 +01:00
Emiel Bruijntjes
64c876e65a
removed support for TcpConnection::flush() and removed internal TcpShutdown state
2018-11-06 18:11:27 +01:00
Emiel Bruijntjes
6ea2d8dffd
removed unneeded comment
2018-11-05 17:18:24 +01:00
Emiel Bruijntjes
9330231a69
fixed assigning the new state
2018-11-05 17:11:21 +01:00
Emiel Bruijntjes
54049f9e8e
improved the tcp handler, added more methods to monitor whether a connection is connected, logged on and in an error state
2018-11-05 16:49:55 +01:00
Emiel Bruijntjes
bb417e89c2
add support for ConnectionHandler::onAttached() and ConnectionHandler::onDetached()
2018-11-05 16:19:48 +01:00
Emiel Bruijntjes
359eec189f
work in progress, simplified the tcp and ssl states
2018-11-05 16:18:20 +01:00
Emiel Bruijntjes
e617161c8c
the state::abort() method is no longer needed
2018-11-05 15:49:22 +01:00
Emiel Bruijntjes
b81bc340b5
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
Emiel Bruijntjes
3f32e8773d
fixed typo and possible (but unlikely) crash in the tcp-resolver
2018-10-28 18:52:41 +01:00
Emiel Bruijntjes
62a4262a58
the TcpConnection::close() method now supports an "immediate" parameter to skip the official amqp handshake for closing down
2018-10-28 18:13:13 +01:00
Emiel Bruijntjes
8546f52cd0
added onAttached() and onDetached() to the TcpHandler interface
2018-10-28 10:22:01 +01:00
Emiel Bruijntjes
c52e8ff0b2
added ConnectionHandler::onAttached() and ConnectionHandler::onDetached() methods
2018-10-28 10:04:34 +01:00
Emiel Bruijntjes
11af8a7f6b
Merge pull request #218 from RZRCDR/fix_msvc_compiler_warnings
...
Fix msvc compiler warnings
2018-10-27 12:52:07 +02:00
Peter A. Bigot
adf4fb3bc1
TcpResolver: reduce risk of accessing destructed TcpConnection
...
Invoking TcpHandler::onError might result in the connection being
destroyed. Though the reference to it in TcpClosed() is likely benign,
it's safer to follow the standard practice of returning a nullptr to
indicate that the connection is known to be destroyed.
2018-06-24 10:31:21 -05:00
Emiel Bruijntjes
e665916b85
Merge branch 'master' of github.com:CopernicaMarketingSoftware/AMQP-CPP
2018-06-15 09:19:37 +02:00
Emiel Bruijntjes
80ce6327bb
fixed ssl handling: the sslconnected class incorrectly cached the readability/writability state of a socket, even after it already did a read- or write-operation, which could lead to the system getting to read mode when no data was expected
2018-06-15 09:19:27 +02:00
Emiel Bruijntjes
2430da76c3
refactored code
2018-06-10 20:46:11 +02:00
xqing2003
e40006058e
fix memory leak
...
fix memory leak when channel error
2018-06-06 22:11:55 +08:00
xqing2003
7737917886
solve memory leak
2018-06-01 23:30:30 +08:00
Emiel Bruijntjes
025fdb5530
Merge pull request #134 from mgibula/master
...
Add Publisher Confirms support
2018-05-14 22:42:56 +02:00
Marcin Gibula
cab0602dbf
Forgot to set ChannelImpl::_confirm
2018-05-14 22:36:49 +02:00
Marcin Gibula
578abbf973
Update src/CMakeLists.txt
2018-05-14 21:44:01 +02:00
Marcin Gibula
2aa55b83c7
Replace old API with DeferredConfirm class
2018-05-14 21:12:34 +02:00
Marcin Gibula
bf1caa1eae
Add DeferredConfirm class
2018-05-14 21:05:49 +02:00
Marcin Gibula
eeee1c3c5f
Rename setConfirmMode() to confirmSelect()
2018-05-14 12:59:20 +02:00
Marcin Gibula
e0b04ad7e0
Remove messageCounter()
2018-05-14 12:55:15 +02:00
Emiel Bruijntjes
5d69cc567c
more calls to openssl::err_clear_error() to prevent that the error queue contains errors that are not related to the operations that is being checked
2018-04-27 12:38:06 +02:00