Author: toad
Date: 2007-06-22 21:22:55 +0000 (Fri, 22 Jun 2007)
New Revision: 13720

Modified:
   trunk/freenet/src/freenet/node/PeerNode.java
Log:
Missed a file

Modified: trunk/freenet/src/freenet/node/PeerNode.java
===================================================================
--- trunk/freenet/src/freenet/node/PeerNode.java        2007-06-22 21:22:29 UTC 
(rev 13719)
+++ trunk/freenet/src/freenet/node/PeerNode.java        2007-06-22 21:22:55 UTC 
(rev 13720)
@@ -13,6 +13,7 @@
 import java.io.OutputStreamWriter;
 import java.io.UnsupportedEncodingException;
 import java.io.Writer;
+import java.lang.ref.WeakReference;
 import java.math.BigInteger;
 import java.net.MalformedURLException;
 import java.net.UnknownHostException;
@@ -355,6 +356,10 @@
      * it will have difficulty resolving date-based content etc. */
        private static final long MAX_CLOCK_DELTA = 24L*60L*60L*1000L;

+       /** A WeakReference to this object. Can be taken whenever a node object 
needs to refer to this object for a 
+        * long time, but without preventing it from being GC'ed. */
+       final WeakReference myRef;
+       
     private static boolean logMINOR;

     /**
@@ -372,6 +377,7 @@
      */
     public PeerNode(SimpleFieldSet fs, Node node2, PeerManager peers, boolean 
fromLocal) throws FSParseException, PeerParseException, 
ReferenceSignatureVerificationException {
        logMINOR = Logger.shouldLog(Logger.MINOR, this);
+       myRef = new WeakReference(this);
         this.node = node2;
         this.peers = peers;
         this.backedOffPercent = new TimeDecayingRunningAverage(0.0, 180000, 
0.0, 1.0, node);


Reply via email to