Please see my comments inline.
Thanks,
Raymond
--------------------------------------------------
From: "ant elder" <[email protected]>
Sent: Monday, May 11, 2009 6:46 AM
To: <[email protected]>
Subject: 2.x module refactoring status
I thought it would be worthwhile to post a status of this and the
things remaining that (IMHO) it would be good to get done. A lot has
already been done and the current outstanding items are:
1) Finish tuscany-contribution module split. Under discussion and
looks like its close to being agreed see [1], comments welcome.
We should probably refactor the java related stuff into contribution-java
for a few reasons:
* <import.java> and <export.java> is defined by the Java spec instead of
assembly spec
* It's very likely that the resolution of import/export and java classes is
hosting environment specific
2) We've consensus to merge the -xml modules into the model modules,
most have now been done, there's five remaining to do:
tuscany-assembly-xml
tuscany-binding-ws-xml
tuscany-definitions-xml
tuscany-interface-java-xml
tuscany-policy-xml
I prefer to leave assembly-xml, policy-xml. We could potentially merge
definitions and definitions.xml into assembly or policy though.
3) Agree or not to split tuscany-binding-sca and if so do that, see [3]
IMO, the binding.sca models and processors can be merged into assembly and
assembly-xml. But the runtime provider code should be
in its own module, for example, binding-sca-runtime.
4) Clarify and agree on what are tooling versus runtime dependencies.
There is some discussion [2] but need to start a separate thread to
close on it.
5) Once (3) is done write a testcase to read/process/write scdl that
uses all the model and xml modules to verify it works without the core
runtime.
+1.
6) Clean up WS binding modules. Right now using the WS binding drags
in Axis2 and most of tuscany core, see [4]
The binding-ws related code is a bit messy. We should look into the binding
invocation chain idea to refactor the pieces into interceptors, so do the
WS-* support.
7) Would be worthwhile to review the "core/runtime" modules? Look at
things like: are they fine as-is or any changes, do we know what
they're for and why we have them like this? Which is it ok or not ok
for the extension model and runtime modules to be declaring as
dependencies? Or maybe this can be left for later when we're close to
2.0? The main core modules are these ones:
tuscany-core
tuscany-core-databinding
tuscany-core-spi
tuscany-databinding
tuscany-endpoint
tuscany-extensibility
tuscany-launcher
tuscany-monitor
tuscany-node-api
tuscany-node-impl
tuscany-node-launcher
I would rather defer that until we have the SCA domain/node story into a
clearer picture.
Any comments on all that?
...ant
[1] http://apache.markmail.org/message/ajo2vnf4tgm3g2vn
[2] http://apache.markmail.org/message/iupl7xguejh37zz3
[3] http://apache.markmail.org/message/ypg5axk347h7qnyx
[4] http://apache.markmail.org/message/xw5hecrcun2dxe7h