use HashMap rather than WeakHashMap
authoradam <adam@megacz.com>
Sun, 22 Jul 2007 02:25:06 +0000 (02:25 +0000)
committeradam <adam@megacz.com>
Sun, 22 Jul 2007 02:25:06 +0000 (02:25 +0000)
darcs-hash:20070722022506-5007d-299630ab77fcc9cfb059984e258be9a564f665ca.gz

src/org/ibex/mail/FileBasedMailbox.java

index 4c9d4a5..dd41566 100644 (file)
@@ -21,9 +21,12 @@ import javax.servlet.http.*;
 /** An exceptionally crude implementation of Mailbox relying on POSIXy filesystem semantics */
 public class FileBasedMailbox extends Mailbox.Default implements MailTree {
 
-    public static final long MAGIC_DATE = 0;
+    public static final long MAGIC_DATE =  0;
     private static final char slash = File.separatorChar;
-    private static final WeakHashMap<String,FileBasedMailbox> instances = new WeakHashMap<String,FileBasedMailbox>();
+
+    // FIXME: ideally this should be weak, but we end up getting duplicates of SqliteMailboxes
+    private static final HashMap<String,MailTree> instances = new HashMap<String,MailTree>();
+
     public String toString() { return "[FileBasedMailbox " + path.getAbsolutePath() + "]"; }
 
     public MailTree slash(String name, boolean create) { return getFileBasedMailbox(path.getAbsolutePath()+slash+name, create); }