nfd::measurements::MeasurementsAccessor Class Reference

allows Strategy to access portion of Measurements table under its namespace More...

#include <daemon/table/measurements-accessor.hpp>

+ Inheritance diagram for nfd::measurements::MeasurementsAccessor:
+ Collaboration diagram for nfd::measurements::MeasurementsAccessor:

Public Member Functions

 MeasurementsAccessor (Measurements &measurements, const StrategyChoice &strategyChoice, const fw::Strategy &strategy)
 
 ~MeasurementsAccessor ()
 
void extendLifetime (Entry &entry, const time::nanoseconds &lifetime)
 extend lifetime of an entry More...
 
EntryfindExactMatch (const Name &name) const
 perform an exact match More...
 
EntryfindLongestPrefixMatch (const Name &name, const EntryPredicate &pred=AnyEntry()) const
 perform a longest prefix match for name More...
 
EntryfindLongestPrefixMatch (const pit::Entry &pitEntry, const EntryPredicate &pred=AnyEntry()) const
 perform a longest prefix match for pitEntry.getName() More...
 
Entryget (const Name &name)
 find or insert a Measurements entry for name More...
 
Entryget (const fib::Entry &fibEntry)
 find or insert a Measurements entry for fibEntry->getPrefix() More...
 
Entryget (const pit::Entry &pitEntry)
 find or insert a Measurements entry for pitEntry->getName() More...
 
EntrygetParent (const Entry &child)
 find or insert a Measurements entry for child's parent More...
 

Detailed Description

allows Strategy to access portion of Measurements table under its namespace

All public methods have the same semantics as the same method on Measurements, but would return nullptr if the entry falls out of the strategy's authority.

Definition at line 45 of file measurements-accessor.hpp.

Constructor & Destructor Documentation

nfd::measurements::MeasurementsAccessor::MeasurementsAccessor ( Measurements measurements,
const StrategyChoice &  strategyChoice,
const fw::Strategy strategy 
)

Definition at line 33 of file measurements-accessor.cpp.

nfd::measurements::MeasurementsAccessor::~MeasurementsAccessor ( )

Definition at line 42 of file measurements-accessor.cpp.

Member Function Documentation

void nfd::measurements::MeasurementsAccessor::extendLifetime ( Entry entry,
const time::nanoseconds &  lifetime 
)
inline

extend lifetime of an entry

The entry will be kept until at least now()+lifetime.

Definition at line 166 of file measurements-accessor.hpp.

Entry * nfd::measurements::MeasurementsAccessor::findExactMatch ( const Name &  name) const
inline

perform an exact match

Definition at line 160 of file measurements-accessor.hpp.

Entry * nfd::measurements::MeasurementsAccessor::findLongestPrefixMatch ( const Name &  name,
const EntryPredicate pred = AnyEntry() 
) const
inline

perform a longest prefix match for name

Definition at line 146 of file measurements-accessor.hpp.

Entry * nfd::measurements::MeasurementsAccessor::findLongestPrefixMatch ( const pit::Entry pitEntry,
const EntryPredicate pred = AnyEntry() 
) const
inline

perform a longest prefix match for pitEntry.getName()

Definition at line 153 of file measurements-accessor.hpp.

Entry * nfd::measurements::MeasurementsAccessor::get ( const Name &  name)
inline

find or insert a Measurements entry for name

Definition at line 122 of file measurements-accessor.hpp.

Entry * nfd::measurements::MeasurementsAccessor::get ( const fib::Entry fibEntry)
inline

find or insert a Measurements entry for fibEntry->getPrefix()

Definition at line 128 of file measurements-accessor.hpp.

Entry * nfd::measurements::MeasurementsAccessor::get ( const pit::Entry pitEntry)
inline

find or insert a Measurements entry for pitEntry->getName()

Definition at line 134 of file measurements-accessor.hpp.

Entry * nfd::measurements::MeasurementsAccessor::getParent ( const Entry child)
inline

find or insert a Measurements entry for child's parent

Definition at line 140 of file measurements-accessor.hpp.