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/10/20 15:06:24 UTC

[jira] Created: (JAMES-1074) Align packages hierarchy of the services

Align packages hierarchy of the services
----------------------------------------

                 Key: JAMES-1074
                 URL: https://issues.apache.org/jira/browse/JAMES-1074
             Project: JAMES Server
          Issue Type: Improvement
    Affects Versions: 3.0-M1
            Reporter: Eric Charles
            Assignee: Eric Charles
             Fix For: 3.0-M1


We need to align package service hierarchy to have stable api, uniformity and osgi-deployable.

For example, the proposed hierarchy for a "mail" service is:
org.apache.james.mail.api (in the mail api project)
org.apache.james.mail.lib (in the mail library project)
org.apache.james.mail.jpa (in the mail jpa impl project)
org.apache.james.mail.jcr (in the mail jcr impl project)
....

The conf files and spring-beans.xml need to be updated according to the repackaging.


-- 
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


Re: [jira] Commented: (JAMES-1074) Align packages hierarchy of the services

Posted by Simon Funnell <si...@propositum.biz>.
I have thought about the issue expressed on the last occasion and I am 
afraid I couldn't think of anything sufficient or compelling. Any 
further comments from me on this subject are not suitable because it 
wouldn't be a comment, it would be an essay and the basis for a new 
project. It would certainly be a useful project (and one I should do) 
for James in the future (particularly runtime management) but at present 
it lacks the qualities required to add value to James V3.

I think 'Service' terminology is going in the right direction, James is 
referred to as a mail 'Server' however I would consider the container to 
be the Server and James a Service. I don't think I have much better to 
add than that at present.

Regards,

Simon


On 28/10/10 07:47, Eric Charles wrote:
> Hi Simon,
>
> If you look for example to the ActiveMQ JMS Queue used by james, we 
> may imagine the bus can deployed on different servers, with each 
> servers serving some incoming smtp requests, and injecting the mails 
> in the distributed JMS queue.
> We could also imagine create some james images to be deployed in EC2.
> When james will be OSGIed, it could be deployed in a distributed OSGI 
> solution (newton,... or whatever).
>
> So yes, I can be with you about  the notion of "Cloud of components" 
> or "Component Cloud" for james.
> I suppose this kind of topic have already been discussed around.
> For james, I would see (thinking loud) something like MaS (Mail as a 
> Service) in a future.
>
> Back to basics, we are still willing to find a place/name for the 
> SpoolManager and JamesServer.
> You can read more on James architecture and development on these very 
> alpha pages:
> - http://james.apache.org/server/3/dev_architecture.html
> - http://james.apache.org/server/3/dev_build.html
> - http://james.apache.org/server/3/dev_extend.html
>
> Tks,
>
> Eric
>
>
> On 23/10/2010 17:47, Simon Funnell wrote:
>>
>> The last time I commented on such things I went a little wild and 
>> spewed a bit too much. I will keep it more succinct this time but it 
>> is worth saying.
>>
>> I think the use of the word 'container' is a really bad term to use 
>> for expressing the notion of modern networked software.
>>
>> If I was to put in my two cents I would say James server is a 
>> 'synergistic and empathetic network of components arranged as a 
>> modular enterprise mail server'.
>>
>> Container terminology use is profuse so it might be difficult to use 
>> other terms. I do think it would be worth discussing what it 'is' 
>> exactly because I think container suggests a particular viewpoint 
>> where another might be more appropriate.
>>
>> Actually, as I sit here writing I might have had an idea, what about 
>> 'Cloud of Components' or 'Component Cloud' with all this cloud 
>> computing business about at present.
>>
>> Could it be that James Server is a Component Cloud of type Modular 
>> Enterprise Mail Server?
>>
>> I don't know if that's a joke or if I am actually being serious.
>>
>> Regards,
>>
>> Simon
>>
>>>> Align packages hierarchy of the services
>>>> ----------------------------------------
>>>>
>>>>                  Key: JAMES-1074
>>>>                  URL: https://issues.apache.org/jira/browse/JAMES-1074
>>>>              Project: JAMES Server
>>>>           Issue Type: Improvement
>>>>     Affects Versions: 3.0-M1
>>>>             Reporter: Eric Charles
>>>>             Assignee: Eric Charles
>>>>              Fix For: 3.0-M1
>>>>
>>>>
>>>> We need to align package service hierarchy to have stable api, 
>>>> uniformity and osgi-deployable.
>>>> For example, the proposed hierarchy for a "mail" service is:
>>>> org.apache.james.mail.api (in the mail api project)
>>>> org.apache.james.mail.lib (in the mail library project)
>>>> org.apache.james.mail.jpa (in the mail jpa impl project)
>>>> org.apache.james.mail.jcr (in the mail jcr impl project)
>>>> ....
>>>> The conf files and spring-beans.xml need to be updated according to 
>>>> the repackaging.
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
>> For additional commands, e-mail: server-dev-help@james.apache.org
>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
> For additional commands, e-mail: server-dev-help@james.apache.org
>
>


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


Re: [jira] Commented: (JAMES-1074) Align packages hierarchy of the services

Posted by Eric Charles <er...@apache.org>.
Hi Simon,

If you look for example to the ActiveMQ JMS Queue used by james, we may 
imagine the bus can deployed on different servers, with each servers 
serving some incoming smtp requests, and injecting the mails in the 
distributed JMS queue.
We could also imagine create some james images to be deployed in EC2.
When james will be OSGIed, it could be deployed in a distributed OSGI 
solution (newton,... or whatever).

So yes, I can be with you about  the notion of "Cloud of components" or 
"Component Cloud" for james.
I suppose this kind of topic have already been discussed around.
For james, I would see (thinking loud) something like MaS (Mail as a 
Service) in a future.

Back to basics, we are still willing to find a place/name for the 
SpoolManager and JamesServer.
You can read more on James architecture and development on these very 
alpha pages:
- http://james.apache.org/server/3/dev_architecture.html
- http://james.apache.org/server/3/dev_build.html
- http://james.apache.org/server/3/dev_extend.html

Tks,

Eric


On 23/10/2010 17:47, Simon Funnell wrote:
>
> The last time I commented on such things I went a little wild and 
> spewed a bit too much. I will keep it more succinct this time but it 
> is worth saying.
>
> I think the use of the word 'container' is a really bad term to use 
> for expressing the notion of modern networked software.
>
> If I was to put in my two cents I would say James server is a 
> 'synergistic and empathetic network of components arranged as a 
> modular enterprise mail server'.
>
> Container terminology use is profuse so it might be difficult to use 
> other terms. I do think it would be worth discussing what it 'is' 
> exactly because I think container suggests a particular viewpoint 
> where another might be more appropriate.
>
> Actually, as I sit here writing I might have had an idea, what about 
> 'Cloud of Components' or 'Component Cloud' with all this cloud 
> computing business about at present.
>
> Could it be that James Server is a Component Cloud of type Modular 
> Enterprise Mail Server?
>
> I don't know if that's a joke or if I am actually being serious.
>
> Regards,
>
> Simon
>
>>> Align packages hierarchy of the services
>>> ----------------------------------------
>>>
>>>                  Key: JAMES-1074
>>>                  URL: https://issues.apache.org/jira/browse/JAMES-1074
>>>              Project: JAMES Server
>>>           Issue Type: Improvement
>>>     Affects Versions: 3.0-M1
>>>             Reporter: Eric Charles
>>>             Assignee: Eric Charles
>>>              Fix For: 3.0-M1
>>>
>>>
>>> We need to align package service hierarchy to have stable api, 
>>> uniformity and osgi-deployable.
>>> For example, the proposed hierarchy for a "mail" service is:
>>> org.apache.james.mail.api (in the mail api project)
>>> org.apache.james.mail.lib (in the mail library project)
>>> org.apache.james.mail.jpa (in the mail jpa impl project)
>>> org.apache.james.mail.jcr (in the mail jcr impl project)
>>> ....
>>> The conf files and spring-beans.xml need to be updated according to 
>>> the repackaging.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: server-dev-unsubscribe@james.apache.org
> For additional commands, e-mail: server-dev-help@james.apache.org
>


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


Re: [jira] Commented: (JAMES-1074) Align packages hierarchy of the services

Posted by Simon Funnell <si...@propositum.biz>.
On 23/10/10 12:54, Eric Charles (JIRA) wrote:
>      [ https://issues.apache.org/jira/browse/JAMES-1074?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12924181#action_12924181 ]
>
> Eric Charles commented on JAMES-1074:
> -------------------------------------
>
> Hi Norman,
>
> If we want to let the door open to use james without a "container" (=injection + lifecycle impl), yes, lifecycle-api would be the way to go.
> But i don't see how we could let james work without a kind-of-container.
>
> MimeMessageWrapper is util, MailImpl is not util nor container, so you're right, we need some kind of core.
> I wonder if we could get rid of this intermediate MailImpl and directly use the Mail from Mailet project.
> But of course, this would introduce a direct dependency between the server and the mailet, something that would not be needed if someone wants to gives access in read only to the mailbox.
>
> The MailsServer/SpoolManager: to be rethinked with a copter view and with that stupid question: "what's a James server?"
>
> True, we don't need some container-api for the different container-*
>
> Tks for your feedbacks :)
>    

The last time I commented on such things I went a little wild and spewed 
a bit too much. I will keep it more succinct this time but it is worth 
saying.

I think the use of the word 'container' is a really bad term to use for 
expressing the notion of modern networked software.

If I was to put in my two cents I would say James server is a 
'synergistic and empathetic network of components arranged as a modular 
enterprise mail server'.

Container terminology use is profuse so it might be difficult to use 
other terms. I do think it would be worth discussing what it 'is' 
exactly because I think container suggests a particular viewpoint where 
another might be more appropriate.

Actually, as I sit here writing I might have had an idea, what about 
'Cloud of Components' or 'Component Cloud' with all this cloud computing 
business about at present.

Could it be that James Server is a Component Cloud of type Modular 
Enterprise Mail Server?

I don't know if that's a joke or if I am actually being serious.

Regards,

Simon

>    
>> Align packages hierarchy of the services
>> ----------------------------------------
>>
>>                  Key: JAMES-1074
>>                  URL: https://issues.apache.org/jira/browse/JAMES-1074
>>              Project: JAMES Server
>>           Issue Type: Improvement
>>     Affects Versions: 3.0-M1
>>             Reporter: Eric Charles
>>             Assignee: Eric Charles
>>              Fix For: 3.0-M1
>>
>>
>> We need to align package service hierarchy to have stable api, uniformity and osgi-deployable.
>> For example, the proposed hierarchy for a "mail" service is:
>> org.apache.james.mail.api (in the mail api project)
>> org.apache.james.mail.lib (in the mail library project)
>> org.apache.james.mail.jpa (in the mail jpa impl project)
>> org.apache.james.mail.jcr (in the mail jcr impl project)
>> ....
>> The conf files and spring-beans.xml need to be updated according to the repackaging.
>>      
>    


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


[jira] Commented: (JAMES-1074) Align packages hierarchy of the services

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

Eric Charles commented on JAMES-1074:
-------------------------------------

Hi Norman,

If we want to let the door open to use james without a "container" (=injection + lifecycle impl), yes, lifecycle-api would be the way to go.
But i don't see how we could let james work without a kind-of-container.

MimeMessageWrapper is util, MailImpl is not util nor container, so you're right, we need some kind of core.
I wonder if we could get rid of this intermediate MailImpl and directly use the Mail from Mailet project.
But of course, this would introduce a direct dependency between the server and the mailet, something that would not be needed if someone wants to gives access in read only to the mailbox.

The MailsServer/SpoolManager: to be rethinked with a copter view and with that stupid question: "what's a James server?"

True, we don't need some container-api for the different container-*

Tks for your feedbacks :)


> Align packages hierarchy of the services
> ----------------------------------------
>
>                 Key: JAMES-1074
>                 URL: https://issues.apache.org/jira/browse/JAMES-1074
>             Project: JAMES Server
>          Issue Type: Improvement
>    Affects Versions: 3.0-M1
>            Reporter: Eric Charles
>            Assignee: Eric Charles
>             Fix For: 3.0-M1
>
>
> We need to align package service hierarchy to have stable api, uniformity and osgi-deployable.
> For example, the proposed hierarchy for a "mail" service is:
> org.apache.james.mail.api (in the mail api project)
> org.apache.james.mail.lib (in the mail library project)
> org.apache.james.mail.jpa (in the mail jpa impl project)
> org.apache.james.mail.jcr (in the mail jcr impl project)
> ....
> The conf files and spring-beans.xml need to be updated according to the repackaging.

-- 
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: (JAMES-1074) Align packages hierarchy of the services

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

Eric Charles commented on JAMES-1074:
-------------------------------------

Stuff to move to mail is trivial and we said the same think.

About the creation of a container-api and container-library, let me try to explain why I came to think to that (may sounds strange in the begining):
- All remaining lifecycle/services interfaces in core-api have usage a bit everywhere..., but implementation/instanciation/manipulation in container-spring, this is why I found that it was the "contract"/interface of the container-spring, and upcoming container-guice, container-karaf,...
- The notion of "core" is a bit fuzzy. Talking about domain model, it may be the Mail class, but why wouldn't we use one day the Mail class of the Mailet for that... Talking about services, I would point SpoolManager and JameServer to represent the core. But yes, here we have both...
- The current core-function has been created because we didn't know where to place JamesSpoolManager and JamesMailServer. I see more JamesSpoolManager  for example as a class that contains the neede threads to make the spooling work, so can be related to container. 
- Finally container-spring has no container-api/container-library equivalent, this breaks our nice projects karma.

An argument to keep core would be to use some projects without a container, but I'm not sure it is possible or even the goal.

Leaving in core is of course ok to me.

1 more comment: We will have org.apache.james.core.api and org.apache.james.core.api.lifecycle. exception to the "all interface in *.api package"


> Align packages hierarchy of the services
> ----------------------------------------
>
>                 Key: JAMES-1074
>                 URL: https://issues.apache.org/jira/browse/JAMES-1074
>             Project: JAMES Server
>          Issue Type: Improvement
>    Affects Versions: 3.0-M1
>            Reporter: Eric Charles
>            Assignee: Eric Charles
>             Fix For: 3.0-M1
>
>
> We need to align package service hierarchy to have stable api, uniformity and osgi-deployable.
> For example, the proposed hierarchy for a "mail" service is:
> org.apache.james.mail.api (in the mail api project)
> org.apache.james.mail.lib (in the mail library project)
> org.apache.james.mail.jpa (in the mail jpa impl project)
> org.apache.james.mail.jcr (in the mail jcr impl project)
> ....
> The conf files and spring-beans.xml need to be updated according to the repackaging.

-- 
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: (JAMES-1074) Align packages hierarchy of the services

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

Eric Charles updated JAMES-1074:
--------------------------------

    Affects Version/s:     (was: 3.0-M1)
                       3.0
        Fix Version/s:     (was: 3.0-M1)
                       3.0

> Align packages hierarchy of the services
> ----------------------------------------
>
>                 Key: JAMES-1074
>                 URL: https://issues.apache.org/jira/browse/JAMES-1074
>             Project: JAMES Server
>          Issue Type: Improvement
>    Affects Versions: 3.0
>            Reporter: Eric Charles
>            Assignee: Eric Charles
>             Fix For: 3.0
>
>
> We need to align package service hierarchy to have stable api, uniformity and osgi-deployable.
> For example, the proposed hierarchy for a "mail" service is:
> org.apache.james.mail.api (in the mail api project)
> org.apache.james.mail.lib (in the mail library project)
> org.apache.james.mail.jpa (in the mail jpa impl project)
> org.apache.james.mail.jcr (in the mail jcr impl project)
> ....
> The conf files and spring-beans.xml need to be updated according to the repackaging.

-- 
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: (JAMES-1074) Align packages hierarchy of the services

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

Norman Maurer commented on JAMES-1074:
--------------------------------------

Hi Eric,

I don't agree 100% here. So here are my comments / concerns:

* core-api
I think I would let lifecycle and service in the module and just rename the packages, like:
    org.apache.james.core.api
    org.apache.james.core.api.lifecycle

repository should get moved to mail-api (even if its a bit strange as it is used by UsersFileRepository too, but I think we should get rid of the class anyway in the future)

* core-library
I think the MailImpl, MailHeaders etc belong in core. As they are "core" parts of James. So just move them to org.apache.james.core.lib

filepair should get moved to mail-library / mail-file, Constants to core-api. The only class in service is AbstractJSR250InstanceFactory which is only used for unit tests. So move it to core-api tests (its a kind of mock)

* core-function
Both implementations should stay there.. just rename package



> Align packages hierarchy of the services
> ----------------------------------------
>
>                 Key: JAMES-1074
>                 URL: https://issues.apache.org/jira/browse/JAMES-1074
>             Project: JAMES Server
>          Issue Type: Improvement
>    Affects Versions: 3.0-M1
>            Reporter: Eric Charles
>            Assignee: Eric Charles
>             Fix For: 3.0-M1
>
>
> We need to align package service hierarchy to have stable api, uniformity and osgi-deployable.
> For example, the proposed hierarchy for a "mail" service is:
> org.apache.james.mail.api (in the mail api project)
> org.apache.james.mail.lib (in the mail library project)
> org.apache.james.mail.jpa (in the mail jpa impl project)
> org.apache.james.mail.jcr (in the mail jcr impl project)
> ....
> The conf files and spring-beans.xml need to be updated according to the repackaging.

-- 
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] Closed: (JAMES-1074) Align packages hierarchy of the services

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

Eric Charles closed JAMES-1074.
-------------------------------

    Resolution: Fixed

Repackaging is done.
Tests are successful.
Can be closed.

> Align packages hierarchy of the services
> ----------------------------------------
>
>                 Key: JAMES-1074
>                 URL: https://issues.apache.org/jira/browse/JAMES-1074
>             Project: JAMES Server
>          Issue Type: Improvement
>    Affects Versions: 3.0-M1
>            Reporter: Eric Charles
>            Assignee: Eric Charles
>             Fix For: 3.0-M1
>
>
> We need to align package service hierarchy to have stable api, uniformity and osgi-deployable.
> For example, the proposed hierarchy for a "mail" service is:
> org.apache.james.mail.api (in the mail api project)
> org.apache.james.mail.lib (in the mail library project)
> org.apache.james.mail.jpa (in the mail jpa impl project)
> org.apache.james.mail.jcr (in the mail jcr impl project)
> ....
> The conf files and spring-beans.xml need to be updated according to the repackaging.

-- 
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: (JAMES-1074) Align packages hierarchy of the services

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

Norman Maurer commented on JAMES-1074:
--------------------------------------

Hi Eric.

* I still don't like the name of container-api etc. Maybe we should just create a module which is called lifecycle-api and but the lifecycle stuff in there ? Sounds more logic to me, because you could reuse JAMES stuff without an container at all.
* sure core is fuzzy but I just don't think the MailImpl should resist in a util package.. because its not a util at all. its an interface implementation. For MimeMessageWrapper etc I can see your point....
* about core-function you are right.. I still don't like how we use it and are open for other ideas.. I think the MailServer interface and implementation for example is mostly just something to access "configuration". The sendMail methods just calls the enqueue method of MailQueue so it could be removed (IMHO). getId() is only used by MailImpl which let me thing of moving it to there.
* About container-spring, I don't think we need to have a api equivalent for this. But maybe its just me ;)

Thx for your time..



> Align packages hierarchy of the services
> ----------------------------------------
>
>                 Key: JAMES-1074
>                 URL: https://issues.apache.org/jira/browse/JAMES-1074
>             Project: JAMES Server
>          Issue Type: Improvement
>    Affects Versions: 3.0-M1
>            Reporter: Eric Charles
>            Assignee: Eric Charles
>             Fix For: 3.0-M1
>
>
> We need to align package service hierarchy to have stable api, uniformity and osgi-deployable.
> For example, the proposed hierarchy for a "mail" service is:
> org.apache.james.mail.api (in the mail api project)
> org.apache.james.mail.lib (in the mail library project)
> org.apache.james.mail.jpa (in the mail jpa impl project)
> org.apache.james.mail.jcr (in the mail jcr impl project)
> ....
> The conf files and spring-beans.xml need to be updated according to the repackaging.

-- 
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] Reopened: (JAMES-1074) Align packages hierarchy of the services

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

Eric Charles reopened JAMES-1074:
---------------------------------


Only core has not been repackaged, so it does not respect the hierarchy.
Looking at the content of core-*, it may be worth to see:

In api:
- lifecycle, and services have much to do with container: we could move them to container-api (to create)
- repository has much to do with mail (the 2.3), so move them to mail-api

In library:
- core: all about MailImpl, MailHeaders and MimeMessage. It has to do with some "model", but the model are everywhere in user, domain,... (no central place for it). So we could move it to util, as it's much about the mime handling of mails.
- filepair: to mail-library and mail-file
- services and Constants: to container-library (to create)

In function:
- JamesSpoolManager and JamesMailServer: to container-library

And we have no core anymore, after all...

WDYT?

> Align packages hierarchy of the services
> ----------------------------------------
>
>                 Key: JAMES-1074
>                 URL: https://issues.apache.org/jira/browse/JAMES-1074
>             Project: JAMES Server
>          Issue Type: Improvement
>    Affects Versions: 3.0-M1
>            Reporter: Eric Charles
>            Assignee: Eric Charles
>             Fix For: 3.0-M1
>
>
> We need to align package service hierarchy to have stable api, uniformity and osgi-deployable.
> For example, the proposed hierarchy for a "mail" service is:
> org.apache.james.mail.api (in the mail api project)
> org.apache.james.mail.lib (in the mail library project)
> org.apache.james.mail.jpa (in the mail jpa impl project)
> org.apache.james.mail.jcr (in the mail jcr impl project)
> ....
> The conf files and spring-beans.xml need to be updated according to the repackaging.

-- 
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