Proposals and work plans for the James v3 User Store
The current proposal is to use JNDI as the interface to user stores. We would have to write JNDI providers to tie into the current legacy structures, or provide a migration tool.
JNDI provides for searching, hierarchy, references (e.g., mailing lists containing references to user entries), and dynamic addition of attributes to entries.
org.apache.naming provides a starting place for JNDI support. Aaron Knauf is also looking at JNDI for adding more sophisticated mailet configuration structure, similar to how JNDI is used in the Servlet Specification to provide more sophisticated configuration than Init Parameters.
One of the proposed ideas is that for each local user, an attribute in their user record would be their message store. This would allow different users to have different types of message stores, e.g., a mailing list archive pseudo-user might be in mbox format, whereas an IMAP user might have something more sophisticated for e-mail storage.
See Also: /Plans