G'day, I'm looking into implementing persistence in the Imap2 proposal, and I'm having a look at using JavaMail as our mailstore interface. (From memory, that was the plan for JamesV3).
Because JavaMail is a client-oriented API, the Store, Folder and Message classes seem to be connection-specific, where they don't make sense except in the context of a connected user. For example, Store.getPersonalNamespaces() gets the namespaces for a user, and Folder.listSubscribed() lists all of the subfolders that a user is subscribed to. In addition, a Message object has getMessageNumber() but this may be different for different users with different connections and can change when messages are expunged. In light of this: 1) It seems unlikely that we'll find an existing persistent JavaMail implementation that satisfies the needs of the ImapServer, as it would need to be able to provide a persistent Store on a per-user basis. 2) Given 1), do we *really* want to use JavaMail as our API? We will need to implement JDBC and File-backed implementations ourselves, providing user-aware access to the underlying repository. Does this buy us anything, except that we don't need to come up with an API ourselves? Has anyone got an idea of how hard this will be to implement? -- ciao, Daz --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
