Rajini Sivaram wrote:
Sebastien,

When I was implementing OSGi bundle contributions, I was very frustrated
about the fact that even though bundles can have cyclic dependencies,
bundles with cyclic dependencies could not be added to SCA, if the bundles
contained SCA artifacts (composites/componentType files). OSGi copes with
cyclic dependencies because bundles have separate install and start methods.
So classes need to get resolved only before the start method is called. The
bundle is moved to resolved state by the OSGi runtime when its dependencies
are satisfied, and only resolved bundles can be started. With SCA
contributions, when would the composites/componentType files in a
contribution get processed, if it is not done when the contribution is
added? Class resolution for contributions is lazy, and hence the ordering of
contributions is only relevant when there are multiple contributions
containing the same class. But classes used in SCA composites and
componentType files get resolved when those files are processed, and at the
moment addContribution is the trigger, requiring all dependent contributions
containing classes referred to in composites/componentType files to be
installed first. If addContribution is not the trigger to process
composites, I am not sure what the trigger would be. node.start() for the
node? What about the domain? Wouldn't it have been much simpler if Tuscany
had a better lifecycle layer (like OSGi :-))?



Thank you...

Regards,

Rajini


Short answer to a long question :) when a composite is assigned to a node: node.setComposite(composite).

--
Jean-Sebastien

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

Reply via email to