@Override public String toString() { return "PluginStateEvent [plugin=" + plugin.getPluginId() + ", newState=" + getPluginState() + ", oldState=" + oldState + ']'; }
@Override public void pluginStateChanged(PluginStateEvent event) { log.debug("The state of plugin '{}' has changed from '{}' to '{}'", event.getPlugin().getPluginId(), event.getOldState(), event.getPluginState()); }
@Override public void pluginStateChanged(PluginStateEvent event) { // TODO optimize (do only for some transitions) // clear cache entries = null; // By default we're assuming, that no checks for extension dependencies are necessary. // // A plugin, that has an optional dependency to other plugins, might lead to unloadable // Java classes (NoClassDefFoundError) at application runtime due to possibly missing // dependencies. Therefore we're enabling the check for optional extensions, if the // started plugin contains at least one optional plugin dependency. if (checkForExtensionDependencies == null && PluginState.STARTED.equals(event.getPluginState())) { for (PluginDependency dependency : event.getPlugin().getDescriptor().getDependencies()) { if (dependency.isOptional()) { log.debug("Enable check for extension dependencies via ASM."); checkForExtensionDependencies = true; break; } } } }
@Override public String toString() { return "PluginStateEvent [plugin=" + plugin.getPluginId() + ", newState=" + getPluginState() + ", oldState=" + oldState + ']'; }
@Override public void pluginStateChanged(PluginStateEvent event) { log.debug("The state of plugin '{}' has changed from '{}' to '{}'", event.getPlugin().getPluginId(), event.getOldState(), event.getPluginState()); }
@Override public void pluginStateChanged(PluginStateEvent event) { // TODO optimize (do only for some transitions) // clear cache entries = null; // By default we're assuming, that no checks for extension dependencies are necessary. // // A plugin, that has an optional dependency to other plugins, might lead to unloadable // Java classes (NoClassDefFoundError) at application runtime due to possibly missing // dependencies. Therefore we're enabling the check for optional extensions, if the // started plugin contains at least one optional plugin dependency. if (checkForExtensionDependencies == null && PluginState.STARTED.equals(event.getPluginState())) { for (PluginDependency dependency : event.getPlugin().getDescriptor().getDependencies()) { if (dependency.isOptional()) { log.debug("Enable check for extension dependencies via ASM."); checkForExtensionDependencies = true; break; } } } }