1 17 package org.columba.mail.folder.mbox; 18 19 20 import org.columba.mail.config.FolderItem; 21 import org.columba.mail.config.IFolderItem; 22 import org.columba.mail.folder.AbstractLocalFolder; 23 import org.columba.mail.folder.IDataStorage; 24 import org.columba.mail.folder.search.LuceneQueryEngine; 25 26 27 public class CachedMboxFolder extends AbstractLocalFolder { 28 29 30 31 37 public CachedMboxFolder(FolderItem item, String path) { 38 super(item, path); 39 40 boolean enableLucene = getConfiguration().getBooleanWithDefault("property", 42 "enable_lucene", true); 43 if (enableLucene) { 44 getSearchEngine().setNonDefaultEngine(new LuceneQueryEngine(this)); 45 } 46 } 47 48 55 public CachedMboxFolder(String name, String type, String path) { 56 super(name, type, path); 57 58 IFolderItem item = getConfiguration(); 59 item.setString("property", "accessrights", "user"); 60 item.setString("property", "subfolder", "true"); 61 62 boolean enableLucene = getConfiguration().getBooleanWithDefault("property", 63 "enable_lucene", false); 64 if (enableLucene) { 65 getSearchEngine().setNonDefaultEngine(new LuceneQueryEngine(this)); 66 } 67 } 68 69 70 71 74 public IDataStorage getDataStorageInstance() { 75 if (dataStorage == null) { 76 dataStorage = new MboxDataStorage(this); 77 } 78 79 return dataStorage; 80 } 81 82 85 public void save() throws Exception { 86 super.save(); 87 ((MboxDataStorage)getDataStorageInstance()).save(); 88 } 89 } 90 | Popular Tags |