mirror of
https://github.com/ChronosX88/KademliaDHT.git
synced 2024-11-22 02:02:21 +00:00
Node Lookup OP
- Removed the unused error boolean
This commit is contained in:
parent
4fbc29fa24
commit
799a4887dd
@ -40,6 +40,8 @@ public class NodeLookupOperation implements Operation, Receiver
|
|||||||
private final KademliaNode localNode;
|
private final KademliaNode localNode;
|
||||||
private final KadConfiguration config;
|
private final KadConfiguration config;
|
||||||
|
|
||||||
|
private boolean error;
|
||||||
|
|
||||||
private final Message lookupMessage; // Message sent to each peer
|
private final Message lookupMessage; // Message sent to each peer
|
||||||
private final Map<Node, String> nodes;
|
private final Map<Node, String> nodes;
|
||||||
|
|
||||||
@ -85,6 +87,8 @@ public class NodeLookupOperation implements Operation, Receiver
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
error = true;
|
||||||
|
|
||||||
/* Set the local node as already asked */
|
/* Set the local node as already asked */
|
||||||
nodes.put(this.localNode.getNode(), ASKED);
|
nodes.put(this.localNode.getNode(), ASKED);
|
||||||
|
|
||||||
@ -96,7 +100,7 @@ public class NodeLookupOperation implements Operation, Receiver
|
|||||||
|
|
||||||
/* If we haven't finished as yet, wait for a maximum of config.operationTimeout() time */
|
/* If we haven't finished as yet, wait for a maximum of config.operationTimeout() time */
|
||||||
int totalTimeWaited = 0;
|
int totalTimeWaited = 0;
|
||||||
int timeInterval = 10; // We re-check every n milliseconds
|
int timeInterval = 10; // We re-check every 300 milliseconds
|
||||||
while (totalTimeWaited < this.config.operationTimeout())
|
while (totalTimeWaited < this.config.operationTimeout())
|
||||||
{
|
{
|
||||||
if (!this.askNodesorFinish())
|
if (!this.askNodesorFinish())
|
||||||
@ -110,6 +114,17 @@ public class NodeLookupOperation implements Operation, Receiver
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* There is no need to throw an exception here!
|
||||||
|
* If the operation times out means we didn't get replies from all nodes,
|
||||||
|
* so lets just simply return the K-Closest nodes we knoe
|
||||||
|
*/
|
||||||
|
// if (error)
|
||||||
|
// {
|
||||||
|
// /* If we still haven't received any responses by then, do a routing timeout */
|
||||||
|
// throw new RoutingException("Node Lookup Timeout.");
|
||||||
|
// }
|
||||||
|
|
||||||
/* Now after we've finished, we would have an idea of offline nodes, lets update our routing table */
|
/* Now after we've finished, we would have an idea of offline nodes, lets update our routing table */
|
||||||
this.localNode.getRoutingTable().setUnresponsiveContacts(this.getFailedNodes());
|
this.localNode.getRoutingTable().setUnresponsiveContacts(this.getFailedNodes());
|
||||||
|
|
||||||
@ -167,6 +182,7 @@ public class NodeLookupOperation implements Operation, Receiver
|
|||||||
if (unasked.isEmpty() && this.messagesTransiting.isEmpty())
|
if (unasked.isEmpty() && this.messagesTransiting.isEmpty())
|
||||||
{
|
{
|
||||||
/* We have no unasked nodes nor any messages in transit, we're finished! */
|
/* We have no unasked nodes nor any messages in transit, we're finished! */
|
||||||
|
error = false;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user