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]