Stores a pending Interest and associated callbacks. More...
#include <pending-interest.hpp>
Public Member Functions | |
PendingInterest (shared_ptr< const Interest > interest, const DataCallback &dataCallback, const NackCallback &nackCallback, const TimeoutCallback &timeoutCallback, Scheduler &scheduler) | |
Construct a pending Interest record for an Interest from Face::expressInterest. More... | |
PendingInterest (shared_ptr< const Interest > interest, Scheduler &scheduler) | |
Construct a pending Interest record for an Interest from NFD. More... | |
shared_ptr< const Interest > | getInterest () const |
PendingInterestOrigin | getOrigin () const |
void | recordForwarding () |
Record that the Interest has been forwarded to one destination. More... | |
optional< lp::Nack > | recordNack (const lp::Nack &nack) |
Record an incoming Nack against a forwarded Interest. More... | |
void | invokeDataCallback (const Data &data) |
Invoke the Data callback. More... | |
void | invokeNackCallback (const lp::Nack &nack) |
Invoke the Nack callback. More... | |
Public Member Functions inherited from ndn::RecordBase< PendingInterest > | |
RecordId | getId () const |
Additional Inherited Members | |
Protected Member Functions inherited from ndn::RecordBase< PendingInterest > | |
~RecordBase ()=default | |
void | deleteSelf () |
Delete this record from the container. More... | |
Stores a pending Interest and associated callbacks.
Definition at line 65 of file pending-interest.hpp.
|
inline |
Construct a pending Interest record for an Interest from Face::expressInterest.
The timeout is set based on the current time and InterestLifetime. This class will invoke the timeout callback unless the record is deleted before timeout.
Definition at line 74 of file pending-interest.hpp.
References ndn::APP.
|
inline |
Construct a pending Interest record for an Interest from NFD.
Definition at line 90 of file pending-interest.hpp.
References ndn::FORWARDER.
|
inline |
Definition at line 99 of file pending-interest.hpp.
Referenced by ndn::InterestFilterRecord::doesMatch(), ndn::Face::Impl::nackPendingInterests(), and ndn::Face::Impl::satisfyPendingInterests().
|
inline |
Definition at line 105 of file pending-interest.hpp.
Referenced by ndn::InterestFilterRecord::doesMatch(), ndn::Face::Impl::nackPendingInterests(), and ndn::Face::Impl::satisfyPendingInterests().
|
inline |
Record that the Interest has been forwarded to one destination.
A "destination" could be either a local InterestFilter or the forwarder.
Definition at line 116 of file pending-interest.hpp.
Referenced by ndn::Face::Impl::dispatchInterest().
Record an incoming Nack against a forwarded Interest.
Definition at line 127 of file pending-interest.hpp.
References ndn::lp::Nack::getReason(), ndn::lp::isLessSevere(), and nonstd::optional_lite::nullopt.
Referenced by ndn::Face::Impl::nackPendingInterests().
|
inline |
Invoke the Data callback.
Definition at line 144 of file pending-interest.hpp.
|
inline |
Invoke the Nack callback.
Definition at line 156 of file pending-interest.hpp.