Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
Java-SCA-2.0-Beta3
-
None
-
All
Description
org.apache.tuscany.sca.impl.NodeImpl does the following on start
public void startComposite(String contributionURI, String compositeURI) throws ActivationException, ValidationException, ContributionReadException {
String key = contributionURI+"/"+compositeURI;
if (startedComposites.containsKey(key))
DeployedComposite dc = stoppedComposites.remove(key);
if (dc != null) {
dc.start();
startedComposites.put(key, dc);
and the following on stop
String key = contributionURI+"/"+compositeURI;
DeployedComposite dc = startedComposites.remove(key);
if (dc != null)
else {
If an error is thrown on start it won't be in startedComposites but some of the providers may have been started. So even in the failure case we should consider the composite partially started so that it can be stopped correctly.