From 34a5893b8a0f15e84024ff165d78047457761983 Mon Sep 17 00:00:00 2001 From: extendedclip Date: Sat, 10 Mar 2018 11:29:28 -0500 Subject: [PATCH] Direct access to JavascriptPlacholder class. --- .../javascript/JavascriptExpansion.java | 23 ++++++++----------- .../javascript/JavascriptPlaceholder.java | 10 ++++---- 2 files changed, 15 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/extendedclip/papi/expansion/javascript/JavascriptExpansion.java b/src/main/java/com/extendedclip/papi/expansion/javascript/JavascriptExpansion.java index 72a34fa..1cdef63 100644 --- a/src/main/java/com/extendedclip/papi/expansion/javascript/JavascriptExpansion.java +++ b/src/main/java/com/extendedclip/papi/expansion/javascript/JavascriptExpansion.java @@ -30,7 +30,6 @@ import java.util.Set; import javax.script.ScriptEngine; import javax.script.ScriptEngineManager; -import me.clip.placeholderapi.PlaceholderAPIPlugin; import me.clip.placeholderapi.expansion.Cacheable; import me.clip.placeholderapi.expansion.Configurable; import me.clip.placeholderapi.expansion.PlaceholderExpansion; @@ -131,7 +130,7 @@ public class JavascriptExpansion extends PlaceholderExpansion implements Cacheab try { globalEngine = new ScriptEngineManager().getEngineByName(getString("engine", "javascript")); } catch (NullPointerException ex) { - PlaceholderAPIPlugin.getInstance().getLogger().warning("Javascript engine type was invalid! Defaulting to 'javascript'"); + getPlaceholderAPI().getLogger().warning("Javascript engine type was invalid! Defaulting to 'javascript'"); globalEngine = new ScriptEngineManager().getEngineByName("javascript"); } } @@ -143,12 +142,10 @@ public class JavascriptExpansion extends PlaceholderExpansion implements Cacheab @Override public void clear() { - if (!scripts.isEmpty()) { - scripts.stream().forEach(s -> { - s.saveData(); - s.cleanup(); - }); - } + scripts.stream().forEach(s -> { + s.saveData(); + s.cleanup(); + }); scripts.clear(); globalEngine = null; instance = null; @@ -225,12 +222,10 @@ public class JavascriptExpansion extends PlaceholderExpansion implements Cacheab } private int reloadScripts() { - if (!scripts.isEmpty()) { - scripts.stream().forEach(s -> { - s.saveData(); - s.cleanup(); - }); - } + scripts.stream().forEach(s -> { + s.saveData(); + s.cleanup(); + }); scripts.clear(); config.reload(); return config.loadPlaceholders(); diff --git a/src/main/java/com/extendedclip/papi/expansion/javascript/JavascriptPlaceholder.java b/src/main/java/com/extendedclip/papi/expansion/javascript/JavascriptPlaceholder.java index a3b9d6c..45bbffe 100644 --- a/src/main/java/com/extendedclip/papi/expansion/javascript/JavascriptPlaceholder.java +++ b/src/main/java/com/extendedclip/papi/expansion/javascript/JavascriptPlaceholder.java @@ -51,16 +51,13 @@ public class JavascriptPlaceholder { private FileConfiguration cfg; - private final String FILEDIR = PlaceholderAPIPlugin.getInstance().getDataFolder() + File.separator + "expansions" + File.separator + "javascript_data"; + private final String FILEDIR = PlaceholderAPIPlugin.getInstance().getDataFolder() + File.separator + "javascripts" + File.separator + "javascript_data"; public JavascriptPlaceholder(ScriptEngine engine, String identifier, String script) { Validate.notNull(engine, "ScriptEngine can not be null"); Validate.notNull(identifier, "Identifier can not be null"); Validate.notNull(script, "script can not be null"); this.engine = engine; - engine.put("Data", getData()); - engine.put("BukkitServer", Bukkit.getServer()); - engine.put("Expansion", JavascriptExpansion.getInstance()); this.identifier = identifier; this.script = script; File dir = new File(FILEDIR); @@ -74,6 +71,11 @@ public class JavascriptPlaceholder { } dataFile = new File(FILEDIR, identifier + "_data.yml"); + + engine.put("Data", getData()); + engine.put("BukkitServer", Bukkit.getServer()); + engine.put("Expansion", JavascriptExpansion.getInstance()); + engine.put("Placeholder", this); } public String getIdentifier() {