diff options
author | mkuppe | 2009-02-25 14:31:43 +0000 |
---|---|---|
committer | mkuppe | 2009-02-25 14:31:43 +0000 |
commit | 419c442701bb20332b6fa71a614e1db982798255 (patch) | |
tree | 8d18f3911f6d0a315eb89b974335960659024914 | |
parent | f9270a4766d73dea1477ecf08001e17711193942 (diff) | |
download | org.eclipse.ecf-419c442701bb20332b6fa71a614e1db982798255.tar.gz org.eclipse.ecf-419c442701bb20332b6fa71a614e1db982798255.tar.xz org.eclipse.ecf-419c442701bb20332b6fa71a614e1db982798255.zip |
NEW - bug 230180: [remotesvcs] Provide org.eclipse.ecf.discovery.IDiscoveryContainerAdapter#unregisterAllServices()
https://bugs.eclipse.org/bugs/show_bug.cgi?id=230180
-rw-r--r-- | providers/bundles/org.eclipse.ecf.provider.discovery/src/org/eclipse/ecf/provider/discovery/CompositeDiscoveryContainer.java | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/providers/bundles/org.eclipse.ecf.provider.discovery/src/org/eclipse/ecf/provider/discovery/CompositeDiscoveryContainer.java b/providers/bundles/org.eclipse.ecf.provider.discovery/src/org/eclipse/ecf/provider/discovery/CompositeDiscoveryContainer.java index 267f290ee..406ec91d3 100644 --- a/providers/bundles/org.eclipse.ecf.provider.discovery/src/org/eclipse/ecf/provider/discovery/CompositeDiscoveryContainer.java +++ b/providers/bundles/org.eclipse.ecf.provider.discovery/src/org/eclipse/ecf/provider/discovery/CompositeDiscoveryContainer.java @@ -320,6 +320,24 @@ public class CompositeDiscoveryContainer extends AbstractDiscoveryContainerAdapt } /* (non-Javadoc) + * @see org.eclipse.ecf.discovery.AbstractDiscoveryContainerAdapter#unregisterAllServices() + */ + public void unregisterAllServices() { + synchronized (registeredServices) { + synchronized (containers) { + for (final Iterator itr = containers.iterator(); itr.hasNext();) { + final IDiscoveryAdvertiser idca = (IDiscoveryAdvertiser) itr.next(); + for (Iterator itr2 = registeredServices.iterator(); itr2.hasNext();) { + final IServiceInfo serviceInfo = (IServiceInfo) itr2.next(); + final IServiceInfo isi = getServiceInfoForDiscoveryContainer(serviceInfo, (IDiscoveryLocator) idca); + idca.unregisterService(isi); + } + } + } + } + } + + /* (non-Javadoc) * @see org.eclipse.ecf.discovery.AbstractDiscoveryContainerAdapter#purgeCache() */ public IServiceInfo[] purgeCache() { |