On Fri, 14 Mar 2003, Caskey Dickson wrote:
>On Fri, Mar 14, 2003 at 11:02:02AM -0500, Charlie Brady wrote:
>> On Fri, 14 Mar 2003, Caskey Dickson wrote:
>No, directory tree isn't adequate because while it is a directory tree
>(in the ISA sense), there is considerable specific structure that
>MUST/MAY/SHOULD be present and has defined interpretation and meaning (at
>least meaning that is in the process of being defined).  Therefore we
>need something more specific than 'the directory' or 'the mail store' and
>especially less awkward than 'the directory with the imap folders encoded
>with dots in it in Maildir format'.
>I'm fine with any name, but we will need a term to describe this specific
>structure that is being contemplated.  The best suggestion I've heard is
>IMAPdir.

Following up on this, the structure could contain any kinds of mailboxes
but the names are 1-1 mapped the way IMAP lists them. So IMAPdir suits
this structure well.

I find the idea that we have a chain of responsibility where each Mailbox
specialization has a method to identify a mailbox of its own kind. So for
a Maildir specialization checks wether it's a directory, then if it
contains the cur/new/tmp directories.

An mbox specialization could check that the mailbox is a file, and that
its first few lines resemble that of an mbox structure.

A PostgreSQL specialization could check wether the mailbox was a special
file containing the host/port/scheme/database and so on, telling where
that module should connect to.

Andy

BTW: This scheme does still not support hierarchical rename very well
(which is one thing that Mark Crispin wants _out_ of the IMAP spec). Does
anyone have any ideas on how such an operation could be done with
exactly-once semantics and with full rollback?

-- 
Andreas Aardal Hanssen | http://www.andreas.hanssen.name/gpg
Author of Binc IMAP    | Nil desperandum

Reply via email to