#include <EndpointID.h>
Inheritance diagram for dtn::EndpointID:

Definition at line 53 of file EndpointID.h.
Public Member Functions | |
| EndpointID () | |
| Default constructor. | |
| EndpointID (const oasys::Builder &) | |
| Constructor for deserialization. | |
| EndpointID (const std::string &str) | |
| Construct the endpoint id from the given string. | |
| EndpointID (const EndpointID &other) | |
| Construct the endpoint id from another. | |
| virtual | ~EndpointID () |
| Destructor. | |
| bool | assign (const EndpointID &other) |
| Assign this endpoint ID as a copy of the other. | |
| bool | assign (const std::string &str) |
| Set the string and parse it. | |
| bool | assign (const std::string &scheme, const std::string &ssp) |
| Set the string from component pieces and parse it. | |
| bool | equals (const EndpointID &other) const |
| Simple equality test function. | |
| bool | operator== (const EndpointID &other) const |
| Operator overload for equality syntactic sugar. | |
| bool | operator!= (const EndpointID &other) const |
| Operator overload for inequality syntactic sugar. | |
| bool | assign (const dtn_endpoint_id_t *eid) |
| Set the string from the API type dtn_endpoint_id_t. | |
| bool | append_service_tag (const char *tag) |
| Append the specified service tag (in a scheme-specific manner) to the ssp. | |
| void | copyto (dtn_endpoint_id_t *eid) const |
| Copy the endpoint id contents out to the API type dtn_endpoint_id_t. | |
| bool | known_scheme () const |
| Return an indication of whether or not the scheme is known. | |
| virtual void | serialize (oasys::SerializeAction *a) |
| Virtual from SerializableObject. | |
| const std::string & | str () const |
| Accessors and wrappers around the various fields. | |
| const std::string & | scheme_str () const |
| Accessors and wrappers around the various fields. | |
| const std::string & | ssp () const |
| Accessors and wrappers around the various fields. | |
| Scheme * | scheme () const |
| Accessors and wrappers around the various fields. | |
| bool | valid () const |
| Accessors and wrappers around the various fields. | |
| bool | is_pattern () const |
| Accessors and wrappers around the various fields. | |
| const char * | c_str () const |
| Accessors and wrappers around the various fields. | |
| const char * | data () const |
| Accessors and wrappers around the various fields. | |
| size_t | length () const |
| Accessors and wrappers around the various fields. | |
Static Public Member Functions | |
| static const EndpointID | NULL_EID () |
| Return the special endpoint id used for the null endpoint, namely "dtn:none". | |
| static const EndpointID | WILDCARD_EID () |
| Return the special wildcard Endpoint ID. | |
Protected Member Functions | |
| bool | parse () |
| Extract and look up the scheme and ssp. | |
Protected Attributes | |
| std::string | str_ |
| std::string | scheme_str_ |
| std::string | ssp_ |
| Scheme * | scheme_ |
| bool | valid_ |
| bool | is_pattern_ |
| dtn::EndpointID::EndpointID | ( | ) | [inline] |
Default constructor.
Definition at line 58 of file EndpointID.h.
Referenced by NULL_EID(), and WILDCARD_EID().
| dtn::EndpointID::EndpointID | ( | const oasys::Builder & | ) | [inline] |
| dtn::EndpointID::EndpointID | ( | const std::string & | str | ) | [inline] |
Construct the endpoint id from the given string.
Definition at line 69 of file EndpointID.h.
References parse().
| dtn::EndpointID::EndpointID | ( | const EndpointID & | other | ) | [inline] |
Construct the endpoint id from another.
Definition at line 78 of file EndpointID.h.
References assign().
| virtual dtn::EndpointID::~EndpointID | ( | ) | [inline, virtual] |
| bool dtn::EndpointID::assign | ( | const EndpointID & | other | ) | [inline] |
Assign this endpoint ID as a copy of the other.
Definition at line 93 of file EndpointID.h.
References is_pattern_, scheme_, scheme_str_, ssp_, str_, and valid_.
Referenced by dtn::BundleDaemon::accept_custody(), dtn::BundleDaemon::BundleDaemon(), dtn::AnnounceBundle::create_announce_bundle(), dtn::CustodySignal::create_custody_signal(), dtn::BundleStatusReport::create_status_report(), EndpointID(), dtn::EndpointIDPattern::EndpointIDPattern(), dtnsim::NodeCommand::exec(), dtn::BundleCommand::exec(), dtn::APIClient::handle_send(), dtn::AnnounceBundle::parse_announce_bundle(), dtn::CustodySignal::parse_custody_signal(), dtn::BundleStatusReport::parse_status_report(), dtn::BundleDaemon::release_custody(), dtn::LinkStateRouter::send_announcement(), dtnsim::TrAgent::send_bundle(), dtn::BundleDaemon::set_local_eid(), dtn::Link::set_remote_eid(), and dtn::TcaEndpointID::TcaEndpointID().
| bool dtn::EndpointID::assign | ( | const std::string & | str | ) | [inline] |
Set the string and parse it.
Definition at line 108 of file EndpointID.h.
| bool dtn::EndpointID::assign | ( | const std::string & | scheme, | |
| const std::string & | ssp | |||
| ) | [inline] |
Set the string from component pieces and parse it.
Definition at line 118 of file EndpointID.h.
| bool dtn::EndpointID::equals | ( | const EndpointID & | other | ) | const [inline] |
Simple equality test function.
Definition at line 127 of file EndpointID.h.
References str_.
Referenced by dtn::BundleDaemon::accept_custody(), dtn::CustodySignal::create_custody_signal(), dtn::BundleStatusReport::create_status_report(), dtn::RouteTable::del_entries(), dtn::RouteTable::del_entry(), dtn::BundleDaemon::find_duplicate(), dtn::BundleDaemon::generate_custody_signal(), dtn::RegistrationTable::get(), dtn::BundleDaemon::handle_bundle_delivered(), dtn::TableBasedRouter::handle_link_created(), and dtn::ProphetRouter::handle_link_created().
| bool dtn::EndpointID::operator== | ( | const EndpointID & | other | ) | const [inline] |
Operator overload for equality syntactic sugar.
Definition at line 135 of file EndpointID.h.
References str_.
| bool dtn::EndpointID::operator!= | ( | const EndpointID & | other | ) | const [inline] |
Operator overload for inequality syntactic sugar.
Definition at line 143 of file EndpointID.h.
References str_.
| bool dtn::EndpointID::assign | ( | const dtn_endpoint_id_t * | eid | ) |
Set the string from the API type dtn_endpoint_id_t.
Definition at line 137 of file EndpointID.cc.
References parse(), str_, and dtn_endpoint_id_t::uri.
| bool dtn::EndpointID::append_service_tag | ( | const char * | tag | ) |
Append the specified service tag (in a scheme-specific manner) to the ssp.
Definition at line 116 of file EndpointID.cc.
References dtn::Scheme::append_service_tag(), scheme_, scheme_str_, ssp_, and str_.
Referenced by dtn::APIClient::handle_local_eid().
| void dtn::EndpointID::copyto | ( | dtn_endpoint_id_t * | eid | ) | const |
Copy the endpoint id contents out to the API type dtn_endpoint_id_t.
Definition at line 148 of file EndpointID.cc.
References ASSERT, DTN_MAX_ENDPOINT_ID, str_, and dtn_endpoint_id_t::uri.
Referenced by dtn::APIClient::handle_local_eid(), and dtn::APIClient::handle_recv().
| bool dtn::EndpointID::known_scheme | ( | ) | const [inline] |
Return an indication of whether or not the scheme is known.
Definition at line 173 of file EndpointID.h.
References scheme_.
Referenced by dtn::TCAScheme::match(), dtn::EndpointIDPattern::match(), and dtn::DTNScheme::match().
| static const EndpointID dtn::EndpointID::NULL_EID | ( | ) | [inline, static] |
Return the special endpoint id used for the null endpoint, namely "dtn:none".
Definition at line 182 of file EndpointID.h.
References EndpointID().
Referenced by dtn::BundleDaemon::accept_custody(), dtn::AnnounceBundle::create_announce_bundle(), dtn::CustodySignal::create_custody_signal(), dtn::BundleStatusReport::create_status_report(), dtn::AdminRegistration::deliver_bundle(), dtn::BundleCommand::exec(), dtn::ContactManager::find_link_to(), dtn::BundleDaemon::generate_custody_signal(), dtn::BundleDaemon::handle_bundle_delivered(), dtn::TableBasedRouter::handle_link_created(), dtn::ProphetRouter::handle_link_created(), dtn::APIClient::handle_send(), dtn::BundleDaemon::release_custody(), and dtn::LinkStateRouter::send_announcement().
| static const EndpointID dtn::EndpointID::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 189 of file EndpointID.h.
References EndpointID().
| void dtn::EndpointID::serialize | ( | oasys::SerializeAction * | a | ) | [virtual] |
Virtual from SerializableObject.
Implements oasys::SerializableObject.
Definition at line 159 of file EndpointID.cc.
References oasys::SerializeAction::action_code(), ASSERT, parse(), oasys::SerializeAction::process(), str_, oasys::Serialize::UNMARSHAL, and valid_.
| const std::string& dtn::EndpointID::str | ( | ) | const [inline] |
Accessors and wrappers around the various fields.
Definition at line 199 of file EndpointID.h.
References str_.
Referenced by dtn::TcaRouter::get_forwarding_rule(), dtn::TcaRouter::handle_ask(), dtn::TableBasedRouter::handle_link_created(), dtn::TcaRouter::handle_register(), dtn::TcaRouter::handle_tca_unbound_bundle(), dtn::log_bundle(), dtn::TCAScheme::match(), dtn::StringScheme::match(), dtn::DTNScheme::match(), dtn::TcaRouter::on_adv_transmitted(), dtn::TcaRouter::on_ask_transmitted(), dtn::TcaRouter::on_coa_transmitted(), and dtn::TcaRouter::push_wrapped_bundle().
| const std::string& dtn::EndpointID::scheme_str | ( | ) | const [inline] |
Accessors and wrappers around the various fields.
Definition at line 200 of file EndpointID.h.
References scheme_str_.
Referenced by dtn::BundleProtocol::add_to_dictionary(), dtn::TcaRouter::create_link(), dtn::BundleProtocol::get_dictionary_offsets(), dtn::TcaRouter::get_forwarding_rule(), dtn::TcaRouter::handle_bundle_received(), and dtn::TcaRouter::handle_bundle_transmitted().
| const std::string& dtn::EndpointID::ssp | ( | ) | const [inline] |
Accessors and wrappers around the various fields.
Definition at line 201 of file EndpointID.h.
References ssp_.
Referenced by dtn::BundleProtocol::add_to_dictionary(), dtn::TcaRouter::create_link(), dtn::BundleProtocol::get_dictionary_offsets(), dtn::TcaRouter::get_forwarding_rule(), dtn::TcaRouter::handle_bundle_received(), dtn::TCAScheme::match(), and dtn::DTNScheme::match().
| Scheme* dtn::EndpointID::scheme | ( | ) | const [inline] |
Accessors and wrappers around the various fields.
Definition at line 202 of file EndpointID.h.
References scheme_.
Referenced by dtn::TCAScheme::match(), dtn::EndpointIDPattern::match(), and dtn::DTNScheme::match().
| bool dtn::EndpointID::valid | ( | ) | const [inline] |
Accessors and wrappers around the various fields.
Definition at line 203 of file EndpointID.h.
References valid_.
Referenced by dtn::RouteCommand::exec(), dtn::RegistrationCommand::exec(), dtnsim::NodeCommand::exec(), dtn::FloodBundleRouter::FloodBundleRouter(), and dtn::Bundle::validate().
| bool dtn::EndpointID::is_pattern | ( | ) | const [inline] |
Accessors and wrappers around the various fields.
Definition at line 204 of file EndpointID.h.
References is_pattern_.
| const char* dtn::EndpointID::c_str | ( | ) | const [inline] |
Accessors and wrappers around the various fields.
Definition at line 205 of file EndpointID.h.
References str_.
Referenced by dtn::RegistrationTable::add(), dtn::CustodySignal::create_custody_signal(), dtn::BundleStatusReport::create_status_report(), dtn::RouteTable::del_entries(), dtn::RouteTable::del_entry(), dtnsim::SimRegistration::deliver_bundle(), dtn::APIRegistration::deliver_bundle(), dtn::AdminRegistration::deliver_bundle(), dtn::BundleDaemon::deliver_to_registration(), dtn::RouteEntry::dump(), dtn::Link::dump(), dtnsim::NodeCommand::exec(), dtn::BundleCommand::exec(), dtn::ContactManager::find_link_to(), dtn::RouteEntry::format(), dtn::Link::format(), dtn::Bundle::format(), dtn::Bundle::format_verbose(), dtn::TcaRouter::fwd_to_all(), dtn::TcaRouter::fwd_to_matching_r(), dtn::FragmentManager::get_hash_key(), dtn::RouteTable::get_matching(), dtn::RegistrationTable::get_matching(), dtn::CLConnection::handle_announce_bundle(), dtn::BundleDaemon::handle_bundle_delivered(), dtn::LinkStateRouter::handle_bundle_received(), dtn::BundleDaemon::handle_bundle_received(), dtn::BundleDaemon::handle_custody_signal(), dtn::BundleDaemon::handle_registration_added(), dtn::BundleDaemon::handle_registration_removed(), dtn::BundleDaemon::handle_route_del(), dtn::TcaRouter::handle_tca_unbound_bundle(), dtn::log_bundle(), dtn::LoggingRegistration::LoggingRegistration(), dtn::TCAScheme::match(), dtn::DTNScheme::match(), dtn::ContactManager::new_opportunistic_link(), dtn::TcaRouter::on_coa_transmitted(), dtn::TcaRouter::post_bundle(), dtn::BluetoothConvergenceLayer::Connection::recv_bundle(), dtnsim::TrAgent::send_bundle(), dtn::TcaRouter::TcaRouter(), dtn::TclRegistration::TclRegistration(), dtn::RegistrationTable::update(), and dtn::Bundle::validate().
| const char* dtn::EndpointID::data | ( | ) | const [inline] |
Accessors and wrappers around the various fields.
Definition at line 206 of file EndpointID.h.
References str_.
| size_t dtn::EndpointID::length | ( | ) | const [inline] |
Accessors and wrappers around the various fields.
Definition at line 207 of file EndpointID.h.
References str_.
Referenced by dtn::CustodySignal::create_custody_signal(), dtn::BundleStatusReport::create_status_report(), and dtn::RouteEntry::dump().
| bool dtn::EndpointID::parse | ( | ) | [protected] |
Extract and look up the scheme and ssp.
Reimplemented in dtn::TcaEndpointID.
Definition at line 54 of file EndpointID.cc.
References is_pattern_, scheme_, scheme_str_, ssp_, str_, valid_, and dtn::Scheme::validate().
Referenced by assign(), EndpointID(), and serialize().
std::string dtn::EndpointID::str_ [protected] |
Definition at line 218 of file EndpointID.h.
Referenced by append_service_tag(), assign(), c_str(), copyto(), data(), equals(), length(), operator!=(), operator==(), parse(), serialize(), and str().
std::string dtn::EndpointID::scheme_str_ [protected] |
Definition at line 219 of file EndpointID.h.
Referenced by append_service_tag(), assign(), parse(), and scheme_str().
std::string dtn::EndpointID::ssp_ [protected] |
Definition at line 220 of file EndpointID.h.
Referenced by append_service_tag(), assign(), parse(), and ssp().
Scheme* dtn::EndpointID::scheme_ [protected] |
Definition at line 221 of file EndpointID.h.
Referenced by append_service_tag(), assign(), known_scheme(), parse(), and scheme().
bool dtn::EndpointID::valid_ [protected] |
Definition at line 222 of file EndpointID.h.
Referenced by assign(), parse(), serialize(), and valid().
bool dtn::EndpointID::is_pattern_ [protected] |
Definition at line 223 of file EndpointID.h.
Referenced by assign(), dtn::EndpointIDPattern::EndpointIDPattern(), is_pattern(), and parse().
1.5.1