From: Decebal Suiu Date: Mon, 4 Jan 2016 14:37:10 +0000 (+0200) Subject: Fix a bug related to extension HowdyGreeting is not visible on getExtensions() X-Git-Tag: release-0.12.0~7^2~4 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=07392518f802da10fbf67bf02eaad4e76da4367c;p=pf4j.git Fix a bug related to extension HowdyGreeting is not visible on getExtensions() --- diff --git a/pf4j/src/main/java/ro/fortsoft/pf4j/AbstractExtensionFinder.java b/pf4j/src/main/java/ro/fortsoft/pf4j/AbstractExtensionFinder.java index 12f6526..53506fb 100644 --- a/pf4j/src/main/java/ro/fortsoft/pf4j/AbstractExtensionFinder.java +++ b/pf4j/src/main/java/ro/fortsoft/pf4j/AbstractExtensionFinder.java @@ -78,16 +78,19 @@ public abstract class AbstractExtensionFinder implements ExtensionFinder, Plugin Class extensionClass = classLoader.loadClass(className); log.debug("Checking extension type '{}'", className); - if (type.isAssignableFrom(extensionClass) && extensionClass.isAnnotationPresent(Extension.class)) { - Extension extension = extensionClass.getAnnotation(Extension.class); + if (type.isAssignableFrom(extensionClass)) { ExtensionDescriptor descriptor = new ExtensionDescriptor(); - descriptor.setOrdinal(extension.ordinal()); + int ordinal = 0; + if (extensionClass.isAnnotationPresent(Extension.class)) { + ordinal = extensionClass.getAnnotation(Extension.class).ordinal(); + } + descriptor.setOrdinal(ordinal); descriptor.setExtensionClass(extensionClass); ExtensionWrapper extensionWrapper = new ExtensionWrapper<>(descriptor); extensionWrapper.setExtensionFactory(pluginManager.getExtensionFactory()); result.add(extensionWrapper); - log.debug("Added extension '{}' with ordinal {}", className, extension.ordinal()); + log.debug("Added extension '{}' with ordinal {}", className, ordinal); } else { log.debug("'{}' is not an extension for extension point '{}'", className, type.getName()); }