|
| Dht (const int &s, const int &s6, Config config) |
|
const InfoHash & | getNodeId () const |
|
NodeStatus | getStatus (sa_family_t af) const |
|
NodeStatus | getStatus () const |
|
void | shutdown (ShutdownCallback cb) |
|
bool | isRunning (sa_family_t af=0) const |
|
virtual void | registerType (const ValueType &type) |
|
const ValueType & | getType (ValueType::Id type_id) const |
|
void | insertNode (const InfoHash &id, const SockAddr &) |
|
void | insertNode (const InfoHash &id, const sockaddr *sa, socklen_t salen) |
|
void | insertNode (const NodeExport &n) |
|
void | pingNode (const sockaddr *, socklen_t, DoneCallbackSimple &&cb={}) |
|
time_point | periodic (const uint8_t *buf, size_t buflen, const SockAddr &) |
|
time_point | periodic (const uint8_t *buf, size_t buflen, const sockaddr *from, socklen_t fromlen) |
|
virtual void | get (const InfoHash &key, GetCallback cb, DoneCallback donecb={}, Value::Filter &&f={}, Where &&w={}) |
|
virtual void | get (const InfoHash &key, GetCallback cb, DoneCallbackSimple donecb={}, Value::Filter &&f={}, Where &&w={}) |
|
virtual void | get (const InfoHash &key, GetCallbackSimple cb, DoneCallback donecb={}, Value::Filter &&f={}, Where &&w={}) |
|
virtual void | get (const InfoHash &key, GetCallbackSimple cb, DoneCallbackSimple donecb, Value::Filter &&f={}, Where &&w={}) |
|
virtual void | query (const InfoHash &key, QueryCallback cb, DoneCallback done_cb={}, Query &&q={}) |
|
virtual void | query (const InfoHash &key, QueryCallback cb, DoneCallbackSimple done_cb={}, Query &&q={}) |
|
std::vector< Sp< Value > > | getLocal (const InfoHash &key, Value::Filter f=Value::AllFilter()) const |
|
Sp< Value > | getLocalById (const InfoHash &key, Value::Id vid) const |
|
void | put (const InfoHash &key, Sp< Value >, DoneCallback cb=nullptr, time_point created=time_point::max(), bool permanent=false) |
|
void | put (const InfoHash &key, const Sp< Value > &v, DoneCallbackSimple cb, time_point created=time_point::max(), bool permanent=false) |
|
void | put (const InfoHash &key, Value &&v, DoneCallback cb=nullptr, time_point created=time_point::max(), bool permanent=false) |
|
void | put (const InfoHash &key, Value &&v, DoneCallbackSimple cb, time_point created=time_point::max(), bool permanent=false) |
|
std::vector< Sp< Value > > | getPut (const InfoHash &) |
|
Sp< Value > | getPut (const InfoHash &, const Value::Id &) |
|
bool | cancelPut (const InfoHash &, const Value::Id &) |
|
virtual size_t | listen (const InfoHash &, ValueCallback, Value::Filter={}, Where={}) |
|
virtual size_t | listen (const InfoHash &key, GetCallback cb, Value::Filter f={}, Where w={}) |
|
virtual size_t | listen (const InfoHash &key, GetCallbackSimple cb, Value::Filter f={}, Where w={}) |
|
virtual bool | cancelListen (const InfoHash &, size_t token) |
|
void | connectivityChanged (sa_family_t) |
|
void | connectivityChanged () |
|
std::vector< NodeExport > | exportNodes () |
|
std::vector< ValuesExport > | exportValues () const |
|
void | importValues (const std::vector< ValuesExport > &) |
|
NodeStats | getNodesStats (sa_family_t af) const |
|
std::string | getStorageLog () const |
|
std::string | getStorageLog (const InfoHash &) const |
|
std::string | getRoutingTablesLog (sa_family_t) const |
|
std::string | getSearchesLog (sa_family_t) const |
|
std::string | getSearchLog (const InfoHash &, sa_family_t af=AF_UNSPEC) const |
|
void | dumpTables () const |
|
std::vector< unsigned > | getNodeMessageStats (bool in=false) |
|
void | setStorageLimit (size_t limit=DEFAULT_STORAGE_LIMIT) |
|
std::pair< size_t, size_t > | getStoreSize () const |
|
std::vector< SockAddr > | getPublicAddress (sa_family_t family=0) |
|
void | pushNotificationReceived (const std::map< std::string, std::string > &) |
|
void | resubscribe (unsigned) |
|
virtual NodeStatus | getStatus (sa_family_t af) const =0 |
|
virtual NodeStatus | getStatus () const =0 |
|
virtual const InfoHash & | getNodeId () const =0 |
|
virtual void | shutdown (ShutdownCallback cb)=0 |
|
virtual bool | isRunning (sa_family_t af=0) const =0 |
|
virtual void | registerType (const ValueType &type)=0 |
|
virtual const ValueType & | getType (ValueType::Id type_id) const =0 |
|
virtual void | insertNode (const InfoHash &id, const SockAddr &)=0 |
|
virtual void | insertNode (const InfoHash &id, const sockaddr *sa, socklen_t salen)=0 |
|
virtual void | insertNode (const NodeExport &n)=0 |
|
virtual void | pingNode (const sockaddr *, socklen_t, DoneCallbackSimple &&cb={})=0 |
|
virtual time_point | periodic (const uint8_t *buf, size_t buflen, const SockAddr &)=0 |
|
virtual time_point | periodic (const uint8_t *buf, size_t buflen, const sockaddr *from, socklen_t fromlen)=0 |
|
virtual void | get (const InfoHash &key, GetCallback cb, DoneCallback donecb={}, Value::Filter &&f={}, Where &&w={})=0 |
|
virtual void | get (const InfoHash &key, GetCallback cb, DoneCallbackSimple donecb={}, Value::Filter &&f={}, Where &&w={})=0 |
|
virtual void | get (const InfoHash &key, GetCallbackSimple cb, DoneCallback donecb={}, Value::Filter &&f={}, Where &&w={})=0 |
|
virtual void | get (const InfoHash &key, GetCallbackSimple cb, DoneCallbackSimple donecb, Value::Filter &&f={}, Where &&w={})=0 |
|
virtual void | query (const InfoHash &key, QueryCallback cb, DoneCallback done_cb={}, Query &&q={})=0 |
|
virtual void | query (const InfoHash &key, QueryCallback cb, DoneCallbackSimple done_cb={}, Query &&q={})=0 |
|
virtual std::vector< Sp< Value > > | getLocal (const InfoHash &key, Value::Filter f=Value::AllFilter()) const =0 |
|
virtual Sp< Value > | getLocalById (const InfoHash &key, Value::Id vid) const =0 |
|
virtual void | put (const InfoHash &key, Sp< Value >, DoneCallback cb=nullptr, time_point created=time_point::max(), bool permanent=false)=0 |
|
virtual void | put (const InfoHash &key, const Sp< Value > &v, DoneCallbackSimple cb, time_point created=time_point::max(), bool permanent=false)=0 |
|
virtual void | put (const InfoHash &key, Value &&v, DoneCallback cb=nullptr, time_point created=time_point::max(), bool permanent=false)=0 |
|
virtual void | put (const InfoHash &key, Value &&v, DoneCallbackSimple cb, time_point created=time_point::max(), bool permanent=false)=0 |
|
virtual std::vector< Sp< Value > > | getPut (const InfoHash &)=0 |
|
virtual Sp< Value > | getPut (const InfoHash &, const Value::Id &)=0 |
|
virtual bool | cancelPut (const InfoHash &, const Value::Id &)=0 |
|
virtual size_t | listen (const InfoHash &, GetCallback, Value::Filter={}, Where w={})=0 |
|
virtual size_t | listen (const InfoHash &key, GetCallbackSimple cb, Value::Filter f={}, Where w={})=0 |
|
virtual size_t | listen (const InfoHash &, ValueCallback, Value::Filter={}, Where w={})=0 |
|
virtual bool | cancelListen (const InfoHash &, size_t token)=0 |
|
virtual void | connectivityChanged (sa_family_t)=0 |
|
virtual void | connectivityChanged ()=0 |
|
virtual std::vector< NodeExport > | exportNodes ()=0 |
|
virtual std::vector< ValuesExport > | exportValues () const =0 |
|
virtual void | importValues (const std::vector< ValuesExport > &)=0 |
|
virtual NodeStats | getNodesStats (sa_family_t af) const =0 |
|
virtual std::string | getStorageLog () const =0 |
|
virtual std::string | getStorageLog (const InfoHash &) const =0 |
|
virtual std::string | getRoutingTablesLog (sa_family_t) const =0 |
|
virtual std::string | getSearchesLog (sa_family_t) const =0 |
|
virtual std::string | getSearchLog (const InfoHash &, sa_family_t af=AF_UNSPEC) const =0 |
|
virtual void | dumpTables () const =0 |
|
virtual std::vector< unsigned > | getNodeMessageStats (bool in=false)=0 |
|
virtual void | setStorageLimit (size_t limit=DEFAULT_STORAGE_LIMIT)=0 |
|
virtual std::pair< size_t, size_t > | getStoreSize () const =0 |
|
virtual std::vector< SockAddr > | getPublicAddress (sa_family_t family=0)=0 |
|
virtual void | setLoggers (LogMethod error=NOLOG, LogMethod warn=NOLOG, LogMethod debug=NOLOG) |
|
virtual void | setLogFilter (const InfoHash &f) |
|
virtual void | setPushNotificationToken (const std::string &) |
|
virtual void | pushNotificationReceived (const std::map< std::string, std::string > &data)=0 |
|
Main Dht class. Provides a Distributed Hash Table node.
Must be given open UDP sockets and ::periodic must be called regularly.
Definition at line 62 of file dht.h.