add hooks for visiting netdb

This commit is contained in:
Jeff Becker 2016-08-29 14:16:29 -04:00
parent 28fdd992c9
commit fec49e5609
No known key found for this signature in database
GPG key ID: AB950234D6EA286B
4 changed files with 35 additions and 3 deletions

View file

@ -329,6 +329,21 @@ namespace data
for ( auto & entry : m_LeaseSets)
v(entry.first, entry.second);
}
void NetDb::VisitStoredRouterInfos(RouterInfoVisitor v)
{
m_Storage.Iterate([v] (const std::string & filename) {
const i2p::data::RouterInfo ri(filename);
v(ri);
});
}
void NetDb::VisitRouterInfos(RouterInfoVisitor v)
{
std::unique_lock<std::mutex> lock(m_RouterInfosMutex);
for ( const auto & item : m_RouterInfos )
v(*item.second);
}
void NetDb::Load ()
{