Author: toad
Date: 2007-06-01 17:43:25 +0000 (Fri, 01 Jun 2007)
New Revision: 13450

Modified:
   trunk/freenet/src/freenet/clients/http/N2NTMToadlet.java
   trunk/freenet/src/freenet/node/PeerNode.java
Log:
Only queue it if we get a NotConnectedException

Modified: trunk/freenet/src/freenet/clients/http/N2NTMToadlet.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/N2NTMToadlet.java    2007-06-01 
17:30:40 UTC (rev 13449)
+++ trunk/freenet/src/freenet/clients/http/N2NTMToadlet.java    2007-06-01 
17:43:25 UTC (rev 13450)
@@ -10,20 +10,15 @@
 import java.util.Iterator;

 import freenet.client.HighLevelSimpleClient;
-import freenet.io.comm.DMT;
-import freenet.io.comm.Message;
-import freenet.io.comm.NotConnectedException;
 import freenet.io.comm.UdpSocketManager;
 import freenet.l10n.L10n;
 import freenet.node.Node;
 import freenet.node.NodeClientCore;
 import freenet.node.PeerManager;
 import freenet.node.PeerNode;
-import freenet.support.Base64;
 import freenet.support.HTMLNode;
 import freenet.support.Logger;
 import freenet.support.MultiValueTable;
-import freenet.support.SimpleFieldSet;
 import freenet.support.api.HTTPRequest;

 public class N2NTMToadlet extends Toadlet {
@@ -158,7 +153,7 @@
                        PeerNode[] peerNodes = node.getDarknetConnections();
                        String fnam = request.getPartAsString("filename", 1024);
                        File filename = null;
-                       if(fnam != null) {
+                       if(fnam != null && fnam.length() > 0) {
                                filename = new File(fnam);
                                if(!(filename.exists() && filename.canRead())) {
                                        peerTableInfobox.addChild("#", 
l10n("noSuchFileOrCannotRead"));

Modified: trunk/freenet/src/freenet/node/PeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerNode.java        2007-06-01 17:30:40 UTC 
(rev 13449)
+++ trunk/freenet/src/freenet/node/PeerNode.java        2007-06-01 17:43:25 UTC 
(rev 13450)
@@ -3289,25 +3289,19 @@
                        fs.put("composedTime", now);
                        fs.put("sentTime", now);
                        Message n2ntm;
-                       int status = getPeerNodeStatus();
-                       if(status == PeerManager.PEER_NODE_STATUS_CONNECTED || 
-                                       status == 
PeerManager.PEER_NODE_STATUS_ROUTING_BACKED_OFF) {
-                               n2ntm = DMT.createNodeToNodeMessage(
-                                               Node.N2N_MESSAGE_TYPE_FPROXY, fs
-                                                               
.toString().getBytes("UTF-8"));
-                               try {
-                                       sendAsync(n2ntm, null, 0, null);
-                               } catch (NotConnectedException e) {
-                                       fs.removeValue("sentTime");
-                                       queueN2NTM(fs);
-                                       
setPeerNodeStatus(System.currentTimeMillis());
-                                       return getPeerNodeStatus();
-                               }
-                       } else {
+                       n2ntm = DMT.createNodeToNodeMessage(
+                                       Node.N2N_MESSAGE_TYPE_FPROXY, fs
+                                                       
.toString().getBytes("UTF-8"));
+                       try {
+                               sendAsync(n2ntm, null, 0, null);
+                       } catch (NotConnectedException e) {
                                fs.removeValue("sentTime");
                                queueN2NTM(fs);
+                               setPeerNodeStatus(System.currentTimeMillis());
+                               return getPeerNodeStatus();
                        }
-                       return status;
+                       this.setPeerNodeStatus(System.currentTimeMillis());
+                       return getPeerNodeStatus();
                } catch (UnsupportedEncodingException e) {
                        throw new Error("Impossible: "+e, e);
                }
@@ -3326,25 +3320,19 @@
                        fs.put("sentTime", now);
                        fs.put("uid", uid);
                        Message n2ntm;
-                       int status = getPeerNodeStatus();
-                       if(status == PeerManager.PEER_NODE_STATUS_CONNECTED || 
-                                       status == 
PeerManager.PEER_NODE_STATUS_ROUTING_BACKED_OFF) {
-                               n2ntm = DMT.createNodeToNodeMessage(
-                                               Node.N2N_MESSAGE_TYPE_FPROXY, fs
-                                                               
.toString().getBytes("UTF-8"));
-                               try {
-                                       sendAsync(n2ntm, null, 0, null);
-                               } catch (NotConnectedException e) {
-                                       fs.removeValue("sentTime");
-                                       queueN2NTM(fs);
-                                       
setPeerNodeStatus(System.currentTimeMillis());
-                                       return getPeerNodeStatus();
-                               }
-                       } else {
+                       n2ntm = DMT.createNodeToNodeMessage(
+                                       Node.N2N_MESSAGE_TYPE_FPROXY, fs
+                                                       
.toString().getBytes("UTF-8"));
+                       try {
+                               sendAsync(n2ntm, null, 0, null);
+                       } catch (NotConnectedException e) {
                                fs.removeValue("sentTime");
                                queueN2NTM(fs);
+                               setPeerNodeStatus(System.currentTimeMillis());
+                               return getPeerNodeStatus();
                        }
-                       return status;
+                       this.setPeerNodeStatus(System.currentTimeMillis());
+                       return getPeerNodeStatus();
                } catch (UnsupportedEncodingException e) {
                        throw new Error("Impossible: "+e, e);
                }
@@ -3372,22 +3360,16 @@
                        fo.toFieldSet(fs);
                        Message n2ntm;
                        int status = getPeerNodeStatus();
-                       if(status == PeerManager.PEER_NODE_STATUS_CONNECTED || 
-                                       status == 
PeerManager.PEER_NODE_STATUS_ROUTING_BACKED_OFF) {
-                               n2ntm = DMT.createNodeToNodeMessage(
-                                               Node.N2N_MESSAGE_TYPE_FPROXY, fs
-                                                               
.toString().getBytes("UTF-8"));
-                               try {
-                                       sendAsync(n2ntm, null, 0, null);
-                               } catch (NotConnectedException e) {
-                                       fs.removeValue("sentTime");
-                                       queueN2NTM(fs);
-                                       
setPeerNodeStatus(System.currentTimeMillis());
-                                       return getPeerNodeStatus();
-                               }
-                       } else {
+                       n2ntm = DMT.createNodeToNodeMessage(
+                                       Node.N2N_MESSAGE_TYPE_FPROXY, fs
+                                                       
.toString().getBytes("UTF-8"));
+                       try {
+                               sendAsync(n2ntm, null, 0, null);
+                       } catch (NotConnectedException e) {
                                fs.removeValue("sentTime");
                                queueN2NTM(fs);
+                               setPeerNodeStatus(System.currentTimeMillis());
+                               return getPeerNodeStatus();
                        }
                        return status;
                } catch (UnsupportedEncodingException e) {


Reply via email to