commit | 7c5a354ac86bc58fd62bd54642f4453a939090a1 | [log] [tgz] |
---|---|---|
author | Pierre De Rop <pderop@apache.org> | Tue Mar 29 20:56:46 2011 +0000 |
committer | Pierre De Rop <pderop@apache.org> | Tue Mar 29 20:56:46 2011 +0000 |
tree | 197d277c9ec50d0544188c8bf572fc20eb2501c1 | |
parent | 1c9b10047ebeb5774e17b7b4c951bb6e560f9ba3 [diff] |
get back to previous version of bundleStopped method, which actually must remove all services from a stopping bundle git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1086740 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/DependencyManagerRuntime.java b/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/DependencyManagerRuntime.java index 07d61d8..41b523b 100644 --- a/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/DependencyManagerRuntime.java +++ b/dependencymanager/runtime/src/main/java/org/apache/felix/dm/runtime/DependencyManagerRuntime.java
@@ -128,7 +128,15 @@ { Log.instance().info("Runtime: Removing services from stopping bundle: %s", b.getSymbolicName()); DependencyManager dm = m_managers.remove(b); - // DM automatically remove services when the bundle is stopped: so, no need to clean anything here. + if (dm != null) + { + List<Component> services = new ArrayList(dm.getServices()); + for (Component service : services) + { + Log.instance().info("Runtime: Removing service: %s", service); + dm.remove(service); + } + } } /**