NS-3 based Named Data Networking (NDN) simulator
ndnSIM 2.0: NDN, CCN, CCNx, content centric networks
API Documentation
ndn::util::DummyClientFace Class Reference

a client-side face for unit testing More...

#include <dummy-client-face.hpp>

Inheritance diagram for ndn::util::DummyClientFace:
Collaboration diagram for ndn::util::DummyClientFace:

Classes

struct  Options
 options for DummyClientFace More...
 
class  Transport
 

Public Member Functions

 DummyClientFace (const Options &options=DummyClientFace::DEFAULT_OPTIONS)
 Create a dummy face with internal IO service. More...
 
 DummyClientFace (boost::asio::io_service &ioService, const Options &options=DummyClientFace::DEFAULT_OPTIONS)
 Create a dummy face with the provided IO service. More...
 
template<typename Packet >
void receive (const Packet &packet)
 cause the Face to receive a packet More...
 
template<>
void receive (const lp::Nack &nack)
 
- Public Member Functions inherited from ndn::Face
 Face ()
 Create a new Face using the default transport (UnixTransport) More...
 
 Face (boost::asio::io_service &ioService)
 Create a new Face using the default transport (UnixTransport) More...
 
 Face (shared_ptr< Transport > transport)
 Create a new Face using the given Transport. More...
 
 Face (shared_ptr< Transport > transport, boost::asio::io_service &ioService)
 Create a new Face using the given Transport and IO service object. More...
 
 Face (shared_ptr< Transport > transport, boost::asio::io_service &ioService, KeyChain &keyChain)
 Create a new Face using the given Transport and IO service object. More...
 
 ~Face ()
 
const PendingInterestId * expressInterest (const Interest &interest, const DataCallback &afterSatisfied, const NackCallback &afterNacked, const TimeoutCallback &afterTimeout)
 Express Interest. More...
 
const PendingInterestId * expressInterest (const Interest &interest, const OnData &onData, const OnTimeout &onTimeout=nullptr)
 Express Interest. More...
 
const PendingInterestId * expressInterest (const Name &name, const Interest &tmpl, const OnData &onData, const OnTimeout &onTimeout=nullptr)
 Express Interest using name and Interest template. More...
 
void removePendingInterest (const PendingInterestId *pendingInterestId)
 Cancel previously expressed Interest. More...
 
void removeAllPendingInterests ()
 Cancel all previously expressed Interests. More...
 
size_t getNPendingInterests () const
 Get number of pending Interests. More...
 
const RegisteredPrefixId * setInterestFilter (const InterestFilter &interestFilter, const OnInterest &onInterest, const RegisterPrefixFailureCallback &onFailure, const security::SigningInfo &signingInfo=security::SigningInfo(), uint64_t flags=nfd::ROUTE_FLAG_CHILD_INHERIT)
 Set InterestFilter to dispatch incoming matching interest to onInterest callback and register the filtered prefix with the connected NDN forwarder. More...
 
const RegisteredPrefixId * setInterestFilter (const InterestFilter &interestFilter, const OnInterest &onInterest, const RegisterPrefixSuccessCallback &onSuccess, const RegisterPrefixFailureCallback &onFailure, const security::SigningInfo &signingInfo=security::SigningInfo(), uint64_t flags=nfd::ROUTE_FLAG_CHILD_INHERIT)
 Set InterestFilter to dispatch incoming matching interest to onInterest callback and register the filtered prefix with the connected NDN forwarder. More...
 
const InterestFilterId * setInterestFilter (const InterestFilter &interestFilter, const OnInterest &onInterest)
 Set InterestFilter to dispatch incoming matching interest to onInterest callback. More...
 
 DEPRECATED (const RegisteredPrefixId *setInterestFilter(const InterestFilter &interestFilter, const OnInterest &onInterest, const RegisterPrefixSuccessCallback &onSuccess, const RegisterPrefixFailureCallback &onFailure, const IdentityCertificate &certificate, uint64_t flags=nfd::ROUTE_FLAG_CHILD_INHERIT))
 Set InterestFilter to dispatch incoming matching interest to onInterest callback and register the filtered prefix with the connected NDN forwarder. More...
 
 DEPRECATED (const RegisteredPrefixId *setInterestFilter(const InterestFilter &interestFilter, const OnInterest &onInterest, const RegisterPrefixFailureCallback &onFailure, const IdentityCertificate &certificate, uint64_t flags=nfd::ROUTE_FLAG_CHILD_INHERIT))
 Set InterestFilter to dispatch incoming matching interest to onInterest callback and register the filtered prefix with the connected NDN forwarder. More...
 
 DEPRECATED (const RegisteredPrefixId *setInterestFilter(const InterestFilter &interestFilter, const OnInterest &onInterest, const RegisterPrefixSuccessCallback &onSuccess, const RegisterPrefixFailureCallback &onFailure, const Name &identity, uint64_t flags=nfd::ROUTE_FLAG_CHILD_INHERIT))
 Set InterestFilter to dispatch incoming matching interest to onInterest callback and register the filtered prefix with the connected NDN forwarder. More...
 
 DEPRECATED (const RegisteredPrefixId *setInterestFilter(const InterestFilter &interestFilter, const OnInterest &onInterest, const RegisterPrefixFailureCallback &onFailure, const Name &identity, uint64_t flags=nfd::ROUTE_FLAG_CHILD_INHERIT))
 Set InterestFilter to dispatch incoming matching interest to onInterest callback and register the filtered prefix with the connected NDN forwarder. More...
 
const RegisteredPrefixId * registerPrefix (const Name &prefix, const RegisterPrefixSuccessCallback &onSuccess, const RegisterPrefixFailureCallback &onFailure, const security::SigningInfo &signingInfo=security::SigningInfo(), uint64_t flags=nfd::ROUTE_FLAG_CHILD_INHERIT)
 Register prefix with the connected NDN forwarder. More...
 
 DEPRECATED (const RegisteredPrefixId *registerPrefix(const Name &prefix, const RegisterPrefixSuccessCallback &onSuccess, const RegisterPrefixFailureCallback &onFailure, const IdentityCertificate &certificate, uint64_t flags=nfd::ROUTE_FLAG_CHILD_INHERIT))
 Register prefix with the connected NDN forwarder. More...
 
 DEPRECATED (const RegisteredPrefixId *registerPrefix(const Name &prefix, const RegisterPrefixSuccessCallback &onSuccess, const RegisterPrefixFailureCallback &onFailure, const Name &identity, uint64_t flags=nfd::ROUTE_FLAG_CHILD_INHERIT))
 Register prefix with the connected NDN forwarder and call onInterest when a matching interest is received. More...
 
void unsetInterestFilter (const RegisteredPrefixId *registeredPrefixId)
 Remove the registered prefix entry with the registeredPrefixId. More...
 
void unsetInterestFilter (const InterestFilterId *interestFilterId)
 Remove previously set InterestFilter from library's FIB. More...
 
void unregisterPrefix (const RegisteredPrefixId *registeredPrefixId, const UnregisterPrefixSuccessCallback &onSuccess, const UnregisterPrefixFailureCallback &onFailure)
 Unregister prefix from RIB. More...
 
void put (const Data &data)
 Publish data packet. More...
 
void put (const lp::Nack &nack)
 sends a Network NACK More...
 
void processEvents (const time::milliseconds &timeout=time::milliseconds::zero(), bool keepThread=false)
 Process any data to receive or call timeout callbacks. More...
 
void shutdown ()
 Shutdown face operations. More...
 
boost::asio::io_service & getIoService ()
 Return nullptr (cannot use IoService in simulations), preserved for API compatibility. More...
 

Public Attributes

std::vector< InterestsentInterests
 Interests sent out of this DummyClientFace. More...
 
std::vector< DatasentData
 Data sent out of this DummyClientFace. More...
 
std::vector< Data > & sentDatas
 deprecated alias to sentData More...
 
std::vector< lp::NacksentNacks
 NACKs sent out of this DummyClientFace. More...
 
Signal< DummyClientFace, InterestonSendInterest
 emits whenever an Interest is sent More...
 
Signal< DummyClientFace, DataonSendData
 emits whenever a Data packet is sent More...
 
Signal< DummyClientFace, lp::NackonSendNack
 emits whenever a NACK is sent More...
 
- Public Attributes inherited from ndn::Face
NDN_CXX_PUBLIC_WITH_TESTS_ELSE_PROTECTED __pad0__: shared_ptr<Transport> getTransport()
 

Static Public Attributes

static const Options DEFAULT_OPTIONS { true, false }
 default options More...
 

Detailed Description

a client-side face for unit testing

Definition at line 36 of file dummy-client-face.hpp.

Constructor & Destructor Documentation

§ DummyClientFace() [1/2]

ndn::util::DummyClientFace::DummyClientFace ( const Options options = DummyClientFace::DEFAULT_OPTIONS)

Create a dummy face with internal IO service.

Definition at line 87 of file dummy-client-face.cpp.

Referenced by ndn::util::makeDummyClientFace().

§ DummyClientFace() [2/2]

Member Function Documentation

§ receive() [1/2]

template<typename Packet >
template void ndn::util::DummyClientFace::receive< Data > ( const Packet &  packet)

cause the Face to receive a packet

Template Parameters
Packeteither Interest or Data

Definition at line 198 of file dummy-client-face.cpp.

Referenced by DummyClientFace(), and ndn::util::DummyClientFace::receive< lp::Nack >().

§ receive() [2/2]

template<>
void ndn::util::DummyClientFace::receive ( const lp::Nack nack)

Member Data Documentation

§ DEFAULT_OPTIONS

const DummyClientFace::Options ndn::util::DummyClientFace::DEFAULT_OPTIONS { true, false }
static

default options

enablePacketLogging=true enableRegistrationReply=false

Definition at line 89 of file dummy-client-face.hpp.

§ sentInterests

std::vector<Interest> ndn::util::DummyClientFace::sentInterests

Interests sent out of this DummyClientFace.

Sent Interests are appended to this container if options.enablePacketLogger is true. User of this class is responsible for cleaning up the container, if necessary. After .expressInterest, .processEvents must be called before the Interest would show up here.

Definition at line 97 of file dummy-client-face.hpp.

Referenced by DummyClientFace().

§ sentData

std::vector<Data> ndn::util::DummyClientFace::sentData

Data sent out of this DummyClientFace.

Sent Data are appended to this container if options.enablePacketLogger is true. User of this class is responsible for cleaning up the container, if necessary. After .put, .processEvents must be called before the Data would show up here.

Definition at line 105 of file dummy-client-face.hpp.

Referenced by DummyClientFace().

§ sentDatas

std::vector<Data>& ndn::util::DummyClientFace::sentDatas

deprecated alias to sentData

Definition at line 108 of file dummy-client-face.hpp.

§ sentNacks

std::vector<lp::Nack> ndn::util::DummyClientFace::sentNacks

NACKs sent out of this DummyClientFace.

Sent NACKs are appended to this container if options.enablePacketLogger is true. User of this class is responsible for cleaning up the container, if necessary. After .put, .processEvents must be called before the NACK would show up here.

Definition at line 117 of file dummy-client-face.hpp.

Referenced by DummyClientFace().

§ onSendInterest

Signal<DummyClientFace, Interest> ndn::util::DummyClientFace::onSendInterest

emits whenever an Interest is sent

After .expressInterest, .processEvents must be called before this signal would be emitted.

Definition at line 123 of file dummy-client-face.hpp.

Referenced by DummyClientFace().

§ onSendData

Signal<DummyClientFace, Data> ndn::util::DummyClientFace::onSendData

emits whenever a Data packet is sent

After .put, .processEvents must be called before this signal would be emitted.

Definition at line 129 of file dummy-client-face.hpp.

Referenced by DummyClientFace().

§ onSendNack

Signal<DummyClientFace, lp::Nack> ndn::util::DummyClientFace::onSendNack

emits whenever a NACK is sent

After .put, .processEvents must be called before this signal would be emitted.

Definition at line 135 of file dummy-client-face.hpp.

Referenced by DummyClientFace().


The documentation for this class was generated from the following files: