Quellcode durchsuchen

Fix for problem with file lock on Windows platform. Introduce unloadPlugins method. (#387)

Thanks for your contribution!
tags/release-3.4.0
Valeriy Kucherenko vor 3 Jahren
Ursprung
Commit
58d3c8e183
Es ist kein Account mit der E-Mail-Adresse des Committers verbunden

+ 11
- 0
pf4j/src/main/java/org/pf4j/AbstractPluginManager.java Datei anzeigen

@@ -235,6 +235,17 @@ public abstract class AbstractPluginManager implements PluginManager {
}
}

/**
* Unload all plugins
*/
@Override
public void unloadPlugins() {
// wrap resolvedPlugins in new list because of concurrent modification
for (PluginWrapper pluginWrapper : new ArrayList<>(resolvedPlugins)) {
unloadPlugin(pluginWrapper.getPluginId());
}
}

/**
* Unload the specified plugin and it's dependents.
*/

+ 5
- 0
pf4j/src/main/java/org/pf4j/PluginManager.java Datei anzeigen

@@ -100,6 +100,11 @@ public interface PluginManager {
*/
PluginState stopPlugin(String pluginId);

/**
* Unload all plugins
*/
void unloadPlugins();

/**
* Unload a plugin.
*

+ 2
- 0
pf4j/src/test/java/org/pf4j/JarPluginManagerTest.java Datei anzeigen

@@ -53,6 +53,8 @@ public class JarPluginManagerTest {

@AfterEach
public void tearDown() {
pluginManager.unloadPlugins();

pluginJar = null;
pluginManager = null;
}

Laden…
Abbrechen
Speichern