You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fortress@directory.apache.org by Rusi Popov <po...@mdatools.net> on 2020/05/05 19:16:13 UTC

Suggestion: split Fortress core into more focused components

Dear colleagues,

The Fortress Core component contains many features that are not 
co-related - yes, they have something in common, but from the 
perspective of integrating a Fortress client, having ANT and graph 
integrated in it (for example) is not needed.

Suggestion:

Split the core project into core-API, core-ANT, etc. sub-projects, 
producing separate .jar artifacts, while still producing the core .jar 
file for backward compatibility by merging them.


With best regards
Rusi Popov

---------------------------------------------------------------------
To unsubscribe, e-mail: fortress-unsubscribe@directory.apache.org
For additional commands, e-mail: fortress-help@directory.apache.org


Re: Suggestion: split Fortress core into more focused components

Posted by Shawn McKinney <sm...@apache.org>.
> On May 6, 2020, at 8:04 AM, Shawn McKinney <sm...@apache.org> wrote:
> 
> An interesting idea.  Agreed that the Core is bloated with a collection of related items not necessarily good for any one instance, possibly pulling in unnecessary and (worse) conflicting dependencies.
> 
> How would you propose splitting it up?  Any recommendations?

My thoughts.

Break the core into 4 ‘modules':

1. org.apache.directory.fortress.core 

Includes: 
{cli, impl, model, util}

2. core.ldap

{ldap}

3. core.rest

{rest}

4. core.ant

{ant}

The dependencies:

ldap
 ^
 |
core <- rest
 ^
 |
ant

How?  Java module system the obvious first choice.  Followed by OSGI, and perhaps just using Maven to break into separate .jars.

—
Shawn
---------------------------------------------------------------------
To unsubscribe, e-mail: fortress-unsubscribe@directory.apache.org
For additional commands, e-mail: fortress-help@directory.apache.org


Re: Suggestion: split Fortress core into more focused components

Posted by Shawn McKinney <sm...@apache.org>.
> On May 5, 2020, at 2:16 PM, Rusi Popov <po...@mdatools.net> wrote:
> 
> Dear colleagues,
> 

Hello Rusi, welcome.

> The Fortress Core component contains many features that are not co-related - yes, they have something in common, but from the perspective of integrating a Fortress client, having ANT and graph integrated in it (for example) is not needed.
> 
> Suggestion:
> 
> Split the core project into core-API, core-ANT, etc. sub-projects, producing separate .jar artifacts, while still producing the core .jar file for backward compatibility by merging them.
> 

An interesting idea.  Agreed that the Core is bloated with a collection of related items not necessarily good for any one instance, possibly pulling in unnecessary and (worse) conflicting dependencies.

How would you propose splitting it up?  Any recommendations?

Thanks,

—
Shawn

> 
> With best regards
> Rusi Popov


---------------------------------------------------------------------
To unsubscribe, e-mail: fortress-unsubscribe@directory.apache.org
For additional commands, e-mail: fortress-help@directory.apache.org