Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormkuppe2009-02-25 13:30:13 +0000
committermkuppe2009-02-25 13:30:13 +0000
commite070e1bbd5386b42f0dcde9aea19a377923666c2 (patch)
treeedb7720c90ba5b43f13568e26815b523489340ca /providers/bundles/org.eclipse.ecf.provider.discovery
parent6673040c24c09106b7f38acc1ae86d3799de30a0 (diff)
downloadorg.eclipse.ecf-e070e1bbd5386b42f0dcde9aea19a377923666c2.tar.gz
org.eclipse.ecf-e070e1bbd5386b42f0dcde9aea19a377923666c2.tar.xz
org.eclipse.ecf-e070e1bbd5386b42f0dcde9aea19a377923666c2.zip
NEW - bug 254832: [Discovery][SLP] Provider may cache discovered services for lifetime
https://bugs.eclipse.org/bugs/show_bug.cgi?id=254832
Diffstat (limited to 'providers/bundles/org.eclipse.ecf.provider.discovery')
-rw-r--r--providers/bundles/org.eclipse.ecf.provider.discovery/src/org/eclipse/ecf/provider/discovery/CompositeDiscoveryContainer.java15
1 files changed, 15 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 3b4dd1f5c..25db754ff 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
@@ -319,6 +319,21 @@ public class CompositeDiscoveryContainer extends AbstractDiscoveryContainerAdapt
}
}
+ /* (non-Javadoc)
+ * @see org.eclipse.ecf.discovery.AbstractDiscoveryContainerAdapter#purgeCache()
+ */
+ public IServiceInfo[] purgeCache() {
+ final Set set = new HashSet();
+ synchronized (containers) {
+ for (final Iterator itr = containers.iterator(); itr.hasNext();) {
+ final IDiscoveryLocator idca = (IDiscoveryLocator) itr.next();
+ final IServiceInfo[] services = idca.purgeCache();
+ set.addAll(Arrays.asList(services));
+ }
+ }
+ return (IServiceInfo[]) set.toArray(new IServiceInfo[set.size()]);
+ }
+
/**
* @param object
* @return true on success

Back to the top