On Thu, 19 Dec 2002, nick elprin wrote:
> Does anyone know how well abstracted the storage mechanism in the UW
> code is?

All access to a mail store (whether it be a network protocol, a local
filesystem object, or a database) in UW imapd is done via a driver, which
is a set of routines that implements various methods.  Certain of these
methods are mandatory to implement; e.g. open, close.  Other methods are
mandatory-to-implement between two options; e.g. you can implement
"header" and "text" methods and let the c-client library do all MIME
handling, or implement the more advanced "msgdata" method if the database
understands MIME to the extent required by IMAP.  Still other methods are
optional-to-implement, e.g. search (if you don't implement it, the
c-client library will do it).

Look at the existing drivers of various forms to see what you need to do.
I recommend starting with the imap4r1 client driver, since if you're going
to do a database for an IMAP server you might as well do it right and
implement something that is aligned with IMAP.

-- Mark --

http://staff.washington.edu/mrc
Science does not emerge from voting, party politics, or public debate.

Reply via email to