DumpConsumer Class Reference
[pydtn]

Data consumer that simply dumps the bundle information to stdout. More...

#include <pydtn/DumpConsumer.h>

Inheritance diagram for DumpConsumer:

Inheritance graph
[legend]
Collaboration diagram for DumpConsumer:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 DumpConsumer (DTN::Node *owner)
 Default constructor.
virtual ~DumpConsumer ()
 Virtual destructor.
virtual void operator() (const DTN::Bundle &b)
 Concrete specification of the data handling.
virtual void drop (const DTN::Bundle &b, const DTN::DropCause &c)
 Concrete specification of the bundle drop handling.
virtual void custody (const DTN::Bundle &b)
 Concrete specification of the custody acceptance handling.
virtual void persistentStore (const DTN::Bundle &b)
 Recording method for adding a Bundle to the persistent store.
virtual void persistentRemove (const DTN::Bundle &b, bool cleanup=true)
 Recording method for removing a Bundle from the persistent store.
virtual void send (const DTN::Bundle &b)
 Recording method for sending a Bundle.
virtual void recv (const DTN::Bundle &b)
 Recording method for receiving a Bundle.
virtual void exhausted (const DTN::Bundle &b)
 Recording method for persistent storage exhaustion.

Static Protected Member Functions

static std::string dropCauseString (const DTN::DropCause &c)
 Convert a DTN::DropCause into a string describing the reason a bundle was dropped.


Detailed Description

Data consumer that simply dumps the bundle information to stdout.

Definition at line 42 of file DumpConsumer.h.


Member Function Documentation

void DumpConsumer::operator() ( const DTN::Bundle b  )  [virtual]

Concrete specification of the data handling.

Parameters:
b The data bundle to handle

Implements DTN::Consumer.

Definition at line 44 of file DumpConsumer.cc.

References DTN::Bundle::kACK, DTN::Bundle::kData, DTN::Consumer::m_owner, DTN::Bundle::payload(), DTN::Bundle::seqNum(), DTN::Bundle::source(), Clock::time(), DTN::Bundle::type(), and verbosity().

void DumpConsumer::drop ( const DTN::Bundle b,
const DTN::DropCause c 
) [virtual]

Concrete specification of the bundle drop handling.

Parameters:
b The data bundle being dropped
c The reason for dropping the bundle

Reimplemented from DTN::Consumer.

Definition at line 88 of file DumpConsumer.cc.

References dropCauseString(), DTN::Consumer::m_owner, DTN::Bundle::size(), Clock::time(), and verbosity().

void DumpConsumer::custody ( const DTN::Bundle b  )  [virtual]

Concrete specification of the custody acceptance handling.

Parameters:
b The data bundle being custodially accepted

Reimplemented from DTN::Consumer.

Definition at line 111 of file DumpConsumer.cc.

References DTN::Consumer::m_owner, DTN::Bundle::size(), Clock::time(), and verbosity().

void DumpConsumer::persistentStore ( const DTN::Bundle b  )  [virtual]

Recording method for adding a Bundle to the persistent store.

Parameters:
b A bundle being stored

Reimplemented from DTN::Consumer.

Definition at line 130 of file DumpConsumer.cc.

References DTN::Consumer::m_owner, Clock::time(), and verbosity().

void DumpConsumer::persistentRemove ( const DTN::Bundle b,
bool  cleanup = true 
) [virtual]

Recording method for removing a Bundle from the persistent store.

Parameters:
b A bundle being removed
cleanup Whether the persistent store's clean-up method should be invoked (can cause recursion loops)

Reimplemented from DTN::Consumer.

Definition at line 151 of file DumpConsumer.cc.

References DTN::Consumer::m_owner, Clock::time(), and verbosity().

void DumpConsumer::send ( const DTN::Bundle b  )  [virtual]

Recording method for sending a Bundle.

Parameters:
b A bundle being sent

Reimplemented from DTN::Consumer.

Definition at line 174 of file DumpConsumer.cc.

References DTN::Consumer::m_owner, DTN::Bundle::recv(), recv(), DTN::Bundle::size(), Clock::time(), and verbosity().

void DumpConsumer::recv ( const DTN::Bundle b  )  [virtual]

Recording method for receiving a Bundle.

Parameters:
b A bundle being received

Reimplemented from DTN::Consumer.

Definition at line 200 of file DumpConsumer.cc.

References DTN::Bundle::kBcast, DTN::Consumer::m_owner, DTN::Bundle::send(), DTN::Bundle::size(), Clock::time(), DTN::Bundle::type(), and verbosity().

Referenced by send().

void DumpConsumer::exhausted ( const DTN::Bundle b  )  [virtual]

Recording method for persistent storage exhaustion.

Parameters:
b A bundle that could not be stored

Reimplemented from DTN::Consumer.

Definition at line 235 of file DumpConsumer.cc.

References DTN::Consumer::m_owner, DTN::Bundle::size(), Clock::time(), and verbosity().

std::string DumpConsumer::dropCauseString ( const DTN::DropCause c  )  [static, protected]

Convert a DTN::DropCause into a string describing the reason a bundle was dropped.

Parameters:
c The cause of a bundle drop
Returns:
a descriptive string

Definition at line 255 of file DumpConsumer.cc.

References DTN::NoRouteDrop::inst, DTN::LinkFailureDrop::inst, DTN::FullQueueDrop::inst, DTN::ExpiryDrop::inst, DTN::CustodyPolicyDrop::inst, and DTN::BitErrorDrop::inst.

Referenced by drop().


The documentation for this class was generated from the following files:
Generated on Mon Mar 24 11:15:47 2008 for Pydtn Simulator by  doxygen 1.5.4