dtn::ProphetRouter Class Reference

#include <ProphetRouter.h>

Inheritance diagram for dtn::ProphetRouter:

dtn::BundleRouter dtn::BundleEventHandler

List of all members.

Public Types

typedef prophet::ProphetParams Params

Public Member Functions

 ProphetRouter ()
 Constructor.
virtual ~ProphetRouter ()
 Destructor.
void initialize ()
 Post-constructor initialization routine.
void get_routing_state (oasys::StringBuffer *)
 Write out routing state to StringBuffer.
bool accept_bundle (Bundle *, int *)
 Virtual from BundleRouter.
void handle_event (BundleEvent *)
 Virtual from BundleRouter.
void handle_bundle_received (BundleReceivedEvent *)
 Virtual from BundleRouter.
void handle_bundle_delivered (BundleDeliveredEvent *)
 Virtual from BundleRouter.
void handle_bundle_expired (BundleExpiredEvent *)
 Virtual from BundleRouter.
void handle_bundle_transmitted (BundleTransmittedEvent *)
 Virtual from BundleRouter.
void handle_contact_up (ContactUpEvent *)
 Virtual from BundleRouter.
void handle_contact_down (ContactDownEvent *)
 Virtual from BundleRouter.
void handle_link_available (LinkAvailableEvent *)
 Virtual from BundleRouter.
void shutdown ()
 Virtual from BundleRouter.
void set_queue_policy ()
 Callback methods for handling runtime configuration changes.
void set_hello_interval ()
 Callback methods for handling runtime configuration changes.
void set_max_route ()
 Callback methods for handling runtime configuration changes.

Static Public Member Functions

static bool is_init ()
 Query the router as to whether initialization is complete.

Static Public Attributes

static prophet::ProphetParams params_
 Prophet's configuration and default values.

Protected Attributes

ProphetBundleCorecore_
 facade interface into BundleDaemon, etc
prophet::Controller * oracle_
 list of active Prophet peering sessions
oasys::SpinLock * lock_
 control concurrent access to core_ and oracle_

Static Protected Attributes

static bool is_init_ = false
 flag to indicate whether initialization has run


Detailed Description

Definition at line 30 of file ProphetRouter.h.


Member Typedef Documentation

Definition at line 33 of file ProphetRouter.h.


Constructor & Destructor Documentation

dtn::ProphetRouter::ProphetRouter (  ) 

Constructor.

Definition at line 40 of file ProphetRouter.cc.

dtn::ProphetRouter::~ProphetRouter (  )  [virtual]

Destructor.

Definition at line 47 of file ProphetRouter.cc.

References core_, lock_, and oracle_.


Member Function Documentation

bool dtn::ProphetRouter::accept_bundle ( Bundle bundle,
int *  errp 
) [virtual]

void dtn::ProphetRouter::get_routing_state ( oasys::StringBuffer *  buf  )  [virtual]

Write out routing state to StringBuffer.

Implements dtn::BundleRouter.

Definition at line 93 of file ProphetRouter.cc.

References dtn::ProphetBundleCore::bundles(), core_, lock_, and oracle_.

void dtn::ProphetRouter::handle_bundle_delivered ( BundleDeliveredEvent e  )  [virtual]

void dtn::ProphetRouter::handle_bundle_expired ( BundleExpiredEvent e  )  [virtual]

void dtn::ProphetRouter::handle_bundle_received ( BundleReceivedEvent e  )  [virtual]

void dtn::ProphetRouter::handle_bundle_transmitted ( BundleTransmittedEvent e  )  [virtual]

void dtn::ProphetRouter::handle_contact_down ( ContactDownEvent e  )  [virtual]

void dtn::ProphetRouter::handle_contact_up ( ContactUpEvent e  )  [virtual]

void dtn::ProphetRouter::handle_event ( BundleEvent e  )  [virtual]

Virtual from BundleRouter.

Implements dtn::BundleRouter.

Definition at line 87 of file ProphetRouter.cc.

References dtn::BundleEventHandler::dispatch_event().

void dtn::ProphetRouter::handle_link_available ( LinkAvailableEvent e  )  [virtual]

void dtn::ProphetRouter::initialize (  )  [virtual]

static bool dtn::ProphetRouter::is_init (  )  [inline, static]

Query the router as to whether initialization is complete.

Definition at line 53 of file ProphetRouter.h.

References is_init_.

Referenced by dtn::ProphetCommand::exec().

void dtn::ProphetRouter::set_hello_interval (  ) 

Callback methods for handling runtime configuration changes.

Definition at line 324 of file ProphetRouter.cc.

References lock_, and oracle_.

Referenced by dtn::ProphetCommand::exec().

void dtn::ProphetRouter::set_max_route (  ) 

Callback methods for handling runtime configuration changes.

Definition at line 334 of file ProphetRouter.cc.

References lock_, and oracle_.

Referenced by dtn::ProphetCommand::exec().

void dtn::ProphetRouter::set_queue_policy (  ) 

Callback methods for handling runtime configuration changes.

Definition at line 314 of file ProphetRouter.cc.

References lock_, and oracle_.

Referenced by dtn::ProphetCommand::exec().

void dtn::ProphetRouter::shutdown (  )  [virtual]

Virtual from BundleRouter.

Reimplemented from dtn::BundleRouter.

Definition at line 78 of file ProphetRouter.cc.

References core_, lock_, oracle_, and dtn::ProphetBundleCore::shutdown().


Member Data Documentation

bool dtn::ProphetRouter::is_init_ = false [static, protected]

flag to indicate whether initialization has run

Definition at line 89 of file ProphetRouter.h.

Referenced by initialize(), and is_init().

oasys::SpinLock* dtn::ProphetRouter::lock_ [protected]

prophet::Controller* dtn::ProphetRouter::oracle_ [protected]

Prophet's configuration and default values.

Definition at line 82 of file ProphetRouter.h.

Referenced by dtn::ProphetCommand::exec(), initialize(), and dtn::ProphetCommand::ProphetCommand().


The documentation for this class was generated from the following files:

Generated on Fri Jan 30 09:27:05 2009 for DTN Reference Implementation by  doxygen 1.5.8