The goals of the refactoring are:
1. Reuse the service model
2. Support multiple databinding plugins(jaxb, xmlbeans etc.)
3. Support multiple frontend plugins (jaxws frontend, simple frontend etc.)
and we plan to
1. Copy Tools to Tools2, which will depend on RT temporarily.
the Tools2 will be a framework, it works as a CLI,
and it'll load the service builder plugin, frontend plugins and
databinding plugins according to the input.
and works as a main controller.
2. After all the test passed, then we start move the RT/Core to top
level Core, after that the dependency of Tools2 looks like
API <- Core <- Tools2 <- TestUtils <- RT
3. Move the JaxWs specific processors and generators from Tools2 to
rt/frontend/jaxws
Move the Jaxb specific code from the Tools2 to rt/databiding/jaxb
Comments:
The benefit of moving is it will keep the tools framework clean, but
it make packaging harder, and the tools in RT, seems weird.
4. Migrating to the Tools2, check the testutils works fine, RT tests
pass, System tests pass etc.
Remove Tools
Rename Tools2 as Tools
Comments or Objections?
Cheers,
James.