changeset 231:06e542ca50c3

Fix PR726. Create recently_used on startup.
author Andrew Su <asu@redhat.com>
date Wed, 25 May 2011 14:52:30 -0400
parents 85cf7fb25642
children d74fed364c47
files ChangeLog netx/net/sourceforge/jnlp/cache/CacheLRUWrapper.java
diffstat 2 files changed, 19 insertions(+), 6 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Tue May 10 11:59:47 2011 -0400
+++ b/ChangeLog	Wed May 25 14:52:30 2011 -0400
@@ -1,3 +1,9 @@
+2011-05-20  Andrew Su  <asu@redhat.com>
+
+	* netx/net/sourceforge/jnlp/cache/CacheLRUWrapper.java:
+	(CacheLRUWrapper): New constructor to create file.
+	(lock): Removed creation of file here.
+
 2011-05-10  Andrew Su  <asu@redhat.com>
 
 	* netx/net/sourceforge/jnlp/controlpanel/CachePane.java:
--- a/netx/net/sourceforge/jnlp/cache/CacheLRUWrapper.java	Tue May 10 11:59:47 2011 -0400
+++ b/netx/net/sourceforge/jnlp/cache/CacheLRUWrapper.java	Wed May 25 14:52:30 2011 -0400
@@ -78,6 +78,18 @@
     private PropertiesFile cacheOrder = new PropertiesFile(
             new File(cacheDir + File.separator + "recently_used"));
 
+    private CacheLRUWrapper(){
+        File f = cacheOrder.getStoreFile();
+        if (!f.exists()) {
+            try {
+                FileUtils.createParentDir(f);
+                FileUtils.createRestrictedFile(f, true);
+            } catch (IOException e) {
+                e.printStackTrace();
+            }
+        }
+    }
+    
     /**
      * Returns an instance of the policy.
      * 
@@ -181,12 +193,7 @@
      */
     public synchronized void lock() {
         try {
-            File f = cacheOrder.getStoreFile();
-            if (!f.exists()) {
-                FileUtils.createParentDir(f);
-                FileUtils.createRestrictedFile(f, true);
-            }
-            fl = FileUtils.getFileLock(f.getPath(), false, true);
+            fl = FileUtils.getFileLock(cacheOrder.getStoreFile().getPath(), false, true);
         } catch (OverlappingFileLockException e) { // if overlap we just increase the count.
         } catch (Exception e) { // We didn't get a lock..
             e.printStackTrace();