Author: toad
Date: 2007-02-15 16:21:34 +0000 (Thu, 15 Feb 2007)
New Revision: 11799

Modified:
   trunk/freenet/src/freenet/client/ArchiveManager.java
   trunk/freenet/src/freenet/client/ArchiveStoreItem.java
   trunk/freenet/src/freenet/client/RealArchiveStoreItem.java
   trunk/freenet/src/freenet/client/TempStoreElement.java
Log:
Explicit close() methods instead of finalize: clean up a bit after previous 
commit

Modified: trunk/freenet/src/freenet/client/ArchiveManager.java
===================================================================
--- trunk/freenet/src/freenet/client/ArchiveManager.java        2007-02-15 
14:07:37 UTC (rev 11798)
+++ trunk/freenet/src/freenet/client/ArchiveManager.java        2007-02-15 
16:21:34 UTC (rev 11799)
@@ -235,7 +235,7 @@
                                                if(readBytes > 
maxArchivedFileSize) {
                                                        addErrorElement(ctx, 
key, name, "File too big: "+maxArchivedFileSize+" greater than current archived 
file size limit "+maxArchivedFileSize);
                                                        out.close();
-                                                       
temp.underBucket.finalize();
+                                                       temp.close();
                                                        continue outer;
                                                }
                                        }
@@ -393,7 +393,7 @@
        private void trimStoredData() {
                while((cachedData > maxCachedData) || (storedData.size() > 
maxCachedElements)) {
                        ArchiveStoreItem e = (ArchiveStoreItem) 
storedData.popValue();
-                       e.context.removeItem(e);
+                       e.close();
                }
        }


Modified: trunk/freenet/src/freenet/client/ArchiveStoreItem.java
===================================================================
--- trunk/freenet/src/freenet/client/ArchiveStoreItem.java      2007-02-15 
14:07:37 UTC (rev 11798)
+++ trunk/freenet/src/freenet/client/ArchiveStoreItem.java      2007-02-15 
16:21:34 UTC (rev 11799)
@@ -20,6 +20,13 @@
                context.addItem(this);
        }

+       /** Expected to delete any stored data on disk, and decrement 
cachedData.
+        * Implemented to remove self from context.
+        */
+       void close() {
+               context.removeItem(this);
+       }
+
        /**
         * Return cached data as a Bucket, or throw an ArchiveFailureException.
         */

Modified: trunk/freenet/src/freenet/client/RealArchiveStoreItem.java
===================================================================
--- trunk/freenet/src/freenet/client/RealArchiveStoreItem.java  2007-02-15 
14:07:37 UTC (rev 11798)
+++ trunk/freenet/src/freenet/client/RealArchiveStoreItem.java  2007-02-15 
16:21:34 UTC (rev 11799)
@@ -59,8 +59,8 @@
                return FileUtil.estimateUsage(myFilename, underBucket.size());
        }

-       public synchronized void finalize() {
-               super.context.removeItem(this);
+       synchronized void close() {
+               super.close();
                if(finalized) return;
                long sz = spaceUsed();
                underBucket.finalize();

Modified: trunk/freenet/src/freenet/client/TempStoreElement.java
===================================================================
--- trunk/freenet/src/freenet/client/TempStoreElement.java      2007-02-15 
14:07:37 UTC (rev 11798)
+++ trunk/freenet/src/freenet/client/TempStoreElement.java      2007-02-15 
16:21:34 UTC (rev 11799)
@@ -18,4 +18,8 @@
        File myFilename;
        PaddedEphemerallyEncryptedBucket bucket;
        FileBucket underBucket;
+       
+       public void close() {
+               underBucket.free();
+       }
 }
\ No newline at end of file


Reply via email to