瀏覽代碼

Fix Sonar warning

plugin_context
Decebal Suiu 1 年之前
父節點
當前提交
5b7705d86b
共有 1 個文件被更改,包括 15 次插入10 次删除
  1. 15
    10
      pf4j/src/main/java/org/pf4j/DefaultPluginFactory.java

+ 15
- 10
pf4j/src/main/java/org/pf4j/DefaultPluginFactory.java 查看文件

@@ -59,18 +59,23 @@ public class DefaultPluginFactory implements PluginFactory {
return createInstance(pluginClass, pluginWrapper);
}

/**
* Creates a plugin instance. If an error occurs than that error is logged and the method returns {@code null}.
*/
protected Plugin createInstance(Class<?> pluginClass, PluginWrapper pluginWrapper) {
try {
try {
Constructor<?> constructor = pluginClass.getConstructor(PluginWrapper.class);
return (Plugin) constructor.newInstance(pluginWrapper);
} catch (NoSuchMethodException e) {
Constructor<?> constructor = pluginClass.getConstructor();
return (Plugin) constructor.newInstance();
}
Constructor<?> constructor = pluginClass.getConstructor(PluginWrapper.class);
return (Plugin) constructor.newInstance(pluginWrapper);
} catch (NoSuchMethodException e) {
return createUsingNoParametersConstructor(pluginClass);
} catch (Exception e) {
log.error(e.getMessage(), e);
}

return null;
}

protected Plugin createUsingNoParametersConstructor(Class<?> pluginClass) {
try {
Constructor<?> constructor = pluginClass.getConstructor();
return (Plugin) constructor.newInstance();
} catch (Exception e) {
log.error(e.getMessage(), e);
}

Loading…
取消
儲存