implementation detail of Face More...
#include <face-impl.hpp>
Public Types | |
using | PendingInterestTable = ContainerWithOnEmptySignal< shared_ptr< PendingInterest > > |
using | InterestFilterTable = std::list< shared_ptr< InterestFilterRecord > > |
using | RegisteredPrefixTable = ContainerWithOnEmptySignal< shared_ptr< RegisteredPrefix > > |
Public Member Functions | |
Impl (Face &face) | |
void | asyncExpressInterest (shared_ptr< const Interest > interest, const DataCallback &afterSatisfied, const NackCallback &afterNacked, const TimeoutCallback &afterTimeout) |
void | asyncRemovePendingInterest (const PendingInterestId *pendingInterestId) |
void | asyncRemoveAllPendingInterests () |
bool | satisfyPendingInterests (const Data &data) |
optional< lp::Nack > | nackPendingInterests (const lp::Nack &nack) |
void | asyncSetInterestFilter (shared_ptr< InterestFilterRecord > interestFilterRecord) |
void | asyncUnsetInterestFilter (const InterestFilterId *interestFilterId) |
void | processIncomingInterest (shared_ptr< const Interest > interest) |
void | dispatchInterest (PendingInterest &entry, const Interest &interest) |
void | asyncPutData (const Data &data) |
void | asyncPutNack (const lp::Nack &nack) |
const RegisteredPrefixId * | registerPrefix (const Name &prefix, shared_ptr< InterestFilterRecord > filter, const RegisterPrefixSuccessCallback &onSuccess, const RegisterPrefixFailureCallback &onFailure, uint64_t flags, const nfd::CommandOptions &options) |
void | afterPrefixRegistered (shared_ptr< RegisteredPrefix > registeredPrefix, const RegisterPrefixSuccessCallback &onSuccess) |
void | asyncUnregisterPrefix (const RegisteredPrefixId *registeredPrefixId, const UnregisterPrefixSuccessCallback &onSuccess, const UnregisterPrefixFailureCallback &onFailure) |
void | finalizeUnregisterPrefix (RegisteredPrefixTable::iterator item, const UnregisterPrefixSuccessCallback &onSuccess) |
void | ensureConnected (bool wantResume) |
void | onEmptyPitOrNoRegisteredPrefixes () |
Friends | |
class | Face |
implementation detail of Face
Definition at line 60 of file face-impl.hpp.
using ndn::Face::Impl::PendingInterestTable = ContainerWithOnEmptySignal<shared_ptr<PendingInterest> > |
Definition at line 63 of file face-impl.hpp.
using ndn::Face::Impl::InterestFilterTable = std::list<shared_ptr<InterestFilterRecord> > |
Definition at line 64 of file face-impl.hpp.
using ndn::Face::Impl::RegisteredPrefixTable = ContainerWithOnEmptySignal<shared_ptr<RegisteredPrefix> > |
Definition at line 65 of file face-impl.hpp.
|
inlineexplicit |
Definition at line 68 of file face-impl.hpp.
References ndn::ContainerWithOnEmptySignal< T >::onEmpty, onEmptyPitOrNoRegisteredPrefixes(), and ndn::util::scheduler::Scheduler::scheduleEvent().
|
inline |
Definition at line 86 of file face-impl.hpp.
References dispatchInterest(), ensureConnected(), ndn::ContainerWithOnEmptySignal< T >::erase(), ndn::Interest::getName(), ndn::ContainerWithOnEmptySignal< T >::insert(), NDN_LOG_DEBUG, and ndn::Interest::wireEncode().
|
inline |
Definition at line 114 of file face-impl.hpp.
References ndn::ContainerWithOnEmptySignal< T >::remove_if().
|
inline |
Definition at line 120 of file face-impl.hpp.
References ndn::ContainerWithOnEmptySignal< T >::clear().
|
inline |
Definition at line 128 of file face-impl.hpp.
References ndn::APP, ndn::ContainerWithOnEmptySignal< T >::begin(), ndn::ContainerWithOnEmptySignal< T >::end(), ndn::ContainerWithOnEmptySignal< T >::erase(), and NDN_LOG_DEBUG.
Referenced by asyncPutData().
Definition at line 156 of file face-impl.hpp.
References ndn::APP, ndn::ContainerWithOnEmptySignal< T >::begin(), ndn::ContainerWithOnEmptySignal< T >::end(), ndn::ContainerWithOnEmptySignal< T >::erase(), ndn::lp::Nack::getInterest(), ndn::Interest::matchesInterest(), and NDN_LOG_DEBUG.
Referenced by asyncPutNack().
|
inline |
Definition at line 190 of file face-impl.hpp.
References NDN_LOG_INFO.
|
inline |
Definition at line 197 of file face-impl.hpp.
References NDN_LOG_INFO.
|
inline |
Definition at line 209 of file face-impl.hpp.
References dispatchInterest(), ndn::ContainerWithOnEmptySignal< T >::erase(), and ndn::ContainerWithOnEmptySignal< T >::insert().
|
inline |
Definition at line 224 of file face-impl.hpp.
References NDN_LOG_DEBUG, and ndn::PendingInterest::recordForwarding().
Referenced by asyncExpressInterest(), and processIncomingInterest().
|
inline |
Definition at line 236 of file face-impl.hpp.
References ensureConnected(), ndn::Data::getName(), NDN_LOG_DEBUG, satisfyPendingInterests(), and ndn::Data::wireEncode().
|
inline |
Definition at line 255 of file face-impl.hpp.
References ndn::lp::Packet::add(), ensureConnected(), ndn::lp::Nack::getHeader(), ndn::lp::Nack::getInterest(), ndn::Interest::getName(), ndn::lp::NackHeader::getReason(), nackPendingInterests(), NDN_LOG_DEBUG, and ndn::Interest::wireEncode().
|
inline |
Definition at line 276 of file face-impl.hpp.
References afterPrefixRegistered(), NDN_LOG_INFO, ndn::nfd::ControlParameters::setFlags(), and ndn::nfd::ControlParameters::setName().
|
inline |
Definition at line 302 of file face-impl.hpp.
References ndn::ContainerWithOnEmptySignal< T >::insert(), and NDN_LOG_INFO.
Referenced by registerPrefix().
|
inline |
Definition at line 319 of file face-impl.hpp.
References ndn::ContainerWithOnEmptySignal< T >::begin(), ndn::ContainerWithOnEmptySignal< T >::end(), finalizeUnregisterPrefix(), ndn::RegisteredPrefix::getCommandOptions(), ndn::RegisteredPrefix::getFilter(), ndn::RegisteredPrefix::getPrefix(), NDN_LOG_INFO, and ndn::nfd::ControlParameters::setName().
|
inline |
Definition at line 358 of file face-impl.hpp.
References ndn::ContainerWithOnEmptySignal< T >::erase(), and NDN_LOG_INFO.
Referenced by asyncUnregisterPrefix().
|
inline |
Definition at line 371 of file face-impl.hpp.
Referenced by asyncExpressInterest(), asyncPutData(), and asyncPutNack().
|
inline |
Definition at line 382 of file face-impl.hpp.
References ndn::ContainerWithOnEmptySignal< T >::empty().
Referenced by Impl().
|
friend |
Definition at line 422 of file face-impl.hpp.