On Thu, Jan 6, 2011 at 3:43 PM, Emmanuel Lecharny <elecha...@gmail.com> wrote: > On 1/6/11 2:58 PM, Alex Karasulu wrote: >>> >>> However, the schema manipulation API is in the scope of this discussion. >>> >>> >> This is part of the LDAP API and is as critical as Dn, or Entry since it's >> tied together. > > Damn, I overlooked this part. yes, you are totally right here, as soon as > the LdapAPI provide Schema aware objects... >>> >>> Partition and configuration are not part of the Ldap API, thus are >>> irrelevant in this discussion about shared refactoring. >>> >>> >> Right this has nothing to do with shared APIs but is relavent to the >> server. >> The same policies in API maintenance in shared will have to be applied to >> the server. > > yes, +1. I just want to discuss the server API in the server ML, to avoid > confusion. >> >> </snip> >> This is not to blame anyone. I am pointing out the problem, and pointing >> out >> a solution to it so we're not screwed by it. The web of dependencies in >> shared will f**k us down the line if we don't nix em now. > > I'm wondering what would be the best way to get rid of those coupling... May > be creating many maven modules (one per package) then we will immediately > see the invalid coupling ? Or is there any tool we can use to detect the bad > coupling ?
JDepend is such a tool that helps to detect dependencies between packages There is a maven plugin that creates a report, see [1] for an example, especially the "cycles" section. But please note that this report is from November because the site generation is broken, I have to check... There is also an Eclipse plugin available, just search for JDepend in the eclipse marketplace. Kind Regards, Stefan [1] https://hudson.apache.org/hudson/view/A-F/view/Directory/job/dir-shared-site/site/shared-ldap/jdepend-report.html