Declares the set of Interests a producer can serve. More...
#include <ndn-cxx/interest-filter.hpp>
Classes | |
class | Error |
Public Member Functions | |
InterestFilter (const char *prefixUri) | |
Construct an InterestFilter to match Interests by prefix. More... | |
InterestFilter (const Name &prefix) | |
Construct an InterestFilter to match Interests by prefix. More... | |
InterestFilter (const Name &prefix, const std::string ®exFilter) | |
Construct an InterestFilter to match Interests by prefix and regular expression. More... | |
InterestFilter (const std::string &prefixUri) | |
Construct an InterestFilter to match Interests by prefix. More... | |
InterestFilter & | allowLoopback (bool wantLoopback) noexcept |
Set whether Interest loopback is allowed. More... | |
bool | allowsLoopback () const noexcept |
Get whether Interest loopback is allowed. More... | |
bool | doesMatch (const Name &name) const |
Check if specified Interest name matches the filter. More... | |
const Name & | getPrefix () const |
const RegexPatternListMatcher & | getRegexFilter () const |
bool | hasRegexFilter () const |
operator const Name & () const | |
Implicit conversion to Name. More... | |
Declares the set of Interests a producer can serve.
A filter starts with a name prefix, followed by an optional NDN regular expression.
Definition at line 36 of file interest-filter.hpp.
ndn::InterestFilter::InterestFilter | ( | const Name & | prefix | ) |
Construct an InterestFilter to match Interests by prefix.
This filter matches Interests whose name start with the given prefix.
Definition at line 27 of file interest-filter.cpp.
ndn::InterestFilter::InterestFilter | ( | const char * | prefixUri | ) |
Construct an InterestFilter to match Interests by prefix.
This filter matches Interests whose name start with the given prefix.
prefixUri | name prefix, interpreted as ndn URI |
Definition at line 32 of file interest-filter.cpp.
ndn::InterestFilter::InterestFilter | ( | const std::string & | prefixUri | ) |
Construct an InterestFilter to match Interests by prefix.
This filter matches Interests whose name start with the given prefix.
prefixUri | name prefix, interpreted as ndn URI |
Definition at line 37 of file interest-filter.cpp.
ndn::InterestFilter::InterestFilter | ( | const Name & | prefix, |
const std::string & | regexFilter | ||
) |
Construct an InterestFilter to match Interests by prefix and regular expression.
This filter matches Interests whose name start with the given prefix and the remaining components match the given regular expression. For example, the following InterestFilter:
InterestFilter("/hello", "<world><>+")
matches Interests whose name has prefix /hello
followed by component world
and has at least one more component after it, such as:
/hello/world/%21 /hello/world/x/y/z
Note that regular expression will need to match all components (e.g., there are implicit heading ^
and trailing $
symbols in the regular expression).
Definition at line 42 of file interest-filter.cpp.
|
inlinenoexcept |
Set whether Interest loopback is allowed.
wantLoopback | If true, this InterestFilter may receive Interests that are expressed locally on the same Face; if false, this InterestFilter can only receive Interests received from the forwarder. The default is true. |
Definition at line 141 of file interest-filter.hpp.
|
inlinenoexcept |
Get whether Interest loopback is allowed.
Definition at line 129 of file interest-filter.hpp.
bool ndn::InterestFilter::doesMatch | ( | const Name & | name | ) | const |
Check if specified Interest name matches the filter.
Definition at line 58 of file interest-filter.cpp.
|
inline |
Definition at line 108 of file interest-filter.hpp.
|
inline |
Definition at line 120 of file interest-filter.hpp.
|
inline |
Definition at line 114 of file interest-filter.hpp.
ndn::InterestFilter::operator const Name & | ( | ) | const |
Implicit conversion to Name.
Name
rather than InterestFilter
, but this does not work if InterestFilter has regular expression. Definition at line 48 of file interest-filter.cpp.