You are viewing a plain text version of this content. The canonical link for it is here.
Posted to server-dev@james.apache.org by "Eric Charles (JIRA)" <se...@james.apache.org> on 2010/09/02 14:37:54 UTC

[jira] Created: (IMAP-208) Organize projects to split store from imap

Organize projects to split store from imap
------------------------------------------

                 Key: IMAP-208
                 URL: https://issues.apache.org/jira/browse/IMAP-208
             Project: JAMES Imap
          Issue Type: Bug
            Reporter: Eric Charles


Current "imap" project provides "store" and "imap" functionalities.
This should be splitted.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


[jira] Commented: (IMAP-208) Organize projects to split store from imap

Posted by "Norman Maurer (JIRA)" <se...@james.apache.org>.
    [ https://issues.apache.org/jira/browse/IMAP-208?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12905611#action_12905611 ] 

Norman Maurer commented on IMAP-208:
------------------------------------

Could you explain a bit more about the repackage etc ?

> Organize projects to split store from imap
> ------------------------------------------
>
>                 Key: IMAP-208
>                 URL: https://issues.apache.org/jira/browse/IMAP-208
>             Project: JAMES Imap
>          Issue Type: Bug
>            Reporter: Eric Charles
>         Attachments: projects-view-20100902.png
>
>
> Current "imap" project provides "store" and "imap" functionalities.
> This should be splitted.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


[jira] Commented: (IMAP-208) Organize projects to split store from imap

Posted by "Eric Charles (JIRA)" <se...@james.apache.org>.
    [ https://issues.apache.org/jira/browse/IMAP-208?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12905843#action_12905843 ] 

Eric Charles commented on IMAP-208:
-----------------------------------

I made this diagram after:
- Trying to merge imap-deployment and imap-seda to ima-protocol-tester (https://issues.apache.org/jira/browse/IMAP-204)
- Trying to split the imap-api classes/packages
- Looking at project maven dependencies (the m2eclipse "Depency Graph" shows much)

It became obvious that current "imap" packages are imported in many other non-imap projects. Example:
- HumanReadableText in imap-api is used all the mailbox/store projects (which also used for pop and smtp obviously)
- ImapProcessor interface in imap-api seems a good place (api = interface) but is only used in processor (except for the functional tests) - could be moved to processor
- MailboxPath in in imap-api is used all the way around (even in pop3server) - tried to move it to mailbox project...
- 

After this difficult (and unsuccessful so far) "incremental" approach (progressively move packages/classes), I though a view on how we could organize things could help.
The projects-view-20100902.png diagram takes the existing projects and based on the names and "main responsiblity", shows the dependencies that could be implemented. This gives following "groups" (the links must be read as "uses", or "imports"):
- protocols: All stuff related to imap/pop3/smtp communication protocols - smtp is already there, pop3 was attempted, imap must be refactored.
- entry point (so bad name...) : Kind of adapters between the pop/imap and mailbox, and between smtp and spool. Also has the management interface
- imap processor : don't know if imap processor is "before", "in" or "after" entry point. Currently placed after.
- spool: current spoolmanager with it mailets (fetchmail can be in spool or enty point ???)
- manager: the logic implementing the management
- mailbox; the api to access the maiblox (without knowledge of store) (just realize i forgot imap-message in the diagram)
- store : the abstract and util to be implemented/used by the different stores (jpa, jcr, maildir, torque, memory,...)
- users: the user repository
- util : some utility used by all projects
- container; the current project responsible for the deployement (spring, future osgi container,...)
- mpt: projects related to protocol testing

That's much to read.
Tks in advance for your feedback.


> Organize projects to split store from imap
> ------------------------------------------
>
>                 Key: IMAP-208
>                 URL: https://issues.apache.org/jira/browse/IMAP-208
>             Project: JAMES Imap
>          Issue Type: Bug
>            Reporter: Eric Charles
>         Attachments: projects-view-20100902.png
>
>
> Current "imap" project provides "store" and "imap" functionalities.
> This should be splitted.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


[jira] Assigned: (IMAP-208) Organize projects to split store from imap

Posted by "Norman Maurer (JIRA)" <se...@james.apache.org>.
     [ https://issues.apache.org/jira/browse/IMAP-208?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Norman Maurer reassigned IMAP-208:
----------------------------------

    Assignee: Norman Maurer

> Organize projects to split store from imap
> ------------------------------------------
>
>                 Key: IMAP-208
>                 URL: https://issues.apache.org/jira/browse/IMAP-208
>             Project: JAMES Imap
>          Issue Type: Bug
>            Reporter: Eric Charles
>            Assignee: Norman Maurer
>         Attachments: projects-view-20100902.png
>
>
> Current "imap" project provides "store" and "imap" functionalities.
> This should be splitted.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org


[jira] Updated: (IMAP-208) Organize projects to split store from imap

Posted by "Eric Charles (JIRA)" <se...@james.apache.org>.
     [ https://issues.apache.org/jira/browse/IMAP-208?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Charles updated IMAP-208:
------------------------------

    Attachment: projects-view-20100902.png

This is where we could go.
Many approximations are done, feedback welcome.
class move, repackaging, projects move will  be needed to go to that direction (or any other we could define)

> Organize projects to split store from imap
> ------------------------------------------
>
>                 Key: IMAP-208
>                 URL: https://issues.apache.org/jira/browse/IMAP-208
>             Project: JAMES Imap
>          Issue Type: Bug
>            Reporter: Eric Charles
>         Attachments: projects-view-20100902.png
>
>
> Current "imap" project provides "store" and "imap" functionalities.
> This should be splitted.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
For additional commands, e-mail: server-dev-help@james.apache.org