[freenet-cvs] r16273 - trunk/freenet/src/freenet/node

toad at freenetproject.org toad at freenetproject.org
Tue Dec 4 18:27:15 UTC 2007


Author: toad
Date: 2007-12-04 18:27:15 +0000 (Tue, 04 Dec 2007)
New Revision: 16273

Modified:
   trunk/freenet/src/freenet/node/AnnounceSender.java
   trunk/freenet/src/freenet/node/AnnouncementCallback.java
   trunk/freenet/src/freenet/node/TextModeClientInterface.java
Log:
Another callback

Modified: trunk/freenet/src/freenet/node/AnnounceSender.java
===================================================================
--- trunk/freenet/src/freenet/node/AnnounceSender.java	2007-12-04 18:24:55 UTC (rev 16272)
+++ trunk/freenet/src/freenet/node/AnnounceSender.java	2007-12-04 18:27:15 UTC (rev 16273)
@@ -105,7 +105,7 @@
             
             if(next == null) {
                 // Backtrack
-            	rnf();
+            	rnf(next);
                 return;
             }
             if(logMINOR) Logger.minor(this, "Routing request to "+next);
@@ -221,7 +221,7 @@
             	
             	if(msg == null) {
             		// Fatal timeout
-            		timedOut();
+            		timedOut(next);
             		return;
             	}
             	
@@ -318,22 +318,24 @@
 		return true;
 	}
 
-	private void timedOut() {
+	private void timedOut(PeerNode next) {
 		Message msg = DMT.createFNPRejectedOverload(uid, false);
 		try {
 			source.sendAsync(msg, null, 0, this);
 		} catch (NotConnectedException e) {
 			// Ok
 		}
+		if(cb != null) cb.nodeFailed(next, "timed out");
 	}
 
-	private void rnf() {
+	private void rnf(PeerNode next) {
 		Message msg = DMT.createFNPRouteNotFound(uid, htl);
 		try {
 			source.sendAsync(msg, null, 0, this);
 		} catch (NotConnectedException e) {
 			// Ok
 		}
+		if(cb != null) cb.nodeFailed(next, "route not found");
 	}
 
 	private void complete() {

Modified: trunk/freenet/src/freenet/node/AnnouncementCallback.java
===================================================================
--- trunk/freenet/src/freenet/node/AnnouncementCallback.java	2007-12-04 18:24:55 UTC (rev 16272)
+++ trunk/freenet/src/freenet/node/AnnouncementCallback.java	2007-12-04 18:27:15 UTC (rev 16273)
@@ -7,6 +7,7 @@
 	
 	public void completed();
 	public void bogusNoderef(String reason);
+	public void nodeFailed(PeerNode pn, String reason);
 	public void addedNode(PeerNode pn);
 	
 }

Modified: trunk/freenet/src/freenet/node/TextModeClientInterface.java
===================================================================
--- trunk/freenet/src/freenet/node/TextModeClientInterface.java	2007-12-04 18:24:55 UTC (rev 16272)
+++ trunk/freenet/src/freenet/node/TextModeClientInterface.java	2007-12-04 18:27:15 UTC (rev 16273)
@@ -936,6 +936,15 @@
 						// Ignore
 					}
 				}
+
+				public void nodeFailed(PeerNode pn, String reason) {
+					try {
+						out.write(("Node failed: "+pn.shortToString()+" "+reason).getBytes());
+						out.flush();
+					} catch (IOException e) {
+						// Ignore
+					}
+				}
         		
         	});
         } else {




More information about the cvs mailing list