aboutsummaryrefslogtreecommitdiffstats
path: root/pf4j/src/main/java
diff options
context:
space:
mode:
authorDecebal Suiu <decebal.suiu@gmail.com>2024-06-24 19:20:26 +0300
committerDecebal Suiu <decebal.suiu@gmail.com>2024-06-24 19:20:26 +0300
commit3e287729c549b68656952c1cad53392df51e9ef9 (patch)
tree531d9355b457ef4e4a0a40ac6c04986957ad1bfb /pf4j/src/main/java
parent9080070ef3ae5af14fb750668afdd26ed73443ff (diff)
downloadpf4j-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.java14
-rw-r--r--pf4j/src/main/java/org/pf4j/asm/ExtensionInfo.java2
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;
}