A Distinct class for endpoint patterns (i.e. More...
#include <EndpointID.h>
Public Member Functions | |
EndpointIDPattern () | |
Default constructor. | |
EndpointIDPattern (const std::string &str) | |
Construct the endpoint id pattern from the given string. | |
EndpointIDPattern (const EndpointIDPattern &other) | |
Construct the endpoint id pattern from another. | |
EndpointIDPattern (const EndpointID &other) | |
Construct the endpoint id pattern from another that is not necessarily a pattern. | |
bool | match (const EndpointID &eid) const |
Shortcut to the matching functionality implemented by the scheme. | |
Static Public Member Functions | |
static const EndpointIDPattern & | WILDCARD_EID () |
Return the special wildcard Endpoint ID. |
A Distinct class for endpoint patterns (i.e.
those containing some form of wildcarding) as opposed to basic endpoint IDs to help keep it straight in the code.
Definition at line 290 of file EndpointID.h.
dtn::EndpointIDPattern::EndpointIDPattern | ( | ) | [inline] |
Default constructor.
Definition at line 295 of file EndpointID.h.
References dtn::EndpointID::is_pattern_, and dtn::EndpointID::uri_.
dtn::EndpointIDPattern::EndpointIDPattern | ( | const std::string & | str | ) | [inline] |
Construct the endpoint id pattern from the given string.
Definition at line 304 of file EndpointID.h.
References dtn::EndpointID::assign(), dtn::EndpointID::is_pattern_, and dtn::EndpointID::uri_.
dtn::EndpointIDPattern::EndpointIDPattern | ( | const EndpointIDPattern & | other | ) | [inline] |
Construct the endpoint id pattern from another.
Definition at line 314 of file EndpointID.h.
dtn::EndpointIDPattern::EndpointIDPattern | ( | const EndpointID & | other | ) | [inline] |
Construct the endpoint id pattern from another that is not necessarily a pattern.
Definition at line 321 of file EndpointID.h.
References dtn::EndpointID::is_pattern_, dtn::EndpointID::uri_, and dtn::EndpointID::validate().
bool dtn::EndpointIDPattern::match | ( | const EndpointID & | eid | ) | const |
Shortcut to the matching functionality implemented by the scheme.
Definition at line 197 of file EndpointID.cc.
References dtn::EndpointID::c_str(), dtn::EndpointID::glob_unknown_schemes_, dtn::EndpointID::known_scheme(), dtn::Scheme::match(), dtn::EndpointID::scheme(), dtn::EndpointID::uri(), and dtn::EndpointID::uri_.
Referenced by dtn::TableBasedRouter::find_session_upstream(), dtn::RegistrationTable::get_matching(), dtn::RouteTable::get_matching_helper(), and dtn::ProphetBundleCore::is_route().
const EndpointIDPattern & dtn::EndpointIDPattern::WILDCARD_EID | ( | ) | [inline, static] |
Return the special wildcard Endpoint ID.
This functionality is not in the bundle spec, but is used internally to this implementation.
Definition at line 368 of file EndpointID.h.
References dtn::EndpointID::assign(), dtn::EndpointID::scheme_, and dtn::GlobalEndpointIDs::wildcard_eid_.
Referenced by dtn::ForwardingLog::get_count(), dtn::DTLSRRouter::handle_lsa(), dtn::TableBasedRouter::handle_session_bundle(), dtn::TableBasedRouter::route_bundle(), and dtn::DTLSRRouter::update_current_lsa().