1 17 package org.columba.mail.folder; 18 19 import org.columba.core.io.DiskIO; 20 import org.columba.core.xml.XmlIO; 21 import org.columba.mail.config.AccountItem; 22 import org.columba.mail.folder.imap.IMAPFolder; 23 import org.columba.mail.folder.imap.IMAPRootFolder; 24 25 public class IMAPTstFactory implements MailboxTstFactory { 26 27 IMAPRootFolder cyrusRoot; 28 IMAPFolder inbox; 29 String namebase; 30 31 public IMAPTstFactory() { 32 XmlIO accountXml = new XmlIO(DiskIO.getResourceURL("org/columba/mail/folder/cyrusaccount.xml")); 33 accountXml.load(); 34 35 AccountItem accountItem = new AccountItem(accountXml.getRoot().getElement("account")); 36 37 38 cyrusRoot = new IMAPRootFolder( accountItem, FolderTstHelper.homeDirectory + "/folders/"); 39 40 try { 41 inbox = new IMAPFolder("INBOX","IMAPFolder", FolderTstHelper.homeDirectory + "/folders/"); 42 cyrusRoot.add(inbox); 43 } catch (Exception e) { 44 e.printStackTrace(); 45 } 46 47 namebase = Integer.toString((int)(System.currentTimeMillis() % 1000)); 49 } 50 51 54 public AbstractMessageFolder createFolder(int folderId) { 55 try { 56 IMAPFolder folder = new IMAPFolder(namebase + Integer.toString(folderId),"IMAPFolder", FolderTstHelper.homeDirectory + "/folders/"); 57 inbox.addSubfolder( folder ); 58 65 return folder; 66 } catch (Exception e) { 67 e.printStackTrace(); 68 } 69 return null; 70 } 71 } 72 | Popular Tags |