Author: robert
Date: 2008-02-07 17:10:10 +0000 (Thu, 07 Feb 2008)
New Revision: 17670

Modified:
   trunk/freenet/src/freenet/node/NodeStarter.java
   trunk/freenet/src/freenet/node/PeerManager.java
Log:
discard previous simulation connection states


Modified: trunk/freenet/src/freenet/node/NodeStarter.java
===================================================================
--- trunk/freenet/src/freenet/node/NodeStarter.java     2008-02-07 16:56:25 UTC 
(rev 17669)
+++ trunk/freenet/src/freenet/node/NodeStarter.java     2008-02-07 17:10:10 UTC 
(rev 17670)
@@ -371,7 +371,12 @@

                PersistentConfig config = new PersistentConfig(configFS);

-               return new Node(config, random, null, null, executor);
+               Node node=new Node(config, random, null, null, executor);
+               
+               //All testing environments connect the nodes as they want, even 
if the old setup is restored, it is not desired.
+               node.peers.removeAllPeers();
+               
+               return node;
        }

 }

Modified: trunk/freenet/src/freenet/node/PeerManager.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerManager.java     2008-02-07 16:56:25 UTC 
(rev 17669)
+++ trunk/freenet/src/freenet/node/PeerManager.java     2008-02-07 17:10:10 UTC 
(rev 17670)
@@ -338,7 +338,20 @@
                updatePMUserAlert();
         return true;
     }
-
+       
+       public boolean removeAllPeers() {
+               Logger.normal(this, "removeAllPeers!");
+               PeerNode[] oldPeers;
+               synchronized (this) {
+                       oldPeers = myPeers;
+                       myPeers = new PeerNode[0];
+                       connectedPeers = new PeerNode[0];
+               }
+               for (int i=0; i<oldPeers.length; i++)
+                       oldPeers[i].onRemove();
+               return true;
+       }       
+       
        public boolean disconnected(PeerNode pn) {
                synchronized(this) {
                        boolean isInPeers = false;


Reply via email to