summaryrefslogtreecommitdiffstats
path: root/sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/CompositeActivatorImpl.java
diff options
context:
space:
mode:
authorrfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68>2010-03-02 23:30:54 +0000
committerrfeng <rfeng@13f79535-47bb-0310-9956-ffa450edef68>2010-03-02 23:30:54 +0000
commitbfa3a326441cbe17ea6786dbdd658832fc2e93b8 (patch)
tree69c7d61ba6670ae696612b1f0a374936c0d3e4a9 /sca-java-2.x/trunk/modules/core/src/main/java/org/apache/tuscany/sca/core/assembly/impl/CompositeActivatorImpl.java
parent90b9b0f259d291fd9d5c801eb51d7fc20b265c1b (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.java24
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();
+ }
}
}