From 0670f88a4e0b23923f2e3cae9460d051d2796de6 Mon Sep 17 00:00:00 2001 From: szumielxd <43210079+szumielxd@users.noreply.github.com> Date: Wed, 24 Jul 2024 16:01:44 +0200 Subject: [PATCH] Code cleanup --- .../java/com/btk5h/skriptdb/SkriptUtil.java | 23 +++++++++++++++---- .../events/SQLQueryCompleteEvent.java | 20 ++++++---------- .../btk5h/skriptdb/skript/ExprDataSource.java | 8 +++---- .../btk5h/skriptdb/skript/ExprSQLQuery.java | 10 ++++---- .../com/btk5h/skriptdb/skript/ExprUnsafe.java | 3 +-- 5 files changed, 37 insertions(+), 27 deletions(-) diff --git a/src/main/java/com/btk5h/skriptdb/SkriptUtil.java b/src/main/java/com/btk5h/skriptdb/SkriptUtil.java index c95da2e..f6bbf94 100644 --- a/src/main/java/com/btk5h/skriptdb/SkriptUtil.java +++ b/src/main/java/com/btk5h/skriptdb/SkriptUtil.java @@ -1,13 +1,17 @@ package com.btk5h.skriptdb; -import ch.njol.skript.Skript; -import ch.njol.skript.lang.Expression; -import ch.njol.skript.lang.VariableString; - import java.lang.reflect.Field; import java.util.Arrays; import java.util.Optional; +import org.bukkit.event.Event; + +import ch.njol.skript.ScriptLoader; +import ch.njol.skript.Skript; +import ch.njol.skript.lang.Expression; +import ch.njol.skript.lang.VariableString; +import ch.njol.skript.lang.parser.ParserInstance; + public class SkriptUtil { private static final Field STRING; @@ -56,6 +60,17 @@ public class SkriptUtil { } } + @SuppressWarnings("deprecation") + public static boolean isCurrentEvent(Class event) { + try { + Class.forName("ch.njol.skript.lang.parser.ParserInstance"); + return ParserInstance.get().isCurrentEvent(event); + } catch (ClassNotFoundException e) { + return ScriptLoader.isCurrentEvent(event); + } + } + + private static Optional tryGetOldStringField() { try { Field f = VariableString.class.getDeclaredField("string"); diff --git a/src/main/java/com/btk5h/skriptdb/events/SQLQueryCompleteEvent.java b/src/main/java/com/btk5h/skriptdb/events/SQLQueryCompleteEvent.java index 969582f..511bd28 100644 --- a/src/main/java/com/btk5h/skriptdb/events/SQLQueryCompleteEvent.java +++ b/src/main/java/com/btk5h/skriptdb/events/SQLQueryCompleteEvent.java @@ -4,32 +4,26 @@ import org.bukkit.event.Event; import org.bukkit.event.HandlerList; public class SQLQueryCompleteEvent extends Event { - private final static HandlerList HANDLERS = new HandlerList(); + + private static final HandlerList HANDLERS = new HandlerList(); + private final String argument; public SQLQueryCompleteEvent(String argument) { super(true); this.argument = argument; - // this.variables = variables; - } - - public static HandlerList getHandlerList() { - return HANDLERS; - } - - @Override - public String getEventName() { - return super.getEventName(); } @Override public HandlerList getHandlers() { - return HANDLERS; + return getHandlerList(); } public String getQuery() { return argument; } - // public String getVariables() {return;} + public static HandlerList getHandlerList() { + return HANDLERS; + } } diff --git a/src/main/java/com/btk5h/skriptdb/skript/ExprDataSource.java b/src/main/java/com/btk5h/skriptdb/skript/ExprDataSource.java index 945db22..22dec95 100644 --- a/src/main/java/com/btk5h/skriptdb/skript/ExprDataSource.java +++ b/src/main/java/com/btk5h/skriptdb/skript/ExprDataSource.java @@ -32,8 +32,9 @@ public class ExprDataSource extends SimpleExpression { static { Skript.registerExpression(ExprDataSource.class, HikariDataSource.class, - ExpressionType.COMBINED, "[the] data(base|[ ]source) [(of|at)] %string% " + - "[with [a] [max[imum]] [connection] life[ ]time of %-timespan%] " + "[[(using|with)] [a] driver %-string%]"); + ExpressionType.COMBINED, "[the] data(base|[ ]source) [(of|at)] %string% " + + "[with [a] [max[imum]] [connection] life[ ]time of %-timespan%] " + + "[[(using|with)] [a] driver %-string%]"); } private Expression url; @@ -100,8 +101,7 @@ public class ExprDataSource extends SimpleExpression { @SuppressWarnings("unchecked") @Override - public boolean init(Expression[] exprs, int matchedPattern, Kleenean isDelayed, - SkriptParser.ParseResult parseResult) { + public boolean init(Expression[] exprs, int matchedPattern, Kleenean isDelayed, SkriptParser.ParseResult parseResult) { url = (Expression) exprs[0]; maxLifetime = (Expression) exprs[1]; driver = (Expression) exprs[2]; diff --git a/src/main/java/com/btk5h/skriptdb/skript/ExprSQLQuery.java b/src/main/java/com/btk5h/skriptdb/skript/ExprSQLQuery.java index b44e47b..96be03d 100644 --- a/src/main/java/com/btk5h/skriptdb/skript/ExprSQLQuery.java +++ b/src/main/java/com/btk5h/skriptdb/skript/ExprSQLQuery.java @@ -1,6 +1,10 @@ package com.btk5h.skriptdb.skript; -import ch.njol.skript.ScriptLoader; +import org.bukkit.event.Event; + +import com.btk5h.skriptdb.SkriptUtil; +import com.btk5h.skriptdb.events.SQLQueryCompleteEvent; + import ch.njol.skript.Skript; import ch.njol.skript.lang.Expression; import ch.njol.skript.lang.ExpressionType; @@ -8,8 +12,6 @@ import ch.njol.skript.lang.SkriptParser; import ch.njol.skript.lang.util.SimpleExpression; import ch.njol.skript.log.ErrorQuality; import ch.njol.util.Kleenean; -import com.btk5h.skriptdb.events.SQLQueryCompleteEvent; -import org.bukkit.event.Event; /** * Stores the error from the last executed statement, if there was one. @@ -51,7 +53,7 @@ public class ExprSQLQuery extends SimpleExpression { @Override public boolean init(final Expression[] expressions, final int matchedPattern, final Kleenean isDelayed, final SkriptParser.ParseResult parseResult) { - if (!ScriptLoader.isCurrentEvent(SQLQueryCompleteEvent.class)) { + if (!SkriptUtil.isCurrentEvent(SQLQueryCompleteEvent.class)) { Skript.error("Cannot use 'sql query' outside of a complete of sql query event", ErrorQuality.SEMANTIC_ERROR); return false; } diff --git a/src/main/java/com/btk5h/skriptdb/skript/ExprUnsafe.java b/src/main/java/com/btk5h/skriptdb/skript/ExprUnsafe.java index 44602ab..70df358 100644 --- a/src/main/java/com/btk5h/skriptdb/skript/ExprUnsafe.java +++ b/src/main/java/com/btk5h/skriptdb/skript/ExprUnsafe.java @@ -53,8 +53,7 @@ public class ExprUnsafe extends SimpleExpression { @SuppressWarnings("unchecked") @Override - public boolean init(Expression[] exprs, int matchedPattern, Kleenean isDelayed, - SkriptParser.ParseResult parseResult) { + public boolean init(Expression[] exprs, int matchedPattern, Kleenean isDelayed, SkriptParser.ParseResult parseResult) { stringExpression = (Expression) exprs[0]; rawExpression = parseResult.expr.substring("unsafe".length()).trim(); return true;