Stefano Bagnara ha scritto:
After I moved tests in the right places (excluding IMAP), I'd like to
sort out a better structure for our modules.
[...]
I don't want to make a proposal for each change because it would take
too much time, and I cannot know what to propose until I put my hands on
the code.
Let me know if you want me to do this and how to proceed (work in trunk,
create a branch, work on my disk and put a big zip with the result in a
JIRA issue, do nothing).
It's a week since this mail and no answer (well, it's mid-august, maybe
everyone is on holiday), so I decided to go ahead and simply work in
trunk, as CTR suggests in this cases. A branch does not seems to be
appropriate because Robert doesn't like dev-branches, so here is my attempt.
Don't take this as pushing. If anyone think this is wrong we can
revert/branch or do anything else as soon as someone else will become
active again. Feel free to revert anything I did if this block you doing
anything.
Here is a status update:
I completed my first step in "repackaging" and "remoduling" server.trunk
code.
It is far from being perfect, but at least a first goal is achieved.
Now no package belong to 2 modules considering -util, -api and -library
modules.
Here are the current modules and their packages:
==============================================================
mailnotification.util --------> o.a.j.util.mail.*
common.util ------------------> o.a.j.util
o.a.j.util.io
o.a.j.util.sql
o.a.j.util.stream
user-api ---------------------> o.a.j.api.user.*
o.a.j.api.vut.*
domain-api -------------------> o.a.j.api.dnsservice.*
o.a.j.api.domainlist.*
imap-api ---------------------> o.a.j.api.imap.*
imap-codec-library -----------> o.a.j.imapserver.codec.*
o.a.j.imap.message.*
o.a.j.imap.command.imap4rev1.*
user-library -----------------> o.a.j.impl.jamesuser.*
o.a.j.impl.user.*
o.a.j.impl.vut.*
avalon-spring-bridge-library -> o.a.j.container.spring.*
avalon-socket-library --------> o.a.j.socket.*
o.a.j.util.watchdog.*
o.a.j.util.connection.*
mailbox-library --------------> o.a.j.mailboxmanager.*
core-library -----------------> o.a.j.core
o.a.j.dnsserver
o.a.j.domain
o.a.j.mailrepository.*
o.a.j.management.*
o.a.j.services.*
o.a.j
o.a.j.util.bayesian.*
o.a.j.util.codec.*
o.a.j.util.dbcp.*
o.a.j.util.dnsservice.*
o.a.j.util.scheduler.*
==============================================================
The next steps (as soon as I find the cycles) are:
1. core-library: split it into multiple modules, repackage content to
avoid use of the "generic" packages.
2. take care of packages in functions: they must not reuse packages
already used by api/util/libraries.
The ant build is working... m2 build have some dependency issues
(dependencies are declared in a more granular way in m2, so I don't
update it at each refactoring).
I did not check yet if the resulting binary distribution is still
working. Unless someone has hurry to check other things I'll this after
the 2 above steps (it's likely I missed some xml/xinfo file update
during the refactoring).
Stefano
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]