diff options
author | rfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68> | 2010-03-02 23:30:54 +0000 |
---|---|---|
committer | rfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68> | 2010-03-02 23:30:54 +0000 |
commit | bfa3a326441cbe17ea6786dbdd658832fc2e93b8 (patch) | |
tree | 69c7d61ba6670ae696612b1f0a374936c0d3e4a9 /sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/CompositeActivatorImpl.java | |
parent | 90b9b0f259d291fd9d5c801eb51d7fc20b265c1b (diff) |
Add the ability to map binding.sca to any bindings in the runtime by configuration
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@918261 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/CompositeActivatorImpl.java')
-rw-r--r-- | sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/CompositeActivatorImpl.java | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/CompositeActivatorImpl.java b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/CompositeActivatorImpl.java index 629d39ad3e..e7d2d5d841 100644 --- a/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/CompositeActivatorImpl.java +++ b/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/CompositeActivatorImpl.java @@ -558,17 +558,19 @@ public class CompositeActivatorImpl implements CompositeActivator { } public void stop(RuntimeEndpointReference epr) { - CompositeContext compositeContext = epr.getCompositeContext(); - if (compositeContext == null) { - throw new IllegalStateException("The endpoint reference is not bound"); - } - compositeContext.getEndpointRegistry().removeEndpointReference(epr); - ReferenceBindingProvider bindingProvider = epr.getBindingProvider(); - if (bindingProvider != null) { - bindingProvider.stop(); - } - for (PolicyProvider policyProvider : epr.getPolicyProviders()) { - policyProvider.stop(); + if (epr.isStarted()) { + CompositeContext compositeContext = epr.getCompositeContext(); + if (compositeContext == null) { + throw new IllegalStateException("The endpoint reference is not bound"); + } + compositeContext.getEndpointRegistry().removeEndpointReference(epr); + ReferenceBindingProvider bindingProvider = epr.getBindingProvider(); + if (bindingProvider != null) { + bindingProvider.stop(); + } + for (PolicyProvider policyProvider : epr.getPolicyProviders()) { + policyProvider.stop(); + } } } |