#include <ConnectionManager.h>
Inherits dtn::core::EventReceiver, and dtn::daemon::IntegratedComponent.

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::BundleID &b) |
| void | raiseEvent (const dtn::core::Event *evt) |
| void | open (const dtn::core::Node &node) |
| void | queue (const ConvergenceLayer::Job &job) |
| const std::set< dtn::core::Node > | getNeighbors () |
| bool | isNeighbor (const dtn::core::Node &) |
| virtual const std::string | getName () const |
Protected Member Functions | |
| void | discovered (const 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 42 of file ConnectionManager.cpp.
| dtn::net::ConnectionManager::~ConnectionManager | ( | ) | [virtual] |
Definition at line 47 of file ConnectionManager.cpp.
| void dtn::net::ConnectionManager::addConnection | ( | const dtn::core::Node & | n | ) |
Definition at line 157 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 164 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 188 of file ConnectionManager.cpp.
References dtn::core::Node::decrementTimeout(), 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 58 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 51 of file ConnectionManager.cpp.
References dtn::core::EventReceiver::bindEvent(), and dtn::net::ConnectionEvent::className.

| void dtn::net::ConnectionManager::discovered | ( | const dtn::core::Node & | node | ) | [protected] |
trigger for periodical discovery of nodes
| node |
Definition at line 170 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::string dtn::net::ConnectionManager::getName | ( | ) | const [virtual] |
Implements dtn::daemon::Component.
Definition at line 412 of file ConnectionManager.cpp.
| const std::set< dtn::core::Node > dtn::net::ConnectionManager::getNeighbors | ( | ) |
get a set with all neighbors
Definition at line 366 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 391 of file ConnectionManager.cpp.
Referenced by discovered(), and raiseEvent().
| void dtn::net::ConnectionManager::open | ( | const dtn::core::Node & | node | ) |
Definition at line 217 of file ConnectionManager.cpp.
References dtn::net::ConvergenceLayer::getDiscoveryProtocol(), dtn::core::Node::getProtocol(), and dtn::net::ConvergenceLayer::open().
Referenced by raiseEvent().

| void dtn::net::ConnectionManager::queue | ( | const dtn::data::EID & | eid, | |
| const dtn::data::BundleID & | b | |||
| ) |
Definition at line 361 of file ConnectionManager.cpp.
Referenced by queue(), and dtn::core::BundleCore::transferTo().
| void dtn::net::ConnectionManager::queue | ( | const ConvergenceLayer::Job & | job | ) |
Definition at line 263 of file ConnectionManager.cpp.
References dtn::net::ConvergenceLayer::Job::_destination, IBRCOMMON_LOGGER_DEBUG, IBRCOMMON_LOGGER_LEVEL, queue(), and dtn::core::Node::toString().

| void dtn::net::ConnectionManager::raiseEvent | ( | const dtn::core::Event * | evt | ) |
method to receive new events from the EventSwitch
Definition at line 71 of file ConnectionManager.cpp.
References check_discovered(), dtn::net::ConnectionEvent::CONNECTION_DOWN, dtn::net::ConnectionEvent::CONNECTION_UP, discovered(), dtn::core::Node::doConnectImmediately(), dtn::core::TimeEvent::getAction(), dtn::core::NodeEvent::getAction(), dtn::core::NodeEvent::getNode(), isNeighbor(), dtn::net::ConnectionEvent::node, dtn::core::NODE_AVAILABLE, dtn::core::NODE_INFO_UPDATED, dtn::core::NODE_UNAVAILABLE, open(), dtn::core::NodeEvent::raise(), and dtn::net::ConnectionEvent::state.

1.7.1