Luciano Resende wrote:
I want to start getting the Contribution service integrated to the process of running components, and I was thinking to give it a try by integrating the service with the new DeafultSCAContatiner that some sample apps in the integration branch is using. I think the idea is to stop using the launcher to consume the application SCDL, and ask the Contribution service to process the application as a contribution.

from:
component = launcher.bootApplication("application", applicationSCDL);

to maybe:
URI appURI = this.contributionService.contribute(contributionLocation, false);
...

Today, when you ask the contribution service to consume an application, you will get back an URI, that is an ID for that contribution. So, my question is, how the external world would get access to the model objects created during the loading phase from the contribution service ? Is the contribution service responsible to register these model objects ( e.g componentDefinition) into some specific model repository (e.g the domain) ? and If so, how do I got about doing this ?


Could someone please share some ideas, or more concrete example on how I'd go about integrating the Contribution service into the big picture ?

--
Luciano Resende
http://people.apache.org/~lresende <http://people.apache.org/%7Elresende>

I have one question and a few comments:

- I was expecting to see that ContributionService in the spi module, with the Contribution model. Why is it defined in the host-api module?

- I don't think that bootApplication and contribute() are really equivalent. Starting a component requires the following to happen: 1. An SCA contribution containing the component implementation and a composite containing the component declaration is installed. 2. The composite declaring the component is included in the SCA domain logical composite.
3. An SCA runtime starts, instantiates and starts the component.

ContributionService.contribute() should only do step 1. Launcher.bootApplication used to do the equivalent of 1+2+3.

Then I imagine that you'll need to get your hands on the actual Contribution model and point to the DeployedArtifact representing the Composite.

Next you'll need to add this Composite to the SCA Domain. By the way, do we have an SCA Domain service yet? If we don't then maybe we can just skip that step for now...

Then you'll probably want to turn the DeployedArtifact into a Component model object and add it to the correct node in the Component model tree described at http://cwiki.apache.org/TUSCANY/tuscany-architecture-guide.data/tuscany_composite_hierarchy.jpg.

And finally start that Component.

--
Jean-Sebastien


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to