LOG4J2-1136 - Initial commit to add script support
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/b4813ef8 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/b4813ef8 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/b4813ef8 Branch: refs/heads/LOG4J2-1136 Commit: b4813ef82bafcb62dde39c67208e0341e0e173b3 Parents: 7b4a51b Author: Ralph Goers <[email protected]> Authored: Sat Sep 26 23:37:44 2015 -0700 Committer: Ralph Goers <[email protected]> Committed: Sun Sep 27 10:51:11 2015 -0700 ---------------------------------------------------------------------- .../log4j/core/script/ScriptManager.java | 28 ++++---------------- 1 file changed, 5 insertions(+), 23 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/b4813ef8/log4j-core/src/main/java/org/apache/logging/log4j/core/script/ScriptManager.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/script/ScriptManager.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/script/ScriptManager.java index fcd5808..6ec707c 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/script/ScriptManager.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/script/ScriptManager.java @@ -39,12 +39,10 @@ public class ScriptManager { private static final Logger logger = StatusLogger.getLogger(); private final ScriptEngineManager manager = new ScriptEngineManager(); private final ConcurrentMap<String, ScriptRunner> scripts = new ConcurrentHashMap<>(); - private final String languages; public ScriptManager() { - List<ScriptEngineFactory> factories = manager.getEngineFactories(); if (logger.isDebugEnabled()) { - StringBuilder sb = new StringBuilder(); + List<ScriptEngineFactory> factories = manager.getEngineFactories(); logger.debug("Installed script engines"); for (ScriptEngineFactory factory : factories) { String threading = (String) factory.getParameter("THREADING"); @@ -52,42 +50,26 @@ public class ScriptManager { threading = "Not Thread Safe"; } StringBuilder names = new StringBuilder(); + boolean first = true; for (String name : factory.getNames()) { - if (names.length() > 0) { + if (!first) { names.append(", "); } names.append(name); + first = false; } - if (sb.length() > 0) { - sb.append(", "); - } - sb.append(names); boolean compiled = factory.getScriptEngine() instanceof Compilable; logger.debug(factory.getEngineName() + " Version: " + factory.getEngineVersion() + ", Language: " + factory.getLanguageName() + ", Threading: " + threading + ", Compile: " + compiled + ", Names: {" + names.toString() + "}"); } - languages = sb.toString(); - } else { - StringBuilder names = new StringBuilder(); - for (ScriptEngineFactory factory : factories) { - for (String name : factory.getNames()) { - if (names.length() > 0) { - names.append(", "); - } - names.append(name); - } - } - languages = names.toString(); } } public void addScript(Script script) { ScriptEngine engine = manager.getEngineByName(script.getLanguage()); if (engine == null) { - logger.error("No ScriptEngine found for language " + script.getLanguage() + ". Available languages are: " + - languages); - return; + logger.error("No ScriptEngine found for language " + script.getLanguage()); } if (engine.getFactory().getParameter("THREADING") == null) { scripts.put(script.getName(), new ThreadLocalScriptRunner(script));
