Thanks Bruce for the update and so we are back at square one. I will try to look at the POP3 side as much as I can and I may need some help.
I will start today on reading the specs. Rajith. -----Original Message----- From: Bruce Snyder [mailto:[EMAIL PROTECTED] Sent: Saturday, December 03, 2005 7:11 PM To: [email protected] Subject: Re: Who wants to write POP and IMAP transports? On 12/3/05, Rajith Attapattu <[EMAIL PROTECTED]> wrote: > Do we really need to write it ourselves?? > > The following link includes a few open source implementations of email > clients. If we can reuse them, then the effort can be used in some other > area. > > http://java-source.net/open-source/mail-clients Below is a quick licensing breakdown of the projects listed on that page: Columba (http://columba.sf.net/) == Mozilla Public License Polarbar (http://www.polarbar.org/) == public domain (?) ICEMail (http://www.icemail.org/) == GPL Pooka (http://www.suberic.net/pooka/) == GPL Grendel (http://www.mozilla.org/projects/grendel/) == Mozilla Public License Snowmail (http://www.snowraver.org/java/SnowMail/index.htm) == public domain (?) So this narrows the field to four: - Columba: Doesn't make use of JavaMail (big problem!) so everything is very proprietary - Polarbar: No source code - Grendel: Grendel has been dormant for a long time and was just recently restarted; - SnowMail: Doesn't make use of JavaMail (big problem!) so everything is very proprietary; it doesn't speak IMAP at all Out of all of this, everything is a non-option except for Grendel. So then I took a deeper look at Grendel and here's what I found: Grendel does make use of JavaMail which is the whole point of this research. There is a storage package and it has a message model based on the JavaMail Message object, but this is where the good news ends. The whole project is very UI application focused (e.g., prefs, mime, filters, search, addressbook, UI, widgets). There are no broken out transports so any IMAP that it might speak (and I don't think it supports much, if anything in the IMAP protocol) the POP3 and IMAP code is very much spaghetti'd together. What's more is that some of the classes import classes from the com.sun.mail.* package (bad, bad!). In addition, Grendel's manner of constructing a MimeMessage seems to be very tightly tied to it's UI implementation - no separation of concerns (big problem!). My conclusion was that Grendel is not usable either. This narrows the field to zero. There are some very good GPL implementations of everything we need, but alas, the GPL/AL incompatibility kicks in which leaves us to build our own implementation. Bruce -- perl -e 'print unpack("u30","D0G)[EMAIL PROTECTED]&5R\"F)R=6-E+G-N>61E<D\!G;6%I;\"YC;VT*" );' The Castor Project http://www.castor.org/ Apache Geronimo http://geronimo.apache.org/
