#include <ClientFlowController.h>
Private Member Functions | |
| void | reportFlowReconnect () |
| void | observeConnectEventReceiver (core::eventreceiver::ConnectEventReceiver *connectEventReceiver) |
| void | armReconnectTimer (double timeoutSeconds, const std::function< void()> &dispatcher) |
| void | terminateAsyncSubFlow () override |
| void | cancelReconnectTimer () |
Private Attributes | |
| bool | reconnectEnabled {true} |
| std::set< core::eventreceiver::ConnectEventReceiver * > | connectEventReceivers |
| std::unique_ptr< core::timer::Timer > | reconnectTimer |
| std::function< void(ClientFlowController *)> | onFlowReconnectCallback |
Friends | |
| template<typename SocketConnectorT, typename SocketContextFactoryT, typename... Args> | |
| class | SocketClient |
Additional Inherited Members | |
| Protected Member Functions inherited from core::socket::stream::FlowController< ClientFlowController > | |
| void | reportFlowRetry () |
| void | armRetryTimer (double timeoutSeconds, const std::function< void()> &dispatcher) |
Definition at line 70 of file ClientFlowController.h.
| core::socket::stream::ClientFlowController::ClientFlowController | ( | net::config::ConfigInstance * | configInstance | ) |
Definition at line 19 of file ClientFlowController.cpp.
References core::socket::stream::FlowController< ConcreteFlowController >::FlowController(), and onFlowReconnectCallback.
|
private |
Definition at line 58 of file ClientFlowController.cpp.
References reconnectEnabled, reconnectTimer, and core::timer::Timer::singleshotTimer().
|
private |
Definition at line 77 of file ClientFlowController.cpp.
References core::Timer::cancel(), and reconnectTimer.
Referenced by stopReconnect().
| bool core::socket::stream::ClientFlowController::isReconnectEnabled | ( | ) | const |
Definition at line 30 of file ClientFlowController.cpp.
References reconnectEnabled.
|
private |
Definition at line 48 of file ClientFlowController.cpp.
References connectEventReceivers, and core::DescriptorEventReceiver::isEnabled().
|
private |
Definition at line 44 of file ClientFlowController.cpp.
References onFlowReconnectCallback.
| ClientFlowController * core::socket::stream::ClientFlowController::setOnFlowReconnect | ( | const std::function< void(ClientFlowController *)> & | callback | ) |
Definition at line 34 of file ClientFlowController.cpp.
References onFlowReconnectCallback.
| void core::socket::stream::ClientFlowController::stopReconnect | ( | ) |
Definition at line 25 of file ClientFlowController.cpp.
References cancelReconnectTimer(), and reconnectEnabled.
Referenced by terminateAsyncSubFlow().
|
overrideprivatevirtual |
Implements core::socket::stream::FlowController< ClientFlowController >.
Definition at line 64 of file ClientFlowController.cpp.
References connectEventReceivers, core::eventreceiver::ConnectEventReceiver::stopConnect(), stopReconnect(), and core::socket::stream::FlowController< ConcreteFlowController >::stopRetry().
|
friend |
Definition at line 101 of file ClientFlowController.h.
|
private |
Definition at line 92 of file ClientFlowController.h.
Referenced by observeConnectEventReceiver(), and terminateAsyncSubFlow().
|
private |
Definition at line 96 of file ClientFlowController.h.
Referenced by ClientFlowController(), reportFlowReconnect(), and setOnFlowReconnect().
|
private |
Definition at line 90 of file ClientFlowController.h.
Referenced by armReconnectTimer(), isReconnectEnabled(), and stopReconnect().
|
private |
Definition at line 94 of file ClientFlowController.h.
Referenced by armReconnectTimer(), and cancelReconnectTimer().