#include <ConnectionManager.h>
Classes | |
| class | ShutdownException |
Public Member Functions | |
| ConnectionManager () | |
| virtual | ~ConnectionManager () |
| void | addConnection (const dtn::core::Node &n) |
| void | addConvergenceLayer (ConvergenceLayer *cl) |
| void | queue (const dtn::data::EID &eid, const dtn::data::Bundle &b) |
| void | raiseEvent (const dtn::core::Event *evt) |
| void | queue (const ConvergenceLayer::Job &job) |
| const std::set< dtn::core::Node > | getNeighbors () |
| bool | isNeighbor (const dtn::core::Node &) |
Protected Member Functions | |
| void | discovered (dtn::core::Node &node) |
| void | check_discovered () |
| virtual void | componentUp () |
| virtual void | componentDown () |
Definition at line 41 of file ConnectionManager.h.
| dtn::net::ConnectionManager::ConnectionManager | ( | ) |
Definition at line 43 of file ConnectionManager.cpp.
| dtn::net::ConnectionManager::~ConnectionManager | ( | ) | [virtual] |
Definition at line 48 of file ConnectionManager.cpp.
| void dtn::net::ConnectionManager::addConnection | ( | const dtn::core::Node & | n | ) |
Definition at line 137 of file ConnectionManager.cpp.
References dtn::core::NODE_AVAILABLE, and dtn::core::NodeEvent::raise().
Referenced by dtn::core::BundleCore::addConnection().
| void dtn::net::ConnectionManager::addConvergenceLayer | ( | ConvergenceLayer * | cl | ) |
Definition at line 144 of file ConnectionManager.cpp.
Referenced by dtn::core::BundleCore::addConvergenceLayer().
| void dtn::net::ConnectionManager::check_discovered | ( | ) | [protected] |
checks for timed out nodes
Definition at line 168 of file ConnectionManager.cpp.
References dtn::core::Node::decrementTimeout(), isNeighbor(), dtn::core::NODE_UNAVAILABLE, and dtn::core::NodeEvent::raise().
Referenced by raiseEvent().
| void dtn::net::ConnectionManager::componentDown | ( | ) | [protected, virtual] |
Implements dtn::daemon::IntegratedComponent.
Definition at line 59 of file ConnectionManager.cpp.
References dtn::net::ConnectionEvent::className, and dtn::core::EventReceiver::unbindEvent().
| void dtn::net::ConnectionManager::componentUp | ( | ) | [protected, virtual] |
Implements dtn::daemon::IntegratedComponent.
Definition at line 52 of file ConnectionManager.cpp.
References dtn::core::EventReceiver::bindEvent(), and dtn::net::ConnectionEvent::className.
| void dtn::net::ConnectionManager::discovered | ( | dtn::core::Node & | node | ) | [protected] |
trigger for periodical discovery of nodes
| node |
Definition at line 150 of file ConnectionManager.cpp.
References dtn::core::Node::getURI(), isNeighbor(), dtn::core::BundleCore::local, dtn::core::NODE_AVAILABLE, and dtn::core::NodeEvent::raise().
Referenced by raiseEvent().
| const std::set< dtn::core::Node > dtn::net::ConnectionManager::getNeighbors | ( | ) |
get a set with all neighbors
Definition at line 343 of file ConnectionManager.cpp.
Referenced by dtn::core::BundleCore::getNeighbors().
| bool dtn::net::ConnectionManager::isNeighbor | ( | const dtn::core::Node & | node | ) |
Checks if a node is already known as neighbor.
| @return |
Definition at line 368 of file ConnectionManager.cpp.
Referenced by check_discovered(), discovered(), and raiseEvent().
| void dtn::net::ConnectionManager::queue | ( | const ConvergenceLayer::Job & | job | ) |
Definition at line 228 of file ConnectionManager.cpp.
References dtn::net::ConvergenceLayer::Job::_destination, IBRCOMMON_LOGGER_DEBUG, IBRCOMMON_LOGGER_ENDL, IBRCOMMON_LOGGER_LEVEL, queue(), and dtn::core::Node::toString().
| void dtn::net::ConnectionManager::queue | ( | const dtn::data::EID & | eid, | |
| const dtn::data::Bundle & | b | |||
| ) |
Definition at line 338 of file ConnectionManager.cpp.
Referenced by queue(), and dtn::core::BundleCore::transferTo().
| void dtn::net::ConnectionManager::raiseEvent | ( | const dtn::core::Event * | evt | ) | [virtual] |
method to receive new events from the EventSwitch
Implements dtn::core::EventReceiver.
Definition at line 72 of file ConnectionManager.cpp.
References check_discovered(), dtn::net::ConnectionEvent::CONNECTION_DOWN, dtn::net::ConnectionEvent::CONNECTION_UP, discovered(), dtn::core::NodeEvent::getAction(), dtn::core::TimeEvent::getAction(), dtn::core::NodeEvent::getNode(), isNeighbor(), dtn::net::ConnectionEvent::node, dtn::core::NODE_AVAILABLE, dtn::core::NODE_INFO_UPDATED, dtn::core::NODE_UNAVAILABLE, dtn::core::NodeEvent::raise(), dtn::net::ConnectionEvent::state, and dtn::core::TIME_SECOND_TICK.
1.6.3