public Plugin updatePlugin()

in taverna-plugin-impl/src/main/java/org/apache/taverna/plugin/impl/PluginManagerImpl.java [206:224]


	public Plugin updatePlugin(PluginVersions pluginVersions) throws PluginException {
		String pluginId = pluginVersions.getId();
		String pluginSiteUrl = pluginVersions.getPluginSiteUrl();
		String pluginFile = pluginVersions.getLatestVersion().getFile();
		Plugin plugin = installedPlugins.get(pluginId);
		plugin.stop();
		Plugin newPlugin;
		try {
			newPlugin = installPlugin(pluginSiteUrl, pluginFile);
		} catch (PluginException e) {
			plugin.start();
			throw new PluginException("Failed to update plugin " + pluginId, e);
		}
		synchronized (pluginUpdates) {
			pluginUpdates.remove(pluginId);
		}
		uninstallPlugin(plugin);
		return newPlugin;
	}