26 #ifndef NFD_DAEMON_FACE_TCP_TRANSPORT_HPP
27 #define NFD_DAEMON_FACE_TCP_TRANSPORT_HPP
46 TcpTransport(protocol::socket&& socket, ndn::nfd::FacePersistency persistency, ndn::nfd::FaceScope faceScope);
62 handleError(
const boost::system::error_code& error)
final;
69 handleReconnect(
const boost::system::error_code& error);
72 handleReconnectTimeout();
77 static time::milliseconds s_initialReconnectWait;
81 static time::milliseconds s_maxReconnectWait;
85 static float s_reconnectWaitMultiplier;
88 typename protocol::endpoint m_remoteEndpoint;
92 scheduler::ScopedEventId m_reconnectEvent;
96 time::milliseconds m_nextReconnectWait;
Implements Transport for stream-based protocols.
A Transport that communicates on a connected TCP socket.
bool canChangePersistencyToImpl(ndn::nfd::FacePersistency newPersistency) const final
invoked by canChangePersistencyTo to perform the check
TcpTransport(protocol::socket &&socket, ndn::nfd::FacePersistency persistency, ndn::nfd::FaceScope faceScope)
void handleError(const boost::system::error_code &error) final
void afterChangePersistency(ndn::nfd::FacePersistency oldPersistency) final
invoked after the persistency has been changed
ssize_t getSendQueueLength() final
void doClose() final
performs Transport specific operations to close the transport
#define NFD_PUBLIC_WITH_TESTS_ELSE_PRIVATE
#define NFD_VIRTUAL_WITH_TESTS
#define NFD_FINAL_UNLESS_WITH_TESTS
#define NFD_PROTECTED_WITH_TESTS_ELSE_PRIVATE
#define NFD_LOG_MEMBER_DECL_SPECIALIZED(cls)
Copyright (c) 2014-2015, Regents of the University of California, Arizona Board of Regents,...