org.klomp.snark.dht
Class DHTNodes

java.lang.Object
  extended by org.klomp.snark.dht.DHTNodes

 class DHTNodes
extends Object

All the nodes we know about, stored as a mapping from node ID to a Destination and Port. And a real Kademlia routing table, which stores node IDs only.

Since:
0.9.2
Author:
zzz

Constructor Summary
DHTNodes(I2PAppContext ctx, NID me)
           
 
Method Summary
 void clear()
           
 List<NodeInfo> findClosest(SHA1Hash h, int numWant)
          DHT
 NodeInfo get(NID nid)
           
 List<NID> getExploreKeys()
          DHT - get random keys to explore
 NodeInfo putIfAbsent(NodeInfo nInfo)
           
 NodeInfo remove(NID nid)
           
 int size()
           
 void start()
           
 void stop()
           
 Collection<NodeInfo> values()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DHTNodes

public DHTNodes(I2PAppContext ctx,
                NID me)
Method Detail

start

public void start()

stop

public void stop()

size

public int size()

clear

public void clear()

get

public NodeInfo get(NID nid)

putIfAbsent

public NodeInfo putIfAbsent(NodeInfo nInfo)
Returns:
the old value if present, else null

remove

public NodeInfo remove(NID nid)

values

public Collection<NodeInfo> values()

findClosest

public List<NodeInfo> findClosest(SHA1Hash h,
                                  int numWant)
DHT

Parameters:
h - either a InfoHash or a NID

getExploreKeys

public List<NID> getExploreKeys()
DHT - get random keys to explore