dtn::core::BundleStorage Class Reference

#include <BundleStorage.h>

Inheritance diagram for dtn::core::BundleStorage:
dtn::core::SimpleBundleStorage dtn::core::SQLiteBundleStorage

List of all members.

Classes

class  NoBundleFoundException
class  StorageSizeExeededException

Public Member Functions

virtual ~BundleStorage ()=0
virtual void store (const dtn::data::Bundle &bundle)=0
virtual dtn::data::Bundle get (const ibrcommon::BloomFilter &filter)=0
virtual dtn::data::Bundle get (const dtn::data::BundleID &id)=0
virtual dtn::data::Bundle get (const dtn::data::EID &eid)=0
virtual void remove (const dtn::data::BundleID &id)=0
void remove (const dtn::data::Bundle &b)
virtual void clear ()
virtual bool empty ()
virtual unsigned int count ()
virtual void releaseCustody (dtn::data::BundleID &bundle)=0
void acceptCustody (dtn::data::Bundle &bundle)
void rejectCustody (const dtn::data::Bundle &bundle)

Protected Member Functions

 BundleStorage ()

Detailed Description

Definition at line 22 of file BundleStorage.h.


Constructor & Destructor Documentation

dtn::core::BundleStorage::~BundleStorage (  )  [pure virtual]

destructor

Definition at line 22 of file BundleStorage.cpp.

dtn::core::BundleStorage::BundleStorage (  )  [protected]

constructor

Definition at line 18 of file BundleStorage.cpp.


Member Function Documentation

void dtn::core::BundleStorage::acceptCustody ( dtn::data::Bundle bundle  ) 
virtual void dtn::core::BundleStorage::clear (  )  [inline, virtual]

Clears all bundles and fragments in the storage.

Reimplemented in dtn::core::SimpleBundleStorage, and dtn::core::SQLiteBundleStorage.

Definition at line 91 of file BundleStorage.h.

virtual unsigned int dtn::core::BundleStorage::count (  )  [inline, virtual]
Returns:
the count of bundles in the storage

Reimplemented in dtn::core::SimpleBundleStorage, and dtn::core::SQLiteBundleStorage.

Definition at line 101 of file BundleStorage.h.

virtual bool dtn::core::BundleStorage::empty (  )  [inline, virtual]
Returns:
True, if no bundles in the storage.

Reimplemented in dtn::core::SimpleBundleStorage, and dtn::core::SQLiteBundleStorage.

Definition at line 96 of file BundleStorage.h.

virtual dtn::data::Bundle dtn::core::BundleStorage::get ( const dtn::data::EID eid  )  [pure virtual]

This method returns a bundle which is addressed to a EID.

Parameters:
eid The receiver for the bundle.
Returns:
A bundle object.

Implemented in dtn::core::SimpleBundleStorage, and dtn::core::SQLiteBundleStorage.

virtual dtn::data::Bundle dtn::core::BundleStorage::get ( const dtn::data::BundleID id  )  [pure virtual]

This method returns a specific bundle which is identified by its id.

Parameters:
id The ID of the bundle to return.
Returns:
A bundle object.

Implemented in dtn::core::SimpleBundleStorage, and dtn::core::SQLiteBundleStorage.

virtual dtn::data::Bundle dtn::core::BundleStorage::get ( const ibrcommon::BloomFilter filter  )  [pure virtual]
void dtn::core::BundleStorage::rejectCustody ( const dtn::data::Bundle bundle  ) 
virtual void dtn::core::BundleStorage::releaseCustody ( dtn::data::BundleID bundle  )  [pure virtual]

This method is called if another node accepts custody for a bundle of us.

Parameters:
bundle 

Implemented in dtn::core::SimpleBundleStorage, and dtn::core::SQLiteBundleStorage.

Referenced by dtn::core::BundleCore::raiseEvent().

void dtn::core::BundleStorage::remove ( const dtn::data::Bundle b  ) 

This method deletes a specific bundle in the storage. No reports will be generated here.

Parameters:
b The bundle to remove.

Definition at line 26 of file BundleStorage.cpp.

virtual void dtn::core::BundleStorage::remove ( const dtn::data::BundleID id  )  [pure virtual]

This method deletes a specific bundle in the storage. No reports will be generated here.

Parameters:
id The ID of the bundle to remove.

Implemented in dtn::core::SimpleBundleStorage, and dtn::core::SQLiteBundleStorage.

Referenced by dtn::routing::StaticRoutingExtension::notify(), dtn::routing::EpidemicRoutingExtension::notify(), dtn::core::BundleCore::raiseEvent(), dtn::routing::EpidemicRoutingExtension::run(), and dtn::daemon::ClientHandler::run().

virtual void dtn::core::BundleStorage::store ( const dtn::data::Bundle bundle  )  [pure virtual]

Stores a bundle in the storage.

Parameters:
bundle The bundle to store.

Implemented in dtn::core::SimpleBundleStorage, and dtn::core::SQLiteBundleStorage.

Referenced by dtn::routing::BaseRouter::raiseEvent().


The documentation for this class was generated from the following files:
Generated on Mon Aug 23 08:12:57 2010 for IBR-DTNSuite by  doxygen 1.6.3