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, bool wantCongestionMarking)
 Create a UDP channel on the given localEndpoint. More...
 
void connect (const udp::Endpoint &remoteEndpoint, const FaceParams &params, 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,
bool  wantCongestionMarking 
)

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,
const FaceParams params,
const FaceCreatedCallback onFaceCreated,
const FaceCreationFailedCallback onConnectFailed 
)

Create a unicast UDP face toward remoteEndpoint.

Definition at line 51 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 55 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 73 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 61 of file udp-channel.hpp.