geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Bruce Snyder <>
Subject Re: Who wants to write POP and IMAP transports? [status]
Date Tue, 06 Dec 2005 17:22:55 GMT
On 12/6/05, Rick McGuire <> wrote:

> >Is the goal to create a full IMAP client with offline capabilities. If so
> >what local message format is going to be used? Is this client going to be
> >plugged in as a portlet in the console?

We're not building a client application. We're simply writing
transports for the Geronimo JavaMail distribution to allow
communication with mail servers via the various protocols. This effort
has nothing to do with plugging into the console, it's far below that
in the architecture sense.

> >I have the code for an online imap client. It has basic functionality to
> >grab folders and pull down messages. What are the feature requirements for
> >this thing?
> >
> >
> The requirements here are to add POP3 and IMAP support to the geronimo
> implementation of the javamail apis.  The end target is an
> implementation that functions exactly the same as the Sun implementation
> of the same.  Everything implemented here needs to be under the umbrella
> of the javamail apis.  So, for example, the local message format will be
> an implementation of the javamail message class.

POP3 and IMAP each have their own defintion of a message as well. So
this is one of the things we're providing.

> Currently, all that is implemented is an outbound smtp transport.  This
> transport takes as input a javamail Message instance and send it to an
> smtp server.  Missing right now is the capability for inbound messages
> (i.e., POP3 or IMAP).   These need to be implementations of the javamail
> AbstractStore and AbstractFolder class.  Currently, we have some stub
> implementations of these classes in the sandbox/mail directory, but they
> are currently just empty autogenerated classes.  Somebody needs to fill
> in the blanks.

Yes, in addition to modeling both POP3 and IMAP Stores and Folders, we
also need to be able to connect to each server type and speak each
protocol. In addition we'll need handlers that implement
DataContentHandler for each message type including plain text, html
and RFC822 (MIME messages). These impls just read messages from a
javax.activation.DataSource and write messages to an OutputStream. The
Sun JavaMail distribution provides both implementations, but it's not
licensed in a way for us to make use of it.

And like I said before, once we get these completed, maybe we can
consider offering Maildir and Mbox implementations if we're feeling

perl -e 'print unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E<D\!G;6%I;\"YC;VT*"

The Castor Project

Apache Geronimo

View raw message