From 882c7e4ea47897f9d2eab68242f9c306e96c3c44 Mon Sep 17 00:00:00 2001 From: apvrille <ludovic.apvrille@eurecom.fr> Date: Tue, 4 Jul 2017 13:11:40 +0200 Subject: [PATCH] Update on plugin management --- plugins/testPluginCodeGeneration/Makefile | 2 +- src/main/java/myutil/Plugin.java | 20 +++++++++++++++----- src/main/java/myutil/PluginManager.java | 2 ++ 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/plugins/testPluginCodeGeneration/Makefile b/plugins/testPluginCodeGeneration/Makefile index 0f0a835cd7..ddabf994b3 100644 --- a/plugins/testPluginCodeGeneration/Makefile +++ b/plugins/testPluginCodeGeneration/Makefile @@ -1,7 +1,7 @@ JAVAC = javac JAR = jar JAR_TXT = customizer.txt -JAR_TARGET = ../CustomizerAvatarCodeGeneration.jar +JAR_TARGET = ../CustomizerAvatarJavaCodeGeneration.jar all: javac *.java diff --git a/src/main/java/myutil/Plugin.java b/src/main/java/myutil/Plugin.java index 8f4c6d44b9..48faf49c06 100755 --- a/src/main/java/myutil/Plugin.java +++ b/src/main/java/myutil/Plugin.java @@ -78,7 +78,7 @@ public class Plugin { public boolean hasAvatarCodeGenerator() { - String ret = executeRetStringMethod(name, "hasAvatarCodeGenerator"); + String ret = executeRetStringMethod(removeJar(name), "hasAvatarCodeGenerator"); if (ret != null) { classAvatarCodeGenerator = getClass(ret); return true; @@ -103,7 +103,7 @@ public class Plugin { TraceManager.addDev("Loading plugin=" + path + java.io.File.separator + name); URL[] urls = new URL[] { file.toURI().toURL() }; ClassLoader loader = new URLClassLoader(urls); - TraceManager.addDev("Loader created"); + //TraceManager.addDev("Loader created"); c = loader.loadClass(_className); if (c == null) { return null; @@ -149,14 +149,14 @@ public class Plugin { // We have a valid plugin. We now need to get the Method Method m = getMethod(_className, _methodName); if (m == null) { - TraceManager.addDev("Null method"); + TraceManager.addDev("Null method with class as a string class=" + _className + " _method=" + _methodName); return null; } try { return (String)(m.invoke(null)); } catch (Exception e) { - TraceManager.addDev("Exception occured when executing method " + _methodName); + TraceManager.addDev("Exception occured when executing method " + _methodName + " in class=" + _className); return null; } } @@ -165,10 +165,11 @@ public class Plugin { // We have a valid plugin. We now need to get the Method try { + TraceManager.addDev("Getting " + _methodName + " in class " + c.getName()); Method m = c.getMethod(_methodName); if (m == null) { - TraceManager.addDev("Null method"); + TraceManager.addDev("Null method in executeRetStringMethod with Class parameter"); return null; } return (String)(m.invoke(null)); @@ -206,4 +207,13 @@ public class Plugin { } } + public String removeJar(String withjar) { + int index = withjar.indexOf(".jar"); + if (index == -1) { + return withjar; + } + return withjar.substring(0, index); + + } + } diff --git a/src/main/java/myutil/PluginManager.java b/src/main/java/myutil/PluginManager.java index 1838c498a7..60a740a9d4 100755 --- a/src/main/java/myutil/PluginManager.java +++ b/src/main/java/myutil/PluginManager.java @@ -72,9 +72,11 @@ public class PluginManager { public Plugin getPluginAvatarCodeGenerator() { for(Plugin plugin: plugins) { if (plugin.hasAvatarCodeGenerator()) { + TraceManager.addDev(" Found avatar code generation plugin"); return plugin; } } + TraceManager.addDev(" NOT Found avatar code generation plugin"); return null; } -- GitLab