>>>> Jean-Sebastien Delfino wrote:
>>>> ...
>>>> I can do the following:

- Provide a few pre-canned init methods that bootstrap the subset of a
Tuscany runtime required for your scenarios. I'll start with these:
 a) list deployables in a contribution
 b) resolve deployables given the set of available contributions

- Come up with samples (easier to understand than test cases) showing how to use the init methods and the current SPIs to implement these scenarios.

I'll probably keep the init method in each sample to start with, and then as we work through more usage scenarios I'm hoping that we can find common
init patterns that we can then push into proper SPIs for all to reuse.


...

To allow programs to work with the Tuscany model extensions without dragging a dependency on the runtime modules (which is one of the ideas discussed here), I need to push the following interfaces/classes:
o.a.t.sca.core.ExtensionPointRegistry
o.a.t.sca.core.DefaultExtensionPointRegistry
o.a.t.sca.core.ModuleActivator
down from module core to module extensibility

This is transparent to all modules that use these classes, as there is no name change and module core already has a compile dependency on module extensibility.

If there's no objection I'll do that at the end of the day tomorrow.

I've made some progress with what was discussed here:

- Moved ExtensionPointRegistry to module extensibility

- Started to create sample tasks showing how to bootstrap a subset of Tuscany to work with the various models [1], see ListDeployables.java, ListDependencies.java, ListComponents.java, and WireComponents.java.

I've also added to extensibility a ModuleActivatorExtensionPoint (since people seemed interested in working with module activators directly [2] and I needed that too in the sample tasks) and a UtilityExtensionPoint useful to hold common utilities like the monitor factory or the interface contract mapper used in some of the sample tasks too.

The init() methods in the sample programs are there to help explore the various Tuscany bootstrap patterns required for these common tasks, candidate to become generic utility methods if people want that.

This is work in progress, subject to changes and improvements in the next few days. I'm also in the process of adding more sample tasks to show XML schema based validation, composite include processing, assignment of composites to SCA nodes etc.

Feedback is welcome.

[1] http://svn.apache.org/repos/asf/incubator/tuscany/java/sca/samples/domain-management/
[2] http://marc.info/?t=120769026900001&r=1&w=2
--
Jean-Sebastien

Reply via email to