nfd::face::UdpChannel Class Reference

Class implementing UDP-based channel to create faces. More...

#include <daemon/face/udp-channel.hpp>

+ Inheritance diagram for nfd::face::UdpChannel:
+ Collaboration diagram for nfd::face::UdpChannel:

Public Member Functions

 UdpChannel (const udp::Endpoint &localEndpoint, time::nanoseconds idleTimeout)
 Create a UDP channel on the given localEndpoint. More...
 
void connect (const udp::Endpoint &remoteEndpoint, ndn::nfd::FacePersistency persistency, bool wantLpReliability, const FaceCreatedCallback &onFaceCreated, const FaceCreationFailedCallback &onConnectFailed)
 Create a unicast UDP face toward remoteEndpoint. More...
 
const FaceUri & getUri () const
 
bool isListening () const override
 Returns whether the channel is listening. More...
 
void listen (const FaceCreatedCallback &onFaceCreated, const FaceCreationFailedCallback &onFaceCreationFailed)
 Start listening. More...
 
size_t size () const override
 Returns the number of faces in the channel. More...
 

Protected Member Functions

void setUri (const FaceUri &uri)
 

Detailed Description

Class implementing UDP-based channel to create faces.

Definition at line 40 of file udp-channel.hpp.

Constructor & Destructor Documentation

nfd::face::UdpChannel::UdpChannel ( const udp::Endpoint localEndpoint,
time::nanoseconds  idleTimeout 
)

Create a UDP channel on the given localEndpoint.

To enable creation of faces upon incoming connections, one needs to explicitly call UdpChannel::listen method. The created socket is bound to localEndpoint.

Definition at line 38 of file udp-channel.cpp.

Member Function Documentation

void nfd::face::UdpChannel::connect ( const udp::Endpoint remoteEndpoint,
ndn::nfd::FacePersistency  persistency,
bool  wantLpReliability,
const FaceCreatedCallback onFaceCreated,
const FaceCreationFailedCallback onConnectFailed 
)

Create a unicast UDP face toward remoteEndpoint.

Parameters
remoteEndpointThe remote UDP endpoint
persistencyPersistency of the newly created face
wantLpReliabilitywhether LpReliability should be enabled
onFaceCreatedCallback to notify successful creation of the face
onConnectFailedCallback to notify errors

Definition at line 49 of file udp-channel.cpp.

const FaceUri& nfd::face::Channel::getUri ( ) const
inlineinherited

Definition at line 59 of file channel.hpp.

bool nfd::face::UdpChannel::isListening ( ) const
inlineoverridevirtual

Returns whether the channel is listening.

Implements nfd::face::Channel.

Definition at line 54 of file udp-channel.hpp.

void nfd::face::UdpChannel::listen ( const FaceCreatedCallback onFaceCreated,
const FaceCreationFailedCallback onFaceCreationFailed 
)

Start listening.

Enable listening on the local endpoint, waiting for incoming datagrams, and creating a face when a datagram is received from a new remote host.

Faces created in this way will have on-demand persistency.

Parameters
onFaceCreatedCallback to notify successful creation of a face
onFaceCreationFailedCallback to notify errors

Definition at line 72 of file udp-channel.cpp.

void nfd::face::Channel::setUri ( const FaceUri &  uri)
protectedinherited

Definition at line 34 of file channel.cpp.

size_t nfd::face::UdpChannel::size ( ) const
inlineoverridevirtual

Returns the number of faces in the channel.

Implements nfd::face::Channel.

Definition at line 60 of file udp-channel.hpp.