diff options
author | Decebal Suiu <decebal.suiu@gmail.com> | 2024-06-24 19:20:26 +0300 |
---|---|---|
committer | Decebal Suiu <decebal.suiu@gmail.com> | 2024-06-24 19:20:26 +0300 |
commit | 3e287729c549b68656952c1cad53392df51e9ef9 (patch) | |
tree | 531d9355b457ef4e4a0a40ac6c04986957ad1bfb /pf4j/src/main/java | |
parent | 9080070ef3ae5af14fb750668afdd26ed73443ff (diff) | |
download | pf4j-3e287729c549b68656952c1cad53392df51e9ef9.tar.gz pf4j-3e287729c549b68656952c1cad53392df51e9ef9.zip |
Add more tests
Diffstat (limited to 'pf4j/src/main/java')
-rw-r--r-- | pf4j/src/main/java/org/pf4j/ServiceProviderExtensionFinder.java | 14 | ||||
-rw-r--r-- | pf4j/src/main/java/org/pf4j/asm/ExtensionInfo.java | 2 |
2 files changed, 12 insertions, 4 deletions
diff --git a/pf4j/src/main/java/org/pf4j/ServiceProviderExtensionFinder.java b/pf4j/src/main/java/org/pf4j/ServiceProviderExtensionFinder.java index b477192..b28c576 100644 --- a/pf4j/src/main/java/org/pf4j/ServiceProviderExtensionFinder.java +++ b/pf4j/src/main/java/org/pf4j/ServiceProviderExtensionFinder.java @@ -64,7 +64,7 @@ public class ServiceProviderExtensionFinder extends AbstractExtensionFinder { final Set<String> bucket = new HashSet<>(); try { - Enumeration<URL> urls = getClass().getClassLoader().getResources(EXTENSIONS_RESOURCE); + Enumeration<URL> urls = getExtensionResource(getClass().getClassLoader()); if (urls.hasMoreElements()) { collectExtensions(urls, bucket); } else { @@ -88,12 +88,12 @@ public class ServiceProviderExtensionFinder extends AbstractExtensionFinder { List<PluginWrapper> plugins = pluginManager.getPlugins(); for (PluginWrapper plugin : plugins) { - String pluginId = plugin.getDescriptor().getPluginId(); + String pluginId = plugin.getPluginId(); log.debug("Reading extensions storages for plugin '{}'", pluginId); final Set<String> bucket = new HashSet<>(); try { - Enumeration<URL> urls = ((PluginClassLoader) plugin.getPluginClassLoader()).findResources(EXTENSIONS_RESOURCE); + Enumeration<URL> urls = findExtensionResource((PluginClassLoader) plugin.getPluginClassLoader()); if (urls.hasMoreElements()) { collectExtensions(urls, bucket); } else { @@ -111,6 +111,14 @@ public class ServiceProviderExtensionFinder extends AbstractExtensionFinder { return result; } + Enumeration<URL> getExtensionResource(ClassLoader classLoader) throws IOException { + return classLoader.getResources(EXTENSIONS_RESOURCE); + } + + Enumeration<URL> findExtensionResource(PluginClassLoader classLoader) throws IOException { + return classLoader.findResources(EXTENSIONS_RESOURCE); + } + private void collectExtensions(Enumeration<URL> urls, Set<String> bucket) throws URISyntaxException, IOException { while (urls.hasMoreElements()) { URL url = urls.nextElement(); diff --git a/pf4j/src/main/java/org/pf4j/asm/ExtensionInfo.java b/pf4j/src/main/java/org/pf4j/asm/ExtensionInfo.java index d0acee1..02cdce8 100644 --- a/pf4j/src/main/java/org/pf4j/asm/ExtensionInfo.java +++ b/pf4j/src/main/java/org/pf4j/asm/ExtensionInfo.java @@ -43,7 +43,7 @@ public final class ExtensionInfo { List<String> plugins = new ArrayList<>(); List<String> points = new ArrayList<>(); - private ExtensionInfo(String className) { + ExtensionInfo(String className) { this.className = className; } |