in taverna-plugin-impl/src/main/java/org/apache/taverna/plugin/impl/PluginManagerImpl.java [139:155]
public List<PluginVersions> getAvailablePlugins() throws PluginException {
if (updateAvailablePlugins) {
synchronized (availablePlugins) {
availablePlugins = new HashMap<String, PluginVersions>();
for (PluginSite pluginSite : pluginSiteManager.getPluginSites()) {
List<PluginVersions> plugins = pluginSiteManager.getPlugins(pluginSite);
for (PluginVersions plugin : plugins) {
if (!installedPlugins.containsKey(plugin.getId())) {
availablePlugins.put(plugin.getId(), plugin);
}
}
}
}
updateAvailablePlugins = false;
}
return new ArrayList<PluginVersions>(availablePlugins.values());
}