Author: toad
Date: 2006-08-10 17:46:49 +0000 (Thu, 10 Aug 2006)
New Revision: 10027

Modified:
   trunk/freenet/src/freenet/clients/http/DarknetConnectionsToadlet.java
   trunk/freenet/src/freenet/node/PeerNodeStatus.java
Log:
preserve hashcode in PeerNodeStatus; fixes removing/etc nodes from /darknet/

Modified: trunk/freenet/src/freenet/clients/http/DarknetConnectionsToadlet.java
===================================================================
--- trunk/freenet/src/freenet/clients/http/DarknetConnectionsToadlet.java       
2006-08-10 17:16:33 UTC (rev 10026)
+++ trunk/freenet/src/freenet/clients/http/DarknetConnectionsToadlet.java       
2006-08-10 17:46:49 UTC (rev 10027)
@@ -24,6 +24,7 @@
 import freenet.node.PeerNode;
 import freenet.node.PeerNodeStatus;
 import freenet.support.HTMLNode;
+import freenet.support.Logger;
 import freenet.support.MultiValueTable;
 import freenet.support.SimpleFieldSet;
 import freenet.support.io.Bucket;
@@ -451,6 +452,7 @@
                        MultiValueTable headers = new MultiValueTable();
                        headers.put("Location", "/darknet/");
                        ctx.sendReplyHeaders(302, "Found", headers, null, 0);
+                       Logger.minor(this, "No password");
                        return;
                }

@@ -610,10 +612,15 @@
                } else if (request.isPartSet("remove") || 
(request.isPartSet("submit") && 
request.getPartAsString("action",25).equals("remove"))) {
                        //int hashcode = 
Integer.decode(request.getParam("node")).intValue();

+                       Logger.minor(this, "Remove node");
+                       
                        PeerNode[] peerNodes = node.getDarknetConnections();
                        for(int i = 0; i < peerNodes.length; i++) {
                                if 
(request.isPartSet("node_"+peerNodes[i].hashCode())) {
                                        
this.node.removeDarknetConnection(peerNodes[i]);
+                                       Logger.minor(this, "Removed node: 
node_"+peerNodes[i].hashCode());
+                               } else {
+                                       Logger.minor(this, "Part not set: 
node_"+peerNodes[i].hashCode());
                                }
                        }
                        MultiValueTable headers = new MultiValueTable();

Modified: trunk/freenet/src/freenet/node/PeerNodeStatus.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerNodeStatus.java  2006-08-10 17:16:33 UTC 
(rev 10026)
+++ trunk/freenet/src/freenet/node/PeerNodeStatus.java  2006-08-10 17:46:49 UTC 
(rev 10027)
@@ -64,6 +64,8 @@
        private Map localMessagesReceived;

        private Map localMessagesSent;
+       
+       private final int hashCode;

        public PeerNodeStatus(PeerNode peerNode) {
                this.name = peerNode.getName();
@@ -91,6 +93,7 @@
                this.peerAddedTime = peerNode.getPeerAddedTime();
                this.localMessagesReceived = new 
Hashtable(peerNode.getLocalNodeReceivedMessagesFromStatistic());
                this.localMessagesSent = new 
Hashtable(peerNode.getLocalNodeSentMessagesToStatistic());
+               this.hashCode = peerNode.hashCode;
        }

        /**
@@ -272,4 +275,7 @@
                return statusName + " " + peerAddress + ":" + peerPort + " " + 
name + " " + location + " " + version + " backoff: " + routingBackoffLength + " 
(" + (Math.max(routingBackedOffUntil - System.currentTimeMillis(), 0)) + ")";
        }

+       public int hashCode() {
+               return hashCode;
+       }
 }


Reply via email to