On 6/12/07, Stefano Bagnara <[EMAIL PROTECTED]> wrote:

Hi Robert,


hi stefano

I see you already noticed the move was not pleasing... but... can you
explain why we need to move an api for our core library in an imap
package?


the short answer is that there's a dependency i originally missed between
the User interface and ImapSession

the long answer is that i'm concerned at the level of divergence between the
IMAP branch and trunk

I would avoid to move core stuff in imap dependencies at all as imap
should be optional.


i agree

moving User into the imap-api was the quickest way for me to complete the
modularisation in the branch without resolving my design dilemmas about User

If this is only a limit of the ant build (the
api-library-function-deployment layer) I would prefer to introduce
another layer or an hack (like I did for the mailet-api in past) in the
build system instead of having such a dependency on imap-api for the
whole project.


it's not a limitation of the build system so much as a limitation of the way
that james is factored ATM

it's easy to choose different rules - but there are reasons why i chose to
play by these rules. playing by these rules forces me to factor interfaces
and implementations cleanly. i hope that this will make component
inter-relationships more obvious so that they are easier to comprehend and
discuss.

My concern are related to the "long run". If this is few weeks then
ignore my comment, otherwise we should find a different solution.


don't worry - this should be just a temporary solution

- robert

Reply via email to