#include <NeighborDatabase.h>

Public Member Functions | |
| NeighborEntry () | |
| NeighborEntry (const dtn::data::EID &eid) | |
| virtual | ~NeighborEntry () |
| void | update (const ibrcommon::BloomFilter &bf, const size_t lifetime=0) |
| void | reset () |
| void | add (const dtn::data::MetaBundle &) |
| bool | has (const dtn::data::BundleID &, const bool require_bloomfilter=false) const |
| void | acquireFilterRequest () throw (NoMoreTransfersAvailable) |
| void | acquireTransfer (const dtn::data::BundleID &id) throw (NoMoreTransfersAvailable, AlreadyInTransitException) |
| void | releaseTransfer (const dtn::data::BundleID &id) |
| void | expire (const size_t timestamp) |
Public Attributes | |
| const dtn::data::EID | eid |
Definition at line 63 of file NeighborDatabase.h.
| dtn::routing::NeighborDatabase::NeighborEntry::NeighborEntry | ( | ) |
Definition at line 17 of file NeighborDatabase.cpp.
| dtn::routing::NeighborDatabase::NeighborEntry::NeighborEntry | ( | const dtn::data::EID & | eid | ) |
Definition at line 21 of file NeighborDatabase.cpp.
| dtn::routing::NeighborDatabase::NeighborEntry::~NeighborEntry | ( | ) | [virtual] |
Definition at line 25 of file NeighborDatabase.cpp.
| void dtn::routing::NeighborDatabase::NeighborEntry::acquireFilterRequest | ( | ) | throw (NoMoreTransfersAvailable) |
acquire resource to send a filter request. The resources are reset once if the filter expires.
Definition at line 92 of file NeighborDatabase.cpp.
Referenced by dtn::routing::EpidemicRoutingExtension::notify(), and dtn::routing::EpidemicRoutingExtension::run().
| void dtn::routing::NeighborDatabase::NeighborEntry::acquireTransfer | ( | const dtn::data::BundleID & | id | ) | throw (NoMoreTransfersAvailable, AlreadyInTransitException) |
Acquire transfer resources. If no resources is left, an exception is thrown.
Definition at line 100 of file NeighborDatabase.cpp.
References IBRCOMMON_LOGGER_DEBUG.
Referenced by dtn::routing::BaseRouter::Extension::transferTo().
| void dtn::routing::NeighborDatabase::NeighborEntry::add | ( | const dtn::data::MetaBundle & | bundle | ) |
Definition at line 49 of file NeighborDatabase.cpp.
References dtn::routing::BundleSummary::add().
Referenced by dtn::routing::NeighborDatabase::addBundle().

| void dtn::routing::NeighborDatabase::NeighborEntry::expire | ( | const size_t | timestamp | ) |
trigger expire mechanisms for bloomfilter and bundle summary
| timestamp |
Definition at line 71 of file NeighborDatabase.cpp.
References eid, dtn::data::BundleList::expire(), dtn::data::EID::getString(), and IBRCOMMON_LOGGER_DEBUG.

| bool dtn::routing::NeighborDatabase::NeighborEntry::has | ( | const dtn::data::BundleID & | id, | |
| const bool | require_bloomfilter = false | |||
| ) | const |
Definition at line 54 of file NeighborDatabase.cpp.
References dtn::routing::BundleSummary::contains(), ibrcommon::BloomFilter::contains(), and eid.

| void dtn::routing::NeighborDatabase::NeighborEntry::releaseTransfer | ( | const dtn::data::BundleID & | id | ) |
Release a transfer resource, but never exceed the maxium resource limit.
Definition at line 116 of file NeighborDatabase.cpp.
References IBRCOMMON_LOGGER_DEBUG.
Referenced by dtn::routing::BaseRouter::raiseEvent().
| void dtn::routing::NeighborDatabase::NeighborEntry::reset | ( | ) |
Definition at line 44 of file NeighborDatabase.cpp.
Referenced by dtn::routing::NeighborDatabase::reset().
| void dtn::routing::NeighborDatabase::NeighborEntry::update | ( | const ibrcommon::BloomFilter & | bf, | |
| const size_t | lifetime = 0 | |||
| ) |
updates the bloomfilter of this entry with a new one
| bf | The bloomfilter object | |
| lifetime | The desired lifetime of this bloomfilter |
Definition at line 28 of file NeighborDatabase.cpp.
References dtn::utils::Clock::getExpireTime().

Definition at line 102 of file NeighborDatabase.h.
Referenced by expire(), has(), and dtn::routing::BaseRouter::Extension::transferTo().
1.7.1