From: <san...@us...> - 2006-10-31 22:38:33
|
Revision: 18 http://svn.sourceforge.net/gatormail/?rev=18&view=rev Author: sandymac Date: 2006-10-31 14:21:17 -0800 (Tue, 31 Oct 2006) Log Message: ----------- Cache trash and sent folder names after they are looked up. Modified Paths: -------------- GatorMail/trunk/src/java/edu/ufl/osg/webmail/Constants.java Modified: GatorMail/trunk/src/java/edu/ufl/osg/webmail/Constants.java =================================================================== --- GatorMail/trunk/src/java/edu/ufl/osg/webmail/Constants.java 2006-10-25 18:56:53 UTC (rev 17) +++ GatorMail/trunk/src/java/edu/ufl/osg/webmail/Constants.java 2006-10-31 22:21:17 UTC (rev 18) @@ -101,14 +101,32 @@ public static final String MAILBEAN_KEY = "mailBean"; public static String getTrashFolderFullname(final HttpSession session) throws MessagingException { - final Folder inbox = Util.getFolder(session, "INBOX"); - Util.releaseFolder(inbox); - return inbox.getFolder(TRASH_FOLDER).getFullName(); + String trashFolderFullName; + synchronized (session) { + trashFolderFullName = (String)session.getAttribute("trashFolderFullname"); + if (trashFolderFullName == null) { + final Folder inbox = Util.getFolder(session, "INBOX"); + Util.releaseFolder(inbox); + + trashFolderFullName = inbox.getFolder(TRASH_FOLDER).getFullName(); + session.setAttribute("trashFolderFullname", trashFolderFullName); + } + } + return trashFolderFullName; } public static String getSentFolderFullname(final HttpSession session) throws MessagingException { - final Folder inbox = Util.getFolder(session, "INBOX"); - Util.releaseFolder(inbox); - return inbox.getFolder(SENT_FOLDER).getFullName(); + String sentFolderFullname; + synchronized (session) { + sentFolderFullname = (String)session.getAttribute("sentFolderFullname"); + if (sentFolderFullname == null) { + final Folder inbox = Util.getFolder(session, "INBOX"); + Util.releaseFolder(inbox); + + sentFolderFullname = inbox.getFolder(SENT_FOLDER).getFullName(); + session.setAttribute("sentFolderFullname", sentFolderFullname); + } + } + return sentFolderFullname; } } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |