From 75fe6d659d27e5144f7f2b17db013ac585231cc8 Mon Sep 17 00:00:00 2001 From: Markus Alexander Kuppe Date: Wed, 20 Oct 2010 20:23:44 +0200 Subject: RESOLVED - bug 328278: [Discovery][Composite] CompositeDiscoveryContainer not correctly disposed on ServiceFactory.ungetService(...) https://bugs.eclipse.org/bugs/show_bug.cgi?id=328278 --- .../src/org/eclipse/ecf/internal/provider/discovery/Activator.java | 2 +- .../ecf/provider/discovery/CompositeServiceContainerEvent.java | 7 +++++++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/providers/bundles/org.eclipse.ecf.provider.discovery/src/org/eclipse/ecf/internal/provider/discovery/Activator.java b/providers/bundles/org.eclipse.ecf.provider.discovery/src/org/eclipse/ecf/internal/provider/discovery/Activator.java index 597747ce7..dad8997b9 100644 --- a/providers/bundles/org.eclipse.ecf.provider.discovery/src/org/eclipse/ecf/internal/provider/discovery/Activator.java +++ b/providers/bundles/org.eclipse.ecf.provider.discovery/src/org/eclipse/ecf/internal/provider/discovery/Activator.java @@ -113,7 +113,7 @@ public class Activator implements BundleActivator { * @see org.osgi.framework.ServiceFactory#ungetService(org.osgi.framework.Bundle, org.osgi.framework.ServiceRegistration, java.lang.Object) */ public void ungetService(final Bundle bundle, final ServiceRegistration registration, final Object service) { - // nop + ((CompositeDiscoveryContainer) service).dispose(); } }, props); } diff --git a/providers/bundles/org.eclipse.ecf.provider.discovery/src/org/eclipse/ecf/provider/discovery/CompositeServiceContainerEvent.java b/providers/bundles/org.eclipse.ecf.provider.discovery/src/org/eclipse/ecf/provider/discovery/CompositeServiceContainerEvent.java index 75d0b35be..43512cd52 100644 --- a/providers/bundles/org.eclipse.ecf.provider.discovery/src/org/eclipse/ecf/provider/discovery/CompositeServiceContainerEvent.java +++ b/providers/bundles/org.eclipse.ecf.provider.discovery/src/org/eclipse/ecf/provider/discovery/CompositeServiceContainerEvent.java @@ -29,4 +29,11 @@ public class CompositeServiceContainerEvent extends ServiceContainerEvent implem public ID getOriginalLocalContainerID() { return origId; } + + /* (non-Javadoc) + * @see org.eclipse.ecf.discovery.ServiceContainerEvent#toString() + */ + public String toString() { + return origId.toString() + ": " + super.toString(); //$NON-NLS-1$ + } } -- cgit v1.2.3