IBR-DTNSuite
0.8
|
#include <Component.h>
Public Member Functions | |
IndependentComponent () | |
virtual | ~IndependentComponent () |
virtual void | initialize () |
virtual void | startup () |
virtual void | terminate () |
Protected Member Functions | |
void | run () |
virtual void | __cancellation ()=0 |
virtual void | componentUp ()=0 |
virtual void | componentRun ()=0 |
virtual void | componentDown ()=0 |
Independent components are working in an own thread.
Definition at line 56 of file Component.h.
Definition at line 20 of file Component.cpp.
dtn::daemon::IndependentComponent::~IndependentComponent | ( | ) | [virtual] |
Definition at line 24 of file Component.cpp.
References ibrcommon::JoinableThread::join().
virtual void dtn::daemon::IndependentComponent::__cancellation | ( | ) | [protected, pure virtual] |
Implements ibrcommon::Thread.
Implemented in dtn::net::TCPConvergenceLayer, dtn::net::DatagramConvergenceLayer, dtn::dht::DHTNameService, dtn::storage::SQLiteBundleStorage, dtn::net::HTTPConvergenceLayer, dtn::net::LOWPANConvergenceLayer, dtn::api::ApiServer, dtn::net::UDPConvergenceLayer, dtn::net::IPNDAgent, dtn::net::FileConvergenceLayer, dtn::net::FileMonitor, and dtn::core::FragmentManager.
virtual void dtn::daemon::IndependentComponent::componentDown | ( | ) | [protected, pure virtual] |
Implemented in dtn::net::TCPConvergenceLayer, dtn::dht::DHTNameService, dtn::net::DatagramConvergenceLayer, dtn::storage::SQLiteBundleStorage, dtn::net::HTTPConvergenceLayer, dtn::api::ApiServer, dtn::net::LOWPANConvergenceLayer, dtn::net::UDPConvergenceLayer, dtn::net::IPNDAgent, dtn::net::FileConvergenceLayer, dtn::core::FragmentManager, and dtn::net::FileMonitor.
Referenced by terminate().
virtual void dtn::daemon::IndependentComponent::componentRun | ( | ) | [protected, pure virtual] |
Implemented in dtn::net::TCPConvergenceLayer, dtn::dht::DHTNameService, dtn::net::DatagramConvergenceLayer, dtn::storage::SQLiteBundleStorage, dtn::net::HTTPConvergenceLayer, dtn::api::ApiServer, dtn::net::LOWPANConvergenceLayer, dtn::net::UDPConvergenceLayer, dtn::net::IPNDAgent, dtn::net::FileConvergenceLayer, dtn::core::FragmentManager, and dtn::net::FileMonitor.
Referenced by run().
virtual void dtn::daemon::IndependentComponent::componentUp | ( | ) | [protected, pure virtual] |
Implemented in dtn::net::TCPConvergenceLayer, dtn::dht::DHTNameService, dtn::net::DatagramConvergenceLayer, dtn::storage::SQLiteBundleStorage, dtn::net::HTTPConvergenceLayer, dtn::api::ApiServer, dtn::net::LOWPANConvergenceLayer, dtn::net::UDPConvergenceLayer, dtn::net::IPNDAgent, dtn::net::FileConvergenceLayer, dtn::core::FragmentManager, and dtn::net::FileMonitor.
Referenced by initialize().
void dtn::daemon::IndependentComponent::initialize | ( | ) | [virtual] |
Set up the component. At this stage no other components should be used.
Implements dtn::daemon::Component.
Definition at line 29 of file Component.cpp.
References componentUp().
void dtn::daemon::IndependentComponent::run | ( | ) | [protected, virtual] |
Abstract interface for thread context run method.
Implements ibrcommon::Thread.
Definition at line 49 of file Component.cpp.
References componentRun().
void dtn::daemon::IndependentComponent::startup | ( | ) | [virtual] |
Start up the component. At this stage all other components are ready.
Implements dtn::daemon::Component.
Definition at line 34 of file Component.cpp.
References IBRCOMMON_LOGGER, IBRCOMMON_LOGGER_ENDL, ibrcommon::JoinableThread::start(), and ibrcommon::Exception::what().
void dtn::daemon::IndependentComponent::terminate | ( | ) | [virtual] |
Terminate the component and do some cleanup stuff. All other components still exists, but may not serve signals.
Implements dtn::daemon::Component.
Definition at line 43 of file Component.cpp.
References componentDown(), and ibrcommon::JoinableThread::stop().