a transport using Unix stream socket More...
#include <unix-transport.hpp>
Public Member Functions | |
UnixTransport (const std::string &unixSocket) | |
~UnixTransport () override | |
void | connect (boost::asio::io_service &ioService, const ReceiveCallback &receiveCallback) override |
asynchronously open the connection More... | |
void | close () override |
Close the connection. More... | |
void | pause () override |
pause the transport More... | |
void | resume () override |
resume the transport More... | |
void | send (const Block &wire) override |
send a TLV block through the transport More... | |
void | send (const Block &header, const Block &payload) override |
send two memory blocks through the transport More... | |
Public Member Functions inherited from ndn::Transport | |
Transport () | |
virtual | ~Transport ()=default |
bool | isConnected () const |
bool | isReceiving () const |
Static Public Member Functions | |
static shared_ptr< UnixTransport > | create (const std::string &uri) |
Create transport with parameters defined in URI. More... | |
Public Attributes | |
NDN_CXX_PUBLIC_WITH_TESTS_ELSE_PRIVATE | __pad0__: static std::string getSocketNameFromUri(const std::string& uri) |
Additional Inherited Members | |
Public Types inherited from ndn::Transport | |
typedef function< void(const Block &wire)> | ReceiveCallback |
typedef function< void()> | ErrorCallback |
Protected Member Functions inherited from ndn::Transport | |
void | receive (const Block &wire) |
invoke the receive callback More... | |
Protected Attributes inherited from ndn::Transport | |
boost::asio::io_service * | m_ioService |
bool | m_isConnected |
bool | m_isReceiving |
ReceiveCallback | m_receiveCallback |
a transport using Unix stream socket
Definition at line 37 of file unix-transport.hpp.
|
explicit |
Definition at line 34 of file unix-transport.cpp.
|
overridedefault |
|
overridevirtual |
asynchronously open the connection
ioService | io_service to create socket on |
receiveCallback | callback function when a TLV block is received; must not be empty |
boost::system::system_error | connection cannot be established |
Reimplemented from ndn::Transport.
Definition at line 77 of file unix-transport.cpp.
References ndn::Transport::connect(), and NDN_LOG_DEBUG.
|
overridevirtual |
Close the connection.
Implements ndn::Transport.
Definition at line 106 of file unix-transport.cpp.
References NDN_LOG_DEBUG.
|
overridevirtual |
pause the transport
Implements ndn::Transport.
Definition at line 115 of file unix-transport.cpp.
References NDN_LOG_DEBUG.
|
overridevirtual |
resume the transport
Implements ndn::Transport.
Definition at line 124 of file unix-transport.cpp.
References NDN_LOG_DEBUG.
|
overridevirtual |
send a TLV block through the transport
Implements ndn::Transport.
Definition at line 92 of file unix-transport.cpp.
send two memory blocks through the transport
Scatter/gather API is utilized to send two non-consecutive memory blocks together (as part of the same message in datagram-oriented transports).
Implements ndn::Transport.
Definition at line 99 of file unix-transport.cpp.
|
static |
Create transport with parameters defined in URI.
Transport::Error | incorrect URI or unsupported protocol is specified |
Definition at line 71 of file unix-transport.cpp.
NDN_CXX_PUBLIC_WITH_TESTS_ELSE_PRIVATE ndn::UnixTransport::__pad0__ |
Definition at line 72 of file unix-transport.hpp.