Author: toad
Date: 2008-02-06 19:31:09 +0000 (Wed, 06 Feb 2008)
New Revision: 17606
Modified:
trunk/freenet/src/freenet/node/FailureTable.java
Log:
Add onFatalFailure(), the other new callback
Modified: trunk/freenet/src/freenet/node/FailureTable.java
===================================================================
--- trunk/freenet/src/freenet/node/FailureTable.java 2008-02-06 19:27:50 UTC
(rev 17605)
+++ trunk/freenet/src/freenet/node/FailureTable.java 2008-02-06 19:31:09 UTC
(rev 17606)
@@ -85,6 +85,24 @@
entry.failedTo(routedTo, timeout, now, htl);
}
+ public void onFinalFailure(Key key, PeerNode routedTo, short htl, int
timeout, PeerNode requestor) {
+ long now = System.currentTimeMillis();
+ FailureTableEntry entry;
+ synchronized(this) {
+ entry = (FailureTableEntry) entriesByKey.get(key);
+ if(entry == null) {
+ entry = new FailureTableEntry(key);
+ entriesByKey.push(key, entry);
+ return;
+ } else {
+ entriesByKey.push(key, entry);
+ }
+ trimEntries(now);
+ }
+ entry.failedTo(routedTo, timeout, now, htl);
+ entry.addRequestor(requestor, now);
+ }
+
/**
* Called when a node kills a request: the request DNFs, is killed by a
RecentlyFailed message,
* or times out. In any case this will create a FailureTableEntry.