public void stop()

in taverna-plugin-impl/src/main/java/org/apache/taverna/plugin/impl/PluginImpl.java [131:158]


	public void stop() throws PluginException {
		if (state == STARTED) {
			List<Plugin> installedPlugins = pluginManager.getInstalledPlugins();
			for (Bundle bundle : getBundles()) {
				// check if bundle is used by other plugins
				boolean bundleUsed = false;
				for (Plugin installedPlugin : installedPlugins) {
					if (!installedPlugin.equals(this) && installedPlugin.getState() == STARTED) {
						if (installedPlugin.getBundles().contains(bundle)) {
							bundleUsed = true;
							break;
						}
					}
				}
				if (!bundleUsed) {
					try {
						logger.info("Stopping bundle " + bundle.getSymbolicName());
						bundle.stop();
					} catch (BundleException e) {
						logger.warn(
								String.format("Error stopping bundle %1$s for plugin %2$s",
										bundle.getSymbolicName(), getName()), e);
					}
				}
			}
			state = STOPPED;
		}
	}