From e9666ad6fedef32c123e5d8a56290d4cc983fd54 Mon Sep 17 00:00:00 2001 From: Andrew Baker Date: Thu, 15 Jul 2021 15:24:58 -0700 Subject: [PATCH 01/14] Fix poms --- Bungee/pom.xml | 22 ++++++++++------------ Spigot/pom.xml | 9 ++------- Velocity/pom.xml | 16 ++++++++-------- pom.xml | 12 ++++++++---- 4 files changed, 28 insertions(+), 31 deletions(-) diff --git a/Bungee/pom.xml b/Bungee/pom.xml index a529787e..48ec43c6 100644 --- a/Bungee/pom.xml +++ b/Bungee/pom.xml @@ -227,11 +227,10 @@ papermc-snpashots https://papermc.io/repo/repository/maven-snapshots/ - - + egg82-nexus https://nexus.egg82.me/repository/maven-releases/ @@ -245,14 +244,14 @@ https://repo.aikar.co/content/groups/aikar/ + + sonatype-oss-snapshots + https://oss.sonatype.org/content/repositories/snapshots/ + github-rjenkinsjr https://raw.github.com/rjenkinsjr/maven2/repo - - plan - https://dl.bintray.com/rsl1122/Plan-repository - CodeMC https://repo.codemc.org/repository/maven-public @@ -291,7 +290,7 @@ net.kyori adventure-platform-bungeecord - ${adventure.version} + ${adventure.bungeecord.version} ninja.egg82 @@ -322,10 +321,9 @@ ${bstats.version} - com.djrapitops - Plan-api + com.github.plan-player-analytics + Plan ${plan.version} - provided net.luckperms @@ -347,7 +345,7 @@ net.kyori adventure-text-minimessage - ${adventure.version} + ${minimessage.version} net.oneandone.reflections8 diff --git a/Spigot/pom.xml b/Spigot/pom.xml index 6860dba4..8af92cda 100644 --- a/Spigot/pom.xml +++ b/Spigot/pom.xml @@ -258,10 +258,6 @@ github-rjenkinsjr https://raw.github.com/rjenkinsjr/maven2/repo - - plan - https://dl.bintray.com/rsl1122/Plan-repository - CodeMC https://repo.codemc.org/repository/maven-public @@ -334,10 +330,9 @@ ${bstats.version} - com.djrapitops - Plan-api + com.github.plan-player-analytics + Plan ${plan.version} - provided me.clip diff --git a/Velocity/pom.xml b/Velocity/pom.xml index 04a9b44e..db9fe2b5 100644 --- a/Velocity/pom.xml +++ b/Velocity/pom.xml @@ -246,10 +246,6 @@ github-rjenkinsjr https://raw.github.com/rjenkinsjr/maven2/repo - - plan - https://dl.bintray.com/rsl1122/Plan-repository - CodeMC https://repo.codemc.org/repository/maven-public @@ -303,10 +299,9 @@ - com.djrapitops - Plan-api + com.github.plan-player-analytics + Plan ${plan.version} - provided net.luckperms @@ -325,10 +320,15 @@ + + co.aikar + acf-velocity + ${acf.version} + net.kyori adventure-text-minimessage - ${adventure.version} + ${minimessage.version} net.oneandone.reflections8 diff --git a/pom.xml b/pom.xml index a88c9835..7597901f 100644 --- a/pom.xml +++ b/pom.xml @@ -28,7 +28,7 @@ 12.7.2 4.0.3 3.3 - 3.0.0 + 4.0.0-SNAPSHOT 3.5.1 5.11.0 2.8.0 @@ -41,11 +41,13 @@ 4.1.50.Final 20.1.0 5.8.0-M1 + 1.3.1 1.4.0 1.9 4.7.0 4.0.0-SNAPSHOT + 4.0.0-SNAPSHOT 4.1.0-SNAPSHOT 2.1.0 3.1.2 @@ -54,6 +56,8 @@ 1.4 0.11.7 3.27.0-GA + 2.2.16 + 0.5.1-SNAPSHOT 5.4.1330 2.10.9 @@ -187,8 +191,8 @@ API Common Paper - - + Spigot + Bungee + Velocity From 29b11d459e98f1700955124a3514a03ec565f5f8 Mon Sep 17 00:00:00 2001 From: Andrew Baker Date: Thu, 15 Jul 2021 15:32:29 -0700 Subject: [PATCH 02/14] Replace all references to missing ExceptionUtil --- .../main/java/me/egg82/antivpn/AntiVPN.java | 5 ++--- .../commands/internal/CheckCommand.java | 7 +++---- .../commands/internal/ScoreCommand.java | 3 +-- .../commands/internal/TestCommand.java | 3 +-- .../me/egg82/antivpn/events/PlayerEvents.java | 17 ++++++++--------- .../antivpn/hooks/PlayerAnalyticsHook.java | 13 ++++++------- .../commands/internal/ScoreCommand.java | 2 +- .../commands/internal/TestCommand.java | 2 +- .../commands/internal/ScoreCommand.java | 2 +- .../commands/internal/TestCommand.java | 2 +- .../main/java/me/egg82/antivpn/AntiVPN.java | 5 ++--- .../commands/internal/CheckCommand.java | 7 +++---- .../commands/internal/ScoreCommand.java | 3 +-- .../commands/internal/TestCommand.java | 3 +-- .../me/egg82/antivpn/events/PlayerEvents.java | 19 +++++++++---------- .../antivpn/hooks/PlayerAnalyticsHook.java | 13 ++++++------- 16 files changed, 47 insertions(+), 59 deletions(-) diff --git a/Bungee/src/main/java/me/egg82/antivpn/AntiVPN.java b/Bungee/src/main/java/me/egg82/antivpn/AntiVPN.java index 840a7add..32126cba 100644 --- a/Bungee/src/main/java/me/egg82/antivpn/AntiVPN.java +++ b/Bungee/src/main/java/me/egg82/antivpn/AntiVPN.java @@ -41,7 +41,6 @@ import me.egg82.antivpn.messaging.handler.MessagingHandlerImpl; import me.egg82.antivpn.services.GameAnalyticsErrorHandler; import me.egg82.antivpn.storage.StorageService; -import me.egg82.antivpn.utils.ExceptionUtil; import me.egg82.antivpn.utils.ValidationUtil; import net.engio.mbassy.bus.MBassador; import net.md_5.bungee.api.ChatColor; @@ -159,7 +158,7 @@ public void onDisable() { try { VPNAPIProvider.getInstance().runUpdateTask().join(); } catch (CancellationException | CompletionException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } for (EventHolder eventHolder : eventHolders) { @@ -356,7 +355,7 @@ private void loadTasks() { try { VPNAPIProvider.getInstance().runUpdateTask().join(); } catch (CancellationException | CompletionException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } }, 1L, 1L, TimeUnit.SECONDS).getId()); } diff --git a/Bungee/src/main/java/me/egg82/antivpn/commands/internal/CheckCommand.java b/Bungee/src/main/java/me/egg82/antivpn/commands/internal/CheckCommand.java index 9e4a080f..1e57d2aa 100644 --- a/Bungee/src/main/java/me/egg82/antivpn/commands/internal/CheckCommand.java +++ b/Bungee/src/main/java/me/egg82/antivpn/commands/internal/CheckCommand.java @@ -6,7 +6,6 @@ import me.egg82.antivpn.api.model.ip.IPManager; import me.egg82.antivpn.api.model.player.PlayerManager; import me.egg82.antivpn.locale.MessageKey; -import me.egg82.antivpn.utils.ExceptionUtil; import me.egg82.antivpn.utils.ValidationUtil; import org.jetbrains.annotations.NotNull; @@ -35,7 +34,7 @@ private void checkIp(@NotNull String ip) { if (ipManager.getCurrentAlgorithmMethod() == AlgorithmMethod.CONSESNSUS) { ipManager.consensus(ip, true).whenCompleteAsync((val, ex) -> { if (ex != null) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); issuer.sendError(MessageKey.ERROR__INTERNAL); return; } @@ -44,7 +43,7 @@ private void checkIp(@NotNull String ip) { } else { ipManager.cascade(ip, true).whenCompleteAsync((val, ex) -> { if (ex != null) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); issuer.sendError(MessageKey.ERROR__INTERNAL); return; } @@ -60,7 +59,7 @@ private void checkPlayer(@NotNull String playerName) { .thenComposeAsync(uuid -> playerManager.checkMcLeaks(uuid, true)) .whenCompleteAsync((val, ex) -> { if (ex != null) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); issuer.sendError(MessageKey.ERROR__INTERNAL); return; } diff --git a/Bungee/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java b/Bungee/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java index 55bce17d..53d85458 100644 --- a/Bungee/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java +++ b/Bungee/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java @@ -9,7 +9,6 @@ import me.egg82.antivpn.config.ConfigUtil; import me.egg82.antivpn.locale.MessageKey; import me.egg82.antivpn.utils.DNSUtil; -import me.egg82.antivpn.utils.ExceptionUtil; import org.jetbrains.annotations.NotNull; import java.text.DecimalFormat; @@ -103,7 +102,7 @@ private void test(@NotNull Source source, @NotNull String error += 1; continue; } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); if (!(ex.getCause() instanceof APIException) || !((APIException) ex.getCause()).isHard()) { error += 1; } diff --git a/Bungee/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java b/Bungee/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java index c365bb59..9836e40f 100644 --- a/Bungee/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java +++ b/Bungee/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java @@ -8,7 +8,6 @@ import me.egg82.antivpn.config.CachedConfig; import me.egg82.antivpn.config.ConfigUtil; import me.egg82.antivpn.locale.MessageKey; -import me.egg82.antivpn.utils.ExceptionUtil; import org.jetbrains.annotations.NotNull; import java.util.*; @@ -43,7 +42,7 @@ public void run() { futures.add(source.getResult(ip).whenCompleteAsync((val, ex) -> { if (ex != null) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); latch.countDown(); return; } diff --git a/Bungee/src/main/java/me/egg82/antivpn/events/PlayerEvents.java b/Bungee/src/main/java/me/egg82/antivpn/events/PlayerEvents.java index 2b44f941..134ee5b6 100644 --- a/Bungee/src/main/java/me/egg82/antivpn/events/PlayerEvents.java +++ b/Bungee/src/main/java/me/egg82/antivpn/events/PlayerEvents.java @@ -13,7 +13,6 @@ import me.egg82.antivpn.hooks.LuckPermsHook; import me.egg82.antivpn.services.lookup.PlayerInfo; import me.egg82.antivpn.services.lookup.PlayerLookup; -import me.egg82.antivpn.utils.ExceptionUtil; import me.egg82.antivpn.utils.ValidationUtil; import net.md_5.bungee.api.ProxyServer; import net.md_5.bungee.api.chat.TextComponent; @@ -88,7 +87,7 @@ private void checkPerms(@NotNull PreLoginEvent event) { Thread.currentThread().interrupt(); uuid = null; } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); uuid = null; } @@ -102,7 +101,7 @@ private void checkPerms(@NotNull PreLoginEvent event) { Thread.currentThread().interrupt(); val = null; } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); val = null; } checkPermsPlayer(event, uuid, Boolean.TRUE.equals(val)); @@ -213,7 +212,7 @@ private void cacheData(@NotNull String ip, @NotNull UUID uuid, @NotNull CachedCo } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } else { try { @@ -221,7 +220,7 @@ private void cacheData(@NotNull String ip, @NotNull UUID uuid, @NotNull CachedCo } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } } @@ -234,7 +233,7 @@ private void cacheData(@NotNull String ip, @NotNull UUID uuid, @NotNull CachedCo } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } } @@ -321,7 +320,7 @@ private boolean isVpn(@NotNull String ip, @NotNull String name, @NotNull CachedC Thread.currentThread().interrupt(); isVPN = false; } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); isVPN = false; } } else { @@ -331,7 +330,7 @@ private boolean isVpn(@NotNull String ip, @NotNull String name, @NotNull CachedC Thread.currentThread().interrupt(); isVPN = false; } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); isVPN = false; } } @@ -366,7 +365,7 @@ private boolean isMcLeaks(@NotNull String name, @NotNull UUID uuid, @NotNull Cac Thread.currentThread().interrupt(); isMCLeaks = false; } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); isMCLeaks = false; } diff --git a/Bungee/src/main/java/me/egg82/antivpn/hooks/PlayerAnalyticsHook.java b/Bungee/src/main/java/me/egg82/antivpn/hooks/PlayerAnalyticsHook.java index 5b0ff645..8a35e5da 100644 --- a/Bungee/src/main/java/me/egg82/antivpn/hooks/PlayerAnalyticsHook.java +++ b/Bungee/src/main/java/me/egg82/antivpn/hooks/PlayerAnalyticsHook.java @@ -15,7 +15,6 @@ import me.egg82.antivpn.api.model.ip.IPManager; import me.egg82.antivpn.api.model.player.PlayerManager; import me.egg82.antivpn.config.ConfigUtil; -import me.egg82.antivpn.utils.ExceptionUtil; import net.md_5.bungee.api.ProxyServer; import net.md_5.bungee.api.connection.ProxiedPlayer; import org.jetbrains.annotations.NotNull; @@ -109,7 +108,7 @@ public long getVpns() { } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } else { try { @@ -119,7 +118,7 @@ public long getVpns() { } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } latch.countDown(); @@ -169,7 +168,7 @@ public long getMcLeaks() { } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } latch.countDown(); }); @@ -219,7 +218,7 @@ public boolean getUsingVpn(@NotNull UUID playerID) { } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } else { try { @@ -227,7 +226,7 @@ public boolean getUsingVpn(@NotNull UUID playerID) { } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } @@ -249,7 +248,7 @@ public boolean getMcLeaks(@NotNull UUID playerId) { } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } return false; diff --git a/Paper/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java b/Paper/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java index dcb513d7..e5229c5e 100644 --- a/Paper/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java +++ b/Paper/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java @@ -116,7 +116,7 @@ private void test(@NotNull Source source, @NotNull String error += 1; continue; } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); if (!(ex.getCause() instanceof APIException) || !((APIException) ex.getCause()).isHard()) { error += 1; } diff --git a/Paper/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java b/Paper/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java index 29235905..ad062141 100644 --- a/Paper/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java +++ b/Paper/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java @@ -45,7 +45,7 @@ public void run() { futures.add(source.getResult(ip).whenCompleteAsync((val, ex) -> { if (ex != null) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); latch.countDown(); return; } diff --git a/Spigot/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java b/Spigot/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java index 9fcd7472..3268e9bb 100644 --- a/Spigot/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java +++ b/Spigot/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java @@ -116,7 +116,7 @@ private void test(@NotNull Source source, @NotNull String error += 1; continue; } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); if (!(ex.getCause() instanceof APIException) || !((APIException) ex.getCause()).isHard()) { error += 1; } diff --git a/Spigot/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java b/Spigot/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java index 5b3e0502..19480e1e 100644 --- a/Spigot/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java +++ b/Spigot/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java @@ -45,7 +45,7 @@ public void run() { futures.add(source.getResult(ip).whenCompleteAsync((val, ex) -> { if (ex != null) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); latch.countDown(); return; } diff --git a/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java b/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java index 4fbddcec..15c842d9 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java +++ b/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java @@ -42,7 +42,6 @@ import me.egg82.antivpn.messaging.handler.MessagingHandlerImpl; import me.egg82.antivpn.services.GameAnalyticsErrorHandler; import me.egg82.antivpn.storage.StorageService; -import me.egg82.antivpn.utils.ExceptionUtil; import me.egg82.antivpn.utils.ValidationUtil; import net.engio.mbassy.bus.MBassador; import net.kyori.text.format.TextColor; @@ -135,7 +134,7 @@ public void onDisable() { try { VPNAPIProvider.getInstance().runUpdateTask().join(); } catch (CancellationException | CompletionException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } for (EventHolder eventHolder : eventHolders) { @@ -337,7 +336,7 @@ private void loadTasks() { try { VPNAPIProvider.getInstance().runUpdateTask().join(); } catch (CancellationException | CompletionException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } }).delay(1L, TimeUnit.SECONDS).repeat(1L, TimeUnit.SECONDS).schedule()); } diff --git a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/CheckCommand.java b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/CheckCommand.java index 5ee5ef6b..d9f1f9a1 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/CheckCommand.java +++ b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/CheckCommand.java @@ -7,7 +7,6 @@ import me.egg82.antivpn.api.model.ip.IPManager; import me.egg82.antivpn.api.model.player.PlayerManager; import me.egg82.antivpn.locale.MessageKey; -import me.egg82.antivpn.utils.ExceptionUtil; import me.egg82.antivpn.utils.ValidationUtil; import org.jetbrains.annotations.NotNull; @@ -36,7 +35,7 @@ private void checkIp(@NotNull String ip) { if (ipManager.getCurrentAlgorithmMethod() == AlgorithmMethod.CONSESNSUS) { ipManager.consensus(ip, true).whenCompleteAsync((val, ex) -> { if (ex != null) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); issuer.sendError(MessageKey.ERROR__INTERNAL); return; } @@ -45,7 +44,7 @@ private void checkIp(@NotNull String ip) { } else { ipManager.cascade(ip, true).whenCompleteAsync((val, ex) -> { if (ex != null) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); issuer.sendError(MessageKey.ERROR__INTERNAL); return; } @@ -61,7 +60,7 @@ private void checkPlayer(@NotNull String playerName) { .thenComposeAsync(uuid -> playerManager.checkMcLeaks(uuid, true)) .whenCompleteAsync((val, ex) -> { if (ex != null) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); issuer.sendError(MessageKey.ERROR__INTERNAL); return; } diff --git a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java index b65afaad..bf581cdb 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java +++ b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java @@ -10,7 +10,6 @@ import me.egg82.antivpn.config.ConfigUtil; import me.egg82.antivpn.locale.MessageKey; import me.egg82.antivpn.utils.DNSUtil; -import me.egg82.antivpn.utils.ExceptionUtil; import org.jetbrains.annotations.NotNull; import java.text.DecimalFormat; @@ -104,7 +103,7 @@ private void test(@NotNull Source source, @NotNull String error += 1; continue; } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); if (!(ex.getCause() instanceof APIException) || !((APIException) ex.getCause()).isHard()) { error += 1; } diff --git a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java index 67c64247..16bec5a8 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java +++ b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java @@ -9,7 +9,6 @@ import me.egg82.antivpn.config.CachedConfig; import me.egg82.antivpn.config.ConfigUtil; import me.egg82.antivpn.locale.MessageKey; -import me.egg82.antivpn.utils.ExceptionUtil; import org.jetbrains.annotations.NotNull; import java.util.*; @@ -44,7 +43,7 @@ public void run() { futures.add(source.getResult(ip).whenCompleteAsync((val, ex) -> { if (ex != null) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); latch.countDown(); return; } diff --git a/Velocity/src/main/java/me/egg82/antivpn/events/PlayerEvents.java b/Velocity/src/main/java/me/egg82/antivpn/events/PlayerEvents.java index aa394caf..2ea557a8 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/events/PlayerEvents.java +++ b/Velocity/src/main/java/me/egg82/antivpn/events/PlayerEvents.java @@ -17,7 +17,6 @@ import me.egg82.antivpn.hooks.LuckPermsHook; import me.egg82.antivpn.services.lookup.PlayerInfo; import me.egg82.antivpn.services.lookup.PlayerLookup; -import me.egg82.antivpn.utils.ExceptionUtil; import me.egg82.antivpn.utils.ValidationUtil; import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; import ninja.egg82.events.VelocityEvents; @@ -83,7 +82,7 @@ private void checkPerms(@NotNull PreLoginEvent event) { Thread.currentThread().interrupt(); uuid = null; } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); uuid = null; } @@ -97,7 +96,7 @@ private void checkPerms(@NotNull PreLoginEvent event) { Thread.currentThread().interrupt(); val = null; } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); val = null; } checkPermsPlayer(event, uuid, Boolean.TRUE.equals(val)); @@ -151,7 +150,7 @@ private void checkPermsPlayer(@NotNull PreLoginEvent event, @NotNull UUID uuid, try { proxy.getCommandManager().executeImmediatelyAsync(proxy.getConsoleCommandSource(), command).join(); } catch (CancellationException | CompletionException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } String kickMessage = ipManager.getVpnKickMessage(event.getUsername(), uuid, ip); @@ -209,7 +208,7 @@ private void cacheData(@NotNull String ip, @NotNull UUID uuid, @NotNull CachedCo } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } else { try { @@ -217,7 +216,7 @@ private void cacheData(@NotNull String ip, @NotNull UUID uuid, @NotNull CachedCo } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } } @@ -230,7 +229,7 @@ private void cacheData(@NotNull String ip, @NotNull UUID uuid, @NotNull CachedCo } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } } @@ -317,7 +316,7 @@ private boolean isVpn(@NotNull String ip, @NotNull String name, @NotNull CachedC Thread.currentThread().interrupt(); isVPN = false; } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); isVPN = false; } } else { @@ -327,7 +326,7 @@ private boolean isVpn(@NotNull String ip, @NotNull String name, @NotNull CachedC Thread.currentThread().interrupt(); isVPN = false; } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); isVPN = false; } } @@ -362,7 +361,7 @@ private boolean isMcLeaks(@NotNull String name, @NotNull UUID uuid, @NotNull Cac Thread.currentThread().interrupt(); isMCLeaks = false; } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); isMCLeaks = false; } diff --git a/Velocity/src/main/java/me/egg82/antivpn/hooks/PlayerAnalyticsHook.java b/Velocity/src/main/java/me/egg82/antivpn/hooks/PlayerAnalyticsHook.java index c40e044f..ec503ce8 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/hooks/PlayerAnalyticsHook.java +++ b/Velocity/src/main/java/me/egg82/antivpn/hooks/PlayerAnalyticsHook.java @@ -17,7 +17,6 @@ import me.egg82.antivpn.api.model.ip.IPManager; import me.egg82.antivpn.api.model.player.PlayerManager; import me.egg82.antivpn.config.ConfigUtil; -import me.egg82.antivpn.utils.ExceptionUtil; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import org.slf4j.Logger; @@ -113,7 +112,7 @@ public long getVpns() { } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } else { try { @@ -123,7 +122,7 @@ public long getVpns() { } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } latch.countDown(); @@ -173,7 +172,7 @@ public long getMcLeaks() { } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } latch.countDown(); }); @@ -223,7 +222,7 @@ public boolean getUsingVpn(@NotNull UUID playerID) { } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } else { try { @@ -231,7 +230,7 @@ public boolean getUsingVpn(@NotNull UUID playerID) { } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } @@ -253,7 +252,7 @@ public boolean getMcLeaks(@NotNull UUID playerId) { } catch (InterruptedException ignored) { Thread.currentThread().interrupt(); } catch (ExecutionException | CancellationException ex) { - ExceptionUtil.handleException(ex, logger); + logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } return false; From b3e598e86bc8b117fad250657f6d15ced04d097c Mon Sep 17 00:00:00 2001 From: Andrew Baker Date: Fri, 16 Jul 2021 21:39:32 -0700 Subject: [PATCH 03/14] Added comment regarding DepDownloader --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 7597901f..d28c2d75 100644 --- a/pom.xml +++ b/pom.xml @@ -56,7 +56,7 @@ 1.4 0.11.7 3.27.0-GA - 2.2.16 + 2.2.16 0.5.1-SNAPSHOT 5.4.1330 From 19099db251583faa076d82fc4177d8615774a61c Mon Sep 17 00:00:00 2001 From: Andrew Baker Date: Wed, 21 Jul 2021 13:30:44 -0700 Subject: [PATCH 04/14] Disable incomplete modules --- pom.xml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pom.xml b/pom.xml index d28c2d75..c8c7999f 100644 --- a/pom.xml +++ b/pom.xml @@ -191,8 +191,10 @@ API Common Paper + From 5c0cc93057499f4eead671445cc212cfb204eb93 Mon Sep 17 00:00:00 2001 From: Andrew Baker Date: Tue, 10 Aug 2021 10:39:06 -0700 Subject: [PATCH 05/14] Load all modules --- pom.xml | 2 -- 1 file changed, 2 deletions(-) diff --git a/pom.xml b/pom.xml index 7b6525c6..28c06e85 100644 --- a/pom.xml +++ b/pom.xml @@ -191,10 +191,8 @@ API Common Paper - From b96e8c3e49f76e0d363eb1097abdc51253a4f46b Mon Sep 17 00:00:00 2001 From: Andrew Baker Date: Tue, 10 Aug 2021 11:38:38 -0700 Subject: [PATCH 06/14] Add ServiceLocator dependency --- Velocity/pom.xml | 5 +++++ pom.xml | 1 + 2 files changed, 6 insertions(+) diff --git a/Velocity/pom.xml b/Velocity/pom.xml index db9fe2b5..8c72db2f 100644 --- a/Velocity/pom.xml +++ b/Velocity/pom.xml @@ -292,6 +292,11 @@ dep-downloader ${depdownloader.version} + + ninja.egg82 + service-locator + ${servicelocator.version} + me.lucko jar-relocator diff --git a/pom.xml b/pom.xml index 28c06e85..9e388324 100644 --- a/pom.xml +++ b/pom.xml @@ -57,6 +57,7 @@ 0.11.7 3.27.0-GA 2.2.16 + 1.0.2 0.5.1-SNAPSHOT 5.4.1330 From ead067bc05ae1281c996102af548daf1955addd9 Mon Sep 17 00:00:00 2001 From: Andrew Baker Date: Tue, 10 Aug 2021 11:49:29 -0700 Subject: [PATCH 07/14] Update Velocity dependency to 3.0.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 9e388324..bd2b3859 100644 --- a/pom.xml +++ b/pom.xml @@ -20,7 +20,7 @@ 1.16.5-R0.1-SNAPSHOT 1.16.5-R0.1-SNAPSHOT 1.16-R0.4-SNAPSHOT - 1.1.4 + 3.0.0 2.2.1 0.31.0 From 0f3ce6e0c703a3126803ef0a64cef70bdd2899e0 Mon Sep 17 00:00:00 2001 From: Andrew Baker Date: Tue, 10 Aug 2021 12:18:40 -0700 Subject: [PATCH 08/14] Begin fixing --- .../main/java/me/egg82/antivpn/AntiVPN.java | 54 ++++++++++--------- .../commands/internal/AbstractCommand.java | 5 +- .../me/egg82/antivpn/events/EventHolder.java | 6 ++- .../me/egg82/antivpn/events/PlayerEvents.java | 5 +- 4 files changed, 38 insertions(+), 32 deletions(-) diff --git a/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java b/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java index 15c842d9..16666dce 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java +++ b/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java @@ -34,6 +34,7 @@ import me.egg82.antivpn.hooks.PlayerAnalyticsHook; import me.egg82.antivpn.hooks.PluginHook; import me.egg82.antivpn.locale.LanguageFileUtil; +import me.egg82.antivpn.locale.LocalizedCommandSender; import me.egg82.antivpn.locale.MessageKey; import me.egg82.antivpn.locale.PluginMessageFormatter; import me.egg82.antivpn.messaging.MessagingService; @@ -44,8 +45,8 @@ import me.egg82.antivpn.storage.StorageService; import me.egg82.antivpn.utils.ValidationUtil; import net.engio.mbassy.bus.MBassador; -import net.kyori.text.format.TextColor; -import ninja.egg82.events.PriorityEventSubscriber; +import net.kyori.adventure.text.format.NamedTextColor; +import ninja.egg82.events.VelocityEventSubscriber; import ninja.egg82.service.ServiceLocator; import org.jetbrains.annotations.NotNull; import org.slf4j.Logger; @@ -69,14 +70,14 @@ public class AntiVPN { private VelocityCommandManager commandManager; private final List eventHolders = new ArrayList<>(); - private final List> events = new ArrayList<>(); + private final List> events = new ArrayList<>(); private final List tasks = new ArrayList<>(); private final Object plugin; private final ProxyServer proxy; private final PluginDescription description; - private CommandIssuer consoleCommandIssuer = null; + private LocalizedCommandSender consoleCommandIssuer = null; public AntiVPN(@NotNull Object plugin, @NotNull ProxyServer proxy, @NotNull PluginDescription description) { this.plugin = plugin; @@ -99,6 +100,7 @@ public void onEnable() { setChatColors(); + // TODO fix consoleCommandIssuer = commandManager.getCommandIssuer(proxy.getConsoleCommandSource()); loadServices(); @@ -113,8 +115,8 @@ public void onEnable() { numEvents += eventHolder.numEvents(); } - consoleCommandIssuer.sendInfo(MessageKey.GENERAL__ENABLED); - consoleCommandIssuer.sendInfo(MessageKey.GENERAL__LOAD, + consoleCommandIssuer.sendMessage(MessageKey.GENERAL__ENABLE_MESSAGE); + consoleCommandIssuer.sendMessage(MessageKey.GENERAL__LOAD_MESSAGE, "{version}", description.getVersion().get(), "{apiversion}", VPNAPIProvider.getInstance().getPluginMetadata().getApiVersion(), "{commands}", String.valueOf(commandManager.getRegisteredRootCommands().size()), @@ -141,7 +143,7 @@ public void onDisable() { eventHolder.cancel(); } eventHolders.clear(); - for (PriorityEventSubscriber event : events) { + for (VelocityEventSubscriber event : events) { event.cancel(); } events.clear(); @@ -149,7 +151,7 @@ public void onDisable() { unloadHooks(); unloadServices(); - consoleCommandIssuer.sendInfo(MessageKey.GENERAL__DISABLED); + consoleCommandIssuer.sendMessage(MessageKey.GENERAL__DISABLE_MESSAGE); GameAnalyticsErrorHandler.close(); } @@ -184,18 +186,18 @@ private void loadLanguages() { } private void setChatColors() { - commandManager.setFormat(MessageType.ERROR, TextColor.DARK_RED, TextColor.YELLOW, TextColor.AQUA, TextColor.WHITE); + commandManager.setFormat(MessageType.ERROR, NamedTextColor.DARK_RED, NamedTextColor.YELLOW, NamedTextColor.AQUA, NamedTextColor.WHITE); commandManager.setFormat( MessageType.INFO, - TextColor.WHITE, - TextColor.YELLOW, - TextColor.AQUA, - TextColor.GREEN, - TextColor.RED, - TextColor.GOLD, - TextColor.BLUE, - TextColor.GRAY, - TextColor.DARK_RED + NamedTextColor.WHITE, + NamedTextColor.YELLOW, + NamedTextColor.AQUA, + NamedTextColor.GREEN, + NamedTextColor.RED, + NamedTextColor.GOLD, + NamedTextColor.BLUE, + NamedTextColor.GRAY, + NamedTextColor.DARK_RED ); } @@ -223,7 +225,7 @@ private void loadServices() { cachedConfig.getCacheTime().getUnit() ); Platform platform = new VelocityPlatform(System.currentTimeMillis()); - PluginMetadata metadata = new VelocityPluginMetadata(proxy.getVersion().getVersion()); + VelocityPluginMetadata metadata = new VelocityPluginMetadata(proxy.getVersion().getVersion()); VPNAPI api = new VPNAPIImpl(platform, metadata, ipManager, playerManager, sourceManager, cachedConfig, new MBassador<>(new GenericPublicationErrorHandler())); APIUtil.setManagers(ipManager, playerManager, sourceManager); @@ -241,8 +243,8 @@ private void loadCommands() { }); commandManager.getCommandConditions().addCondition(String.class, "source", (c, exec, value) -> { - List> sources = VPNAPIProvider.getInstance().getSourceManager().getSources(); - for (Source source : sources) { + List> sources = VPNAPIProvider.getInstance().getSourceManager().getSources(); + for (Source source : sources) { if (source.getName().equalsIgnoreCase(value)) { return; } @@ -253,7 +255,7 @@ private void loadCommands() { commandManager.getCommandCompletions().registerCompletion("source", c -> { String lower = c.getInput().toLowerCase().replace(" ", "_"); - List> sources = VPNAPIProvider.getInstance().getSourceManager().getSources(); + List> sources = VPNAPIProvider.getInstance().getSourceManager().getSources(); Set retVal = new LinkedHashSet<>(); for (Source source : sources) { @@ -345,20 +347,20 @@ private void loadHooks() { PluginManager manager = proxy.getPluginManager(); if (manager.getPlugin("plan").isPresent()) { - consoleCommandIssuer.sendInfo(MessageKey.GENERAL__HOOK_ENABLE, "{plugin}", "Plan"); + consoleCommandIssuer.sendMessage(MessageKey.GENERAL__ENABLE_HOOK, "{plugin}", "Plan"); ServiceLocator.register(new PlayerAnalyticsHook(proxy)); } else { - consoleCommandIssuer.sendInfo(MessageKey.GENERAL__HOOK_DISABLE, "{plugin}", "Plan"); + consoleCommandIssuer.sendMessage(MessageKey.GENERAL__NO_HOOK, "{plugin}", "Plan"); } if (manager.getPlugin("luckperms").isPresent()) { - consoleCommandIssuer.sendInfo(MessageKey.GENERAL__HOOK_ENABLE, "{plugin}", "LuckPerms"); + consoleCommandIssuer.sendMessage(MessageKey.GENERAL__ENABLE_HOOK, "{plugin}", "LuckPerms"); if (ConfigUtil.getDebugOrFalse()) { consoleCommandIssuer.sendMessage("Running actions on pre-login."); } ServiceLocator.register(new LuckPermsHook(consoleCommandIssuer)); } else { - consoleCommandIssuer.sendInfo(MessageKey.GENERAL__HOOK_DISABLE, "{plugin}", "LuckPerms"); + consoleCommandIssuer.sendMessage(MessageKey.GENERAL__NO_HOOK, "{plugin}", "LuckPerms"); if (ConfigUtil.getDebugOrFalse()) { consoleCommandIssuer.sendMessage("Running actions on post-login."); } diff --git a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/AbstractCommand.java b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/AbstractCommand.java index 15f2d516..07532b78 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/AbstractCommand.java +++ b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/AbstractCommand.java @@ -2,6 +2,7 @@ import co.aikar.commands.CommandIssuer; import com.velocitypowered.api.proxy.ProxyServer; +import me.egg82.antivpn.locale.LocalizedCommandSender; import me.egg82.antivpn.services.lookup.PlayerInfo; import me.egg82.antivpn.services.lookup.PlayerLookup; import org.jetbrains.annotations.NotNull; @@ -15,9 +16,9 @@ public abstract class AbstractCommand implements Runnable { protected final Logger logger = LoggerFactory.getLogger(getClass()); protected final ProxyServer proxy; - protected final CommandIssuer issuer; + protected final LocalizedCommandSender issuer; - protected AbstractCommand(@NotNull ProxyServer proxy, @NotNull CommandIssuer issuer) { + protected AbstractCommand(@NotNull ProxyServer proxy, @NotNull LocalizedCommandSender issuer) { this.proxy = proxy; this.issuer = issuer; } diff --git a/Velocity/src/main/java/me/egg82/antivpn/events/EventHolder.java b/Velocity/src/main/java/me/egg82/antivpn/events/EventHolder.java index 0d16eff1..e51d5ea3 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/events/EventHolder.java +++ b/Velocity/src/main/java/me/egg82/antivpn/events/EventHolder.java @@ -1,7 +1,9 @@ package me.egg82.antivpn.events; import com.velocitypowered.api.event.PostOrder; +import com.velocitypowered.api.event.connection.PreLoginEvent; import ninja.egg82.events.PriorityEventSubscriber; +import ninja.egg82.events.VelocityEventSubscriber; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -11,12 +13,12 @@ public abstract class EventHolder { protected final Logger logger = LoggerFactory.getLogger(getClass()); - protected final List> events = new ArrayList<>(); + protected final List> events = new ArrayList<>(); public final int numEvents() { return events.size(); } public final void cancel() { - for (PriorityEventSubscriber event : events) { + for (VelocityEventSubscriber event : events) { event.cancel(); } } diff --git a/Velocity/src/main/java/me/egg82/antivpn/events/PlayerEvents.java b/Velocity/src/main/java/me/egg82/antivpn/events/PlayerEvents.java index 2ea557a8..d9eac555 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/events/PlayerEvents.java +++ b/Velocity/src/main/java/me/egg82/antivpn/events/PlayerEvents.java @@ -15,6 +15,7 @@ import me.egg82.antivpn.config.CachedConfig; import me.egg82.antivpn.config.ConfigUtil; import me.egg82.antivpn.hooks.LuckPermsHook; +import me.egg82.antivpn.locale.LocalizedCommandSender; import me.egg82.antivpn.services.lookup.PlayerInfo; import me.egg82.antivpn.services.lookup.PlayerLookup; import me.egg82.antivpn.utils.ValidationUtil; @@ -37,9 +38,9 @@ public class PlayerEvents extends EventHolder { private final ProxyServer proxy; - private final CommandIssuer console; + private final LocalizedCommandSender console; - public PlayerEvents(@NotNull Object plugin, @NotNull ProxyServer proxy, @NotNull CommandIssuer console) { + public PlayerEvents(@NotNull Object plugin, @NotNull ProxyServer proxy, @NotNull LocalizedCommandSender console) { this.proxy = proxy; this.console = console; From 8999756ff877ccf910dbf31f28589175b4f7ca5d Mon Sep 17 00:00:00 2001 From: Andrew Baker Date: Tue, 17 Aug 2021 12:51:53 -0700 Subject: [PATCH 09/14] Disable commands and fix up PlayerEvents --- .../egg82/antivpn/commands/AntiVPNCommand.java | 2 ++ .../antivpn/commands/internal/CheckCommand.java | 5 ++++- .../commands/internal/ImportCommand.java | 2 ++ .../antivpn/commands/internal/KickCommand.java | 2 ++ .../commands/internal/ReloadCommand.java | 2 ++ .../antivpn/commands/internal/ScoreCommand.java | 2 ++ .../antivpn/commands/internal/TestCommand.java | 2 ++ .../me/egg82/antivpn/events/PlayerEvents.java | 17 +++++++++-------- 8 files changed, 25 insertions(+), 9 deletions(-) diff --git a/Velocity/src/main/java/me/egg82/antivpn/commands/AntiVPNCommand.java b/Velocity/src/main/java/me/egg82/antivpn/commands/AntiVPNCommand.java index 58038658..065f6359 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/commands/AntiVPNCommand.java +++ b/Velocity/src/main/java/me/egg82/antivpn/commands/AntiVPNCommand.java @@ -24,6 +24,7 @@ public AntiVPNCommand(@NotNull ProxyServer proxy, @NotNull PluginDescription des this.console = console; } +/* @Subcommand("reload") @CommandPermission("avpn.admin") @Description("{@@description.reload}") @@ -80,6 +81,7 @@ public void onScore(@NotNull LocalizedCommandSender issuer, @NotNull @Conditions public void onCheck(@NotNull LocalizedCommandSender issuer, @NotNull String type) { new CheckCommand(proxy, issuer, type).run(); } +*/ @CatchUnknown @Default diff --git a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/CheckCommand.java b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/CheckCommand.java index d9f1f9a1..4ae7c3c1 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/CheckCommand.java +++ b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/CheckCommand.java @@ -1,3 +1,4 @@ +/* package me.egg82.antivpn.commands.internal; import co.aikar.commands.CommandIssuer; @@ -6,6 +7,7 @@ import me.egg82.antivpn.api.model.ip.AlgorithmMethod; import me.egg82.antivpn.api.model.ip.IPManager; import me.egg82.antivpn.api.model.player.PlayerManager; +import me.egg82.antivpn.locale.LocalizedCommandSender; import me.egg82.antivpn.locale.MessageKey; import me.egg82.antivpn.utils.ValidationUtil; import org.jetbrains.annotations.NotNull; @@ -13,7 +15,7 @@ public class CheckCommand extends AbstractCommand { private final String type; - public CheckCommand(@NotNull ProxyServer proxy, @NotNull CommandIssuer issuer, @NotNull String type) { + public CheckCommand(@NotNull ProxyServer proxy, @NotNull LocalizedCommandSender issuer, @NotNull String type) { super(proxy, issuer); this.type = type; } @@ -68,3 +70,4 @@ private void checkPlayer(@NotNull String playerName) { }); } } +*/ diff --git a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ImportCommand.java b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ImportCommand.java index 6d2f283b..1ae3e46d 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ImportCommand.java +++ b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ImportCommand.java @@ -1,3 +1,4 @@ +/* package me.egg82.antivpn.commands.internal; import co.aikar.commands.CommandIssuer; @@ -92,3 +93,4 @@ public void run() { issuer.sendInfo(MessageKey.IMPORT__END); } } +*/ diff --git a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/KickCommand.java b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/KickCommand.java index ccdd29a1..7e3f4f37 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/KickCommand.java +++ b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/KickCommand.java @@ -1,3 +1,4 @@ +/* package me.egg82.antivpn.commands.internal; import co.aikar.commands.CommandIssuer; @@ -93,3 +94,4 @@ public void run() { return host.getHostAddress(); } } +*/ diff --git a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ReloadCommand.java b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ReloadCommand.java index f6b79dd4..96ec11d8 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ReloadCommand.java +++ b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ReloadCommand.java @@ -1,3 +1,4 @@ +/* package me.egg82.antivpn.commands.internal; import co.aikar.commands.CommandIssuer; @@ -75,3 +76,4 @@ public void run() { issuer.sendInfo(MessageKey.RELOAD__END); } } +*/ diff --git a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java index bf581cdb..735cc459 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java +++ b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/ScoreCommand.java @@ -1,3 +1,4 @@ +/* package me.egg82.antivpn.commands.internal; import co.aikar.commands.CommandIssuer; @@ -121,3 +122,4 @@ private void test(@NotNull Source source, @NotNull String issuer.sendInfo(MessageKey.SCORE__SCORE, "{source}", source.getName(), "{type}", vpnName, "{percent}", format.format((good / ips.size()) * 100.0d)); } } +*/ diff --git a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java index 16bec5a8..a98c0064 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java +++ b/Velocity/src/main/java/me/egg82/antivpn/commands/internal/TestCommand.java @@ -1,3 +1,4 @@ +/* package me.egg82.antivpn.commands.internal; import co.aikar.commands.CommandIssuer; @@ -83,3 +84,4 @@ public void run() { issuer.sendInfo(MessageKey.TEST__END, "{ip}", ip); } } +*/ diff --git a/Velocity/src/main/java/me/egg82/antivpn/events/PlayerEvents.java b/Velocity/src/main/java/me/egg82/antivpn/events/PlayerEvents.java index d9eac555..6b5af7f2 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/events/PlayerEvents.java +++ b/Velocity/src/main/java/me/egg82/antivpn/events/PlayerEvents.java @@ -19,6 +19,7 @@ import me.egg82.antivpn.services.lookup.PlayerInfo; import me.egg82.antivpn.services.lookup.PlayerLookup; import me.egg82.antivpn.utils.ValidationUtil; +import net.kyori.adventure.text.Component; import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; import ninja.egg82.events.VelocityEvents; import ninja.egg82.service.ServiceLocator; @@ -154,9 +155,9 @@ private void checkPermsPlayer(@NotNull PreLoginEvent event, @NotNull UUID uuid, logger.error(ex.getClass().getName() + ": " + ex.getMessage(), ex); } } - String kickMessage = ipManager.getVpnKickMessage(event.getUsername(), uuid, ip); + Component kickMessage = ipManager.getVpnKickMessage(event.getUsername(), uuid, ip); if (kickMessage != null) { - event.setResult(PreLoginEvent.PreLoginComponentResult.denied(LegacyComponentSerializer.legacyAmpersand().deserialize(kickMessage))); + event.setResult(PreLoginEvent.PreLoginComponentResult.denied(kickMessage)); } } @@ -167,9 +168,9 @@ private void checkPermsPlayer(@NotNull PreLoginEvent event, @NotNull UUID uuid, for (String command : commands) { proxy.getCommandManager().executeImmediatelyAsync(proxy.getConsoleCommandSource(), command); } - String kickMessage = playerManager.getMcLeaksKickMessage(event.getUsername(), uuid, ip); + Component kickMessage = playerManager.getMcLeaksKickMessage(event.getUsername(), uuid, ip); if (kickMessage != null) { - event.setResult(PreLoginEvent.PreLoginComponentResult.denied(LegacyComponentSerializer.legacyAmpersand().deserialize(kickMessage))); + event.setResult(PreLoginEvent.PreLoginComponentResult.denied(kickMessage)); } } } @@ -284,9 +285,9 @@ private void checkPlayer(@NotNull PostLoginEvent event) { for (String command : commands) { proxy.getCommandManager().executeImmediatelyAsync(proxy.getConsoleCommandSource(), command); } - String kickMessage = ipManager.getVpnKickMessage(event.getPlayer().getUsername(), event.getPlayer().getUniqueId(), ip); + Component kickMessage = ipManager.getVpnKickMessage(event.getPlayer().getUsername(), event.getPlayer().getUniqueId(), ip); if (kickMessage != null) { - event.getPlayer().disconnect(LegacyComponentSerializer.legacyAmpersand().deserialize(kickMessage)); + event.getPlayer().disconnect(kickMessage); } } @@ -297,9 +298,9 @@ private void checkPlayer(@NotNull PostLoginEvent event) { for (String command : commands) { proxy.getCommandManager().executeImmediatelyAsync(proxy.getConsoleCommandSource(), command); } - String kickMessage = playerManager.getMcLeaksKickMessage(event.getPlayer().getUsername(), event.getPlayer().getUniqueId(), ip); + Component kickMessage = playerManager.getMcLeaksKickMessage(event.getPlayer().getUsername(), event.getPlayer().getUniqueId(), ip); if (kickMessage != null) { - event.getPlayer().disconnect(LegacyComponentSerializer.legacyAmpersand().deserialize(kickMessage)); + event.getPlayer().disconnect(kickMessage); } } } From 55a58d02e69859168ce787f23555d8ac850e2243 Mon Sep 17 00:00:00 2001 From: MelnCat Date: Wed, 1 Sep 2021 09:22:23 -0700 Subject: [PATCH 10/14] Fix main class --- .../java/me/egg82/antivpn/api/VPNAPIImpl.java | 3 +- Velocity/pom.xml | 2 +- .../main/java/me/egg82/antivpn/AntiVPN.java | 60 ++++++++++--------- .../api/platform/AbstractPluginMetadata.java | 10 ++++ .../me/egg82/antivpn/hooks/LuckPermsHook.java | 5 +- 5 files changed, 47 insertions(+), 33 deletions(-) create mode 100644 Velocity/src/main/java/me/egg82/antivpn/api/platform/AbstractPluginMetadata.java diff --git a/Common/src/main/java/me/egg82/antivpn/api/VPNAPIImpl.java b/Common/src/main/java/me/egg82/antivpn/api/VPNAPIImpl.java index 1df46bcf..5d1aac5b 100644 --- a/Common/src/main/java/me/egg82/antivpn/api/VPNAPIImpl.java +++ b/Common/src/main/java/me/egg82/antivpn/api/VPNAPIImpl.java @@ -5,6 +5,7 @@ import me.egg82.antivpn.api.model.player.AbstractPlayerManager; import me.egg82.antivpn.api.model.source.SourceManagerImpl; import me.egg82.antivpn.api.platform.Platform; +import me.egg82.antivpn.api.platform.PluginMetadata; import me.egg82.antivpn.config.ConfigUtil; import me.egg82.antivpn.utils.PacketUtil; import me.egg82.antivpn.api.platform.AbstractPluginMetadata; @@ -30,7 +31,7 @@ public class VPNAPIImpl implements VPNAPI { public VPNAPIImpl( @NotNull Platform platform, - @NotNull AbstractPluginMetadata pluginMetadata, + @NotNull PluginMetadata pluginMetadata, @NotNull AbstractIPManager ipManager, @NotNull AbstractPlayerManager playerManager, @NotNull SourceManagerImpl sourceManager, diff --git a/Velocity/pom.xml b/Velocity/pom.xml index 8c72db2f..d5c27ba8 100644 --- a/Velocity/pom.xml +++ b/Velocity/pom.xml @@ -328,7 +328,7 @@ co.aikar acf-velocity - ${acf.version} + 0.5.0-SNAPSHOT net.kyori diff --git a/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java b/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java index 16666dce..f31b2898 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java +++ b/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java @@ -1,6 +1,7 @@ package me.egg82.antivpn; import co.aikar.commands.*; +import co.aikar.locales.MessageKeyProvider; import com.google.common.collect.ImmutableList; import com.google.common.collect.SetMultimap; import com.velocitypowered.api.event.PostOrder; @@ -13,6 +14,7 @@ import me.egg82.antivpn.api.VPNAPI; import me.egg82.antivpn.api.VPNAPIImpl; import me.egg82.antivpn.api.VPNAPIProvider; +import me.egg82.antivpn.api.event.VPNEvent; import me.egg82.antivpn.api.event.api.APIDisableEventImpl; import me.egg82.antivpn.api.event.api.APILoadedEventImpl; import me.egg82.antivpn.api.model.ip.VelocityIPManager; @@ -33,19 +35,18 @@ import me.egg82.antivpn.hooks.LuckPermsHook; import me.egg82.antivpn.hooks.PlayerAnalyticsHook; import me.egg82.antivpn.hooks.PluginHook; -import me.egg82.antivpn.locale.LanguageFileUtil; -import me.egg82.antivpn.locale.LocalizedCommandSender; -import me.egg82.antivpn.locale.MessageKey; -import me.egg82.antivpn.locale.PluginMessageFormatter; +import me.egg82.antivpn.locale.*; import me.egg82.antivpn.messaging.MessagingService; import me.egg82.antivpn.messaging.ServerIDUtil; import me.egg82.antivpn.messaging.handler.MessagingHandler; import me.egg82.antivpn.messaging.handler.MessagingHandlerImpl; -import me.egg82.antivpn.services.GameAnalyticsErrorHandler; import me.egg82.antivpn.storage.StorageService; import me.egg82.antivpn.utils.ValidationUtil; import net.engio.mbassy.bus.MBassador; +import net.kyori.adventure.audience.Audience; +import net.kyori.adventure.text.Component; import net.kyori.adventure.text.format.NamedTextColor; +import net.kyori.event.SimpleEventBus; import ninja.egg82.events.VelocityEventSubscriber; import ninja.egg82.service.ServiceLocator; import org.jetbrains.annotations.NotNull; @@ -90,10 +91,6 @@ public void onLoad() { } public void onEnable() { - GameAnalyticsErrorHandler.open(ServerIDUtil.getId(new File( - new File(description.getSource().get().getParent().toFile(), description.getName().get()), - "stats-id.txt" - )), description.getVersion().get(), proxy.getVersion().getVersion()); commandManager = new VelocityCommandManager(proxy, plugin); commandManager.enableUnstableAPI("help"); @@ -101,7 +98,18 @@ public void onEnable() { setChatColors(); // TODO fix - consoleCommandIssuer = commandManager.getCommandIssuer(proxy.getConsoleCommandSource()); + VelocityCommandIssuer console = commandManager.getCommandIssuer(proxy.getConsoleCommandSource()); + consoleCommandIssuer = new AbstractLocalizedCommandSender(console, console.getIssuer(), LocaleUtil.getConsoleI18N()) { + @Override + public boolean isConsole() { + return true; + } + + @Override + public boolean isUser() { + return false; + } + }; loadServices(); loadLanguages(); @@ -153,7 +161,6 @@ public void onDisable() { consoleCommandIssuer.sendMessage(MessageKey.GENERAL__DISABLE_MESSAGE); - GameAnalyticsErrorHandler.close(); } private void loadLanguages() { @@ -163,13 +170,13 @@ private void loadLanguages() { try { for (Locale locale : Locale.getAvailableLocales()) { - Optional localeFile = LanguageFileUtil.getLanguage( + ResourceBundle localeFile = LanguageFileUtil.getLanguage( new File(description.getSource().get().getParent().toFile(), description.getName().get()), locale ); - if (localeFile.isPresent()) { + if (localeFile != null) { commandManager.addSupportedLanguage(locale); - loadYamlLanguageFile(locales, localeFile.get(), locale); + //loadYamlLanguageFile(locales, localeFile.get(), locale); } } } catch (IOException ex) { @@ -180,14 +187,12 @@ private void loadLanguages() { locales.setDefaultLocale(cachedConfig.getLanguage()); commandManager.usePerIssuerLocale(true); - commandManager.setFormat(MessageType.ERROR, new PluginMessageFormatter(commandManager, MessageKey.GENERAL__HEADER)); - commandManager.setFormat(MessageType.INFO, new PluginMessageFormatter(commandManager, MessageKey.GENERAL__HEADER)); setChatColors(); } private void setChatColors() { - commandManager.setFormat(MessageType.ERROR, NamedTextColor.DARK_RED, NamedTextColor.YELLOW, NamedTextColor.AQUA, NamedTextColor.WHITE); - commandManager.setFormat( + //commandManager.setFormat(MessageType.ERROR, NamedTextColor.DARK_RED, NamedTextColor.YELLOW, NamedTextColor.AQUA, NamedTextColor.WHITE); + /*commandManager.setFormat( MessageType.INFO, NamedTextColor.WHITE, NamedTextColor.YELLOW, @@ -198,7 +203,7 @@ private void setChatColors() { NamedTextColor.BLUE, NamedTextColor.GRAY, NamedTextColor.DARK_RED - ); + );*/ } private void loadServices() { @@ -226,13 +231,11 @@ private void loadServices() { ); Platform platform = new VelocityPlatform(System.currentTimeMillis()); VelocityPluginMetadata metadata = new VelocityPluginMetadata(proxy.getVersion().getVersion()); - VPNAPI api = new VPNAPIImpl(platform, metadata, ipManager, playerManager, sourceManager, cachedConfig, new MBassador<>(new GenericPublicationErrorHandler())); - - APIUtil.setManagers(ipManager, playerManager, sourceManager); + VPNAPI api = new VPNAPIImpl(platform, metadata, ipManager, playerManager, sourceManager, new SimpleEventBus<>(VPNEvent.class)); APIRegistrationUtil.register(api); - api.getEventBus().post(new APILoadedEventImpl(api)).now(); + api.getEventBus().post(new APILoadedEventImpl(api)); } private void loadCommands() { @@ -388,8 +391,8 @@ private void unloadHooks() { public void unloadServices() { VPNAPI api = VPNAPIProvider.getInstance(); - api.getEventBus().post(new APIDisableEventImpl(api)).now(); - api.getEventBus().shutdown(); + api.getEventBus().post(new APIDisableEventImpl(api)); + api.getEventBus().unregisterAll(); APIRegistrationUtil.deregister(); CachedConfig cachedConfig = ConfigUtil.getCachedConfig(); @@ -401,9 +404,6 @@ public void unloadServices() { } Set messagingHandlers = ServiceLocator.remove(MessagingHandler.class); - for (MessagingHandler handler : messagingHandlers) { - handler.cancel(); - } } public boolean loadYamlLanguageFile(@NotNull VelocityLocales locales, @NotNull File file, @NotNull Locale locale) throws IOException { @@ -417,7 +417,9 @@ private boolean loadLanguage(@NotNull VelocityLocales locales, @NotNull Commente for (Map.Entry kvp2 : kvp.getValue().childrenMap().entrySet()) { String value = kvp2.getValue().getString(); if (value != null && !value.isEmpty()) { - locales.addMessage(locale, MessageKey.of(kvp.getKey() + "." + kvp2.getKey()), value); + Map m = new HashMap<>(); + m.put(kvp.getKey() + "." + kvp2.getKey(), value); + locales.addMessageStrings(locale, m); loaded = true; } } diff --git a/Velocity/src/main/java/me/egg82/antivpn/api/platform/AbstractPluginMetadata.java b/Velocity/src/main/java/me/egg82/antivpn/api/platform/AbstractPluginMetadata.java new file mode 100644 index 00000000..84920c44 --- /dev/null +++ b/Velocity/src/main/java/me/egg82/antivpn/api/platform/AbstractPluginMetadata.java @@ -0,0 +1,10 @@ +package me.egg82.antivpn.api.platform; + +import org.jetbrains.annotations.NotNull; + +public abstract class AbstractPluginMetadata implements PluginMetadata { + private static final String API_VERSION = "${api.version}"; + + @Override + public @NotNull String getApiVersion() { return API_VERSION; } +} \ No newline at end of file diff --git a/Velocity/src/main/java/me/egg82/antivpn/hooks/LuckPermsHook.java b/Velocity/src/main/java/me/egg82/antivpn/hooks/LuckPermsHook.java index 856cc5df..5c4df8ad 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/hooks/LuckPermsHook.java +++ b/Velocity/src/main/java/me/egg82/antivpn/hooks/LuckPermsHook.java @@ -2,6 +2,7 @@ import co.aikar.commands.CommandIssuer; import me.egg82.antivpn.config.ConfigUtil; +import me.egg82.antivpn.locale.LocalizedCommandSender; import net.luckperms.api.LuckPermsProvider; import net.luckperms.api.context.ContextManager; import net.luckperms.api.context.ImmutableContextSet; @@ -13,9 +14,9 @@ import java.util.concurrent.CompletableFuture; public class LuckPermsHook implements PluginHook { - private final CommandIssuer console; + private final LocalizedCommandSender console; - public LuckPermsHook(@NotNull CommandIssuer console) { + public LuckPermsHook(@NotNull LocalizedCommandSender console) { this.console = console; } From 6695bd17f21f3c8a8cc89e4d48bdb73d3e64c309 Mon Sep 17 00:00:00 2001 From: Andrew Baker Date: Tue, 7 Sep 2021 19:27:07 -0700 Subject: [PATCH 11/14] Finish up maybe --- .../antivpn/api/model/player/PlayerManager.java | 2 +- Bungee/pom.xml | 2 +- .../api/model/player/BungeePlayerManager.java | 3 +-- Common/pom.xml | 10 ++++++++++ Paper/pom.xml | 2 +- .../api/model/player/BukkitPlayerManager.java | 3 +-- Spigot/pom.xml | 2 +- .../api/model/player/BukkitPlayerManager.java | 3 +-- Velocity/pom.xml | 16 ++++++++++++++-- .../src/main/java/me/egg82/antivpn/AntiVPN.java | 4 ++-- .../antivpn/api/model/ip/VelocityIPManager.java | 13 +++++++------ .../api/model/player/VelocityPlayerManager.java | 14 +++++++------- .../egg82/antivpn/utils/VelocityTailorUtil.java | 15 ++++++++++++--- pom.xml | 9 +++++---- 14 files changed, 64 insertions(+), 34 deletions(-) diff --git a/API/src/main/java/me/egg82/antivpn/api/model/player/PlayerManager.java b/API/src/main/java/me/egg82/antivpn/api/model/player/PlayerManager.java index f5cab223..fe567c41 100644 --- a/API/src/main/java/me/egg82/antivpn/api/model/player/PlayerManager.java +++ b/API/src/main/java/me/egg82/antivpn/api/model/player/PlayerManager.java @@ -357,7 +357,7 @@ default Component getMcLeaksKickMessage(@NotNull String playerName, @NotNull UUI * * @throws NullPointerException if playerName, playerUuid, or ip is null */ - @Nullable + @NotNull Component getMcLeaksKickMessage(@NotNull String playerName, @NotNull UUID playerUuid, @NotNull String ip); /** diff --git a/Bungee/pom.xml b/Bungee/pom.xml index 48ec43c6..f51330d9 100644 --- a/Bungee/pom.xml +++ b/Bungee/pom.xml @@ -288,7 +288,7 @@ ${cloud.version} - net.kyori + me.lucko adventure-platform-bungeecord ${adventure.bungeecord.version} diff --git a/Bungee/src/main/java/me/egg82/antivpn/api/model/player/BungeePlayerManager.java b/Bungee/src/main/java/me/egg82/antivpn/api/model/player/BungeePlayerManager.java index 09fa34d9..a6d6acc6 100644 --- a/Bungee/src/main/java/me/egg82/antivpn/api/model/player/BungeePlayerManager.java +++ b/Bungee/src/main/java/me/egg82/antivpn/api/model/player/BungeePlayerManager.java @@ -15,7 +15,6 @@ import net.md_5.bungee.api.chat.TextComponent; import net.md_5.bungee.api.connection.ProxiedPlayer; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import java.util.List; import java.util.UUID; @@ -90,7 +89,7 @@ public boolean kickForMcLeaks(@NotNull String playerName, @NotNull UUID playerUu } @Override - public @Nullable String getMcLeaksKickMessage(@NotNull String playerName, @NotNull UUID playerUuid, @NotNull String ip) { + public @NotNull String getMcLeaksKickMessage(@NotNull String playerName, @NotNull UUID playerUuid, @NotNull String ip) { CachedConfig cachedConfig = ConfigUtil.getCachedConfig(); if (!cachedConfig.getMCLeaksKickMessage().isEmpty()) { diff --git a/Common/pom.xml b/Common/pom.xml index 2f29b21d..b7e568a7 100644 --- a/Common/pom.xml +++ b/Common/pom.xml @@ -92,6 +92,10 @@ sponge https://repo.spongepowered.org/repository/maven-public/ + + wesjd-repo + https://nexus.wesjd.net/repository/thirdparty/ + @@ -205,6 +209,12 @@ provided + + me.gong + mcleaks-api + 1.9.5-SNAPSHOT + + org.jetbrains diff --git a/Paper/pom.xml b/Paper/pom.xml index 413893e3..93bcba80 100644 --- a/Paper/pom.xml +++ b/Paper/pom.xml @@ -253,7 +253,7 @@ ${commodore.version} - net.kyori + me.lucko adventure-platform-bukkit ${adventure.bukkit.version} diff --git a/Paper/src/main/java/me/egg82/antivpn/api/model/player/BukkitPlayerManager.java b/Paper/src/main/java/me/egg82/antivpn/api/model/player/BukkitPlayerManager.java index a06cc49a..5dec61b4 100644 --- a/Paper/src/main/java/me/egg82/antivpn/api/model/player/BukkitPlayerManager.java +++ b/Paper/src/main/java/me/egg82/antivpn/api/model/player/BukkitPlayerManager.java @@ -10,7 +10,6 @@ import me.egg82.antivpn.storage.StorageService; import me.egg82.antivpn.storage.models.PlayerModel; import me.egg82.antivpn.utils.TimeUtil; -import net.kyori.adventure.text.Component; import net.kyori.adventure.text.serializer.craftbukkit.BukkitComponentSerializer; import org.bukkit.Bukkit; import org.bukkit.plugin.Plugin; @@ -87,7 +86,7 @@ public boolean kickForMcLeaks(@NotNull String playerName, @NotNull UUID playerUu } @Override - public @Nullable Component getMcLeaksKickMessage(@NotNull String playerName, @NotNull UUID playerUuid, @NotNull String ip) { + public @NotNull String getMcLeaksKickMessage(@NotNull String playerName, @NotNull UUID playerUuid, @NotNull String ip) { CachedConfig cachedConfig = ConfigUtil.getCachedConfig(); if (!cachedConfig.getMCLeaksKickMessage().isEmpty()) { diff --git a/Spigot/pom.xml b/Spigot/pom.xml index 8af92cda..1b55d10f 100644 --- a/Spigot/pom.xml +++ b/Spigot/pom.xml @@ -297,7 +297,7 @@ ${commodore.version} - net.kyori + me.lucko adventure-platform-bukkit ${adventure.bukkit.version} diff --git a/Spigot/src/main/java/me/egg82/antivpn/api/model/player/BukkitPlayerManager.java b/Spigot/src/main/java/me/egg82/antivpn/api/model/player/BukkitPlayerManager.java index 961bffa7..f3fbad54 100644 --- a/Spigot/src/main/java/me/egg82/antivpn/api/model/player/BukkitPlayerManager.java +++ b/Spigot/src/main/java/me/egg82/antivpn/api/model/player/BukkitPlayerManager.java @@ -9,7 +9,6 @@ import me.egg82.antivpn.storage.StorageService; import me.egg82.antivpn.storage.models.PlayerModel; import me.egg82.antivpn.utils.TimeUtil; -import net.kyori.adventure.text.Component; import net.kyori.adventure.text.serializer.craftbukkit.BukkitComponentSerializer; import org.bukkit.Bukkit; import org.bukkit.plugin.Plugin; @@ -81,7 +80,7 @@ public boolean kickForMcLeaks(@NotNull String playerName, @NotNull UUID playerUu } @Override - public @Nullable Component getMcLeaksKickMessage(@NotNull String playerName, @NotNull UUID playerUuid, @NotNull String ip) { + public @NotNull String getMcLeaksKickMessage(@NotNull String playerName, @NotNull UUID playerUuid, @NotNull String ip) { CachedConfig cachedConfig = ConfigUtil.getCachedConfig(); if (!cachedConfig.getMCLeaksKickMessage().isEmpty()) { diff --git a/Velocity/pom.xml b/Velocity/pom.xml index d5c27ba8..00668beb 100644 --- a/Velocity/pom.xml +++ b/Velocity/pom.xml @@ -250,7 +250,10 @@ CodeMC https://repo.codemc.org/repository/maven-public - + + wesjd-repo + https://nexus.wesjd.net/repository/thirdparty/ + jitpack.io https://jitpack.io @@ -468,7 +471,16 @@ mbassador ${mbassador.version} - + + me.gong + mcleaks-api + 1.9.5-SNAPSHOT + + + javax.inject + javax.inject + 1 + org.junit.jupiter diff --git a/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java b/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java index f31b2898..5a09f306 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java +++ b/Velocity/src/main/java/me/egg82/antivpn/AntiVPN.java @@ -221,12 +221,12 @@ private void loadServices() { CachedConfig cachedConfig = ConfigUtil.getCachedConfig(); - VelocityIPManager ipManager = new VelocityIPManager(proxy, sourceManager, cachedConfig.getCacheTime().getTime(), cachedConfig.getCacheTime().getUnit()); + VelocityIPManager ipManager = new VelocityIPManager(proxy, sourceManager, cachedConfig.getCacheTime(), cachedConfig.getCacheTime().getUnit()); VelocityPlayerManager playerManager = new VelocityPlayerManager( proxy, cachedConfig.getThreads(), cachedConfig.getMcLeaksKey(), - cachedConfig.getCacheTime().getTime(), + cachedConfig.getCacheTime(), cachedConfig.getCacheTime().getUnit() ); Platform platform = new VelocityPlatform(System.currentTimeMillis()); diff --git a/Velocity/src/main/java/me/egg82/antivpn/api/model/ip/VelocityIPManager.java b/Velocity/src/main/java/me/egg82/antivpn/api/model/ip/VelocityIPManager.java index 61022d63..fa278fd3 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/api/model/ip/VelocityIPManager.java +++ b/Velocity/src/main/java/me/egg82/antivpn/api/model/ip/VelocityIPManager.java @@ -6,7 +6,9 @@ import me.egg82.antivpn.api.model.source.SourceManager; import me.egg82.antivpn.config.CachedConfig; import me.egg82.antivpn.config.ConfigUtil; +import me.egg82.antivpn.utils.TimeUtil; import me.egg82.antivpn.utils.VelocityTailorUtil; +import net.kyori.adventure.text.Component; import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -19,8 +21,8 @@ public class VelocityIPManager extends AbstractIPManager { private final ProxyServer proxy; - public VelocityIPManager(@NotNull ProxyServer proxy, @NotNull SourceManager sourceManager, long cacheTime, TimeUnit cacheTimeUnit) { - super(sourceManager, cacheTime, cacheTimeUnit); + public VelocityIPManager(@NotNull ProxyServer proxy, @NotNull SourceManager sourceManager, TimeUtil.Time cacheTime, TimeUnit cacheTimeUnit) { + super(sourceManager, cacheTime); this.proxy = proxy; } @@ -39,18 +41,17 @@ public boolean kickForVpn(@NotNull String playerName, @NotNull UUID playerUuid, } if (!cachedConfig.getVPNKickMessage().isEmpty()) { p.get() - .disconnect(LegacyComponentSerializer.legacyAmpersand() - .deserialize(VelocityTailorUtil.tailorKickMessage(cachedConfig.getVPNKickMessage(), playerName, playerUuid, ip))); + .disconnect(VelocityTailorUtil.tailorKickMessage(Component.text(cachedConfig.getVPNKickMessage()), playerName, playerUuid, ip)); } return true; } @Override - public @Nullable String getVpnKickMessage(@NotNull String playerName, @NotNull UUID playerUuid, @NotNull String ip) { + public @Nullable Component getVpnKickMessage(@NotNull String playerName, @NotNull UUID playerUuid, @NotNull String ip) { CachedConfig cachedConfig = ConfigUtil.getCachedConfig(); if (!cachedConfig.getVPNKickMessage().isEmpty()) { - return VelocityTailorUtil.tailorKickMessage(cachedConfig.getVPNKickMessage(), playerName, playerUuid, ip); + return VelocityTailorUtil.tailorKickMessage(Component.text(cachedConfig.getVPNKickMessage()), playerName, playerUuid, ip); } return null; } diff --git a/Velocity/src/main/java/me/egg82/antivpn/api/model/player/VelocityPlayerManager.java b/Velocity/src/main/java/me/egg82/antivpn/api/model/player/VelocityPlayerManager.java index ce28ff3b..fd9b2f0e 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/api/model/player/VelocityPlayerManager.java +++ b/Velocity/src/main/java/me/egg82/antivpn/api/model/player/VelocityPlayerManager.java @@ -10,11 +10,12 @@ import me.egg82.antivpn.storage.StorageService; import me.egg82.antivpn.storage.models.PlayerModel; import me.egg82.antivpn.utils.PacketUtil; +import me.egg82.antivpn.utils.TimeUtil; import me.egg82.antivpn.utils.VelocityTailorUtil; import me.gong.mcleaks.MCLeaksAPI; +import net.kyori.adventure.text.Component; import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import java.util.List; import java.util.Optional; @@ -26,8 +27,8 @@ public class VelocityPlayerManager extends AbstractPlayerManager { private final ProxyServer proxy; private final MCLeaksAPI api; - public VelocityPlayerManager(@NotNull ProxyServer proxy, int webThreads, String mcleaksKey, long cacheTime, TimeUnit cacheTimeUnit) { - super(cacheTime, cacheTimeUnit); + public VelocityPlayerManager(@NotNull ProxyServer proxy, int webThreads, String mcleaksKey, TimeUtil.Time cacheTime, TimeUnit cacheTimeUnit) { + super(cacheTime, mcleaksKey); this.proxy = proxy; api = MCLeaksAPI.builder() @@ -87,18 +88,17 @@ public boolean kickForMcLeaks(@NotNull String playerName, @NotNull UUID playerUu } if (!cachedConfig.getMCLeaksKickMessage().isEmpty()) { p.get() - .disconnect(LegacyComponentSerializer.legacyAmpersand() - .deserialize(VelocityTailorUtil.tailorKickMessage(cachedConfig.getMCLeaksKickMessage(), playerName, playerUuid, ip))); + .disconnect(VelocityTailorUtil.tailorKickMessage(Component.text(cachedConfig.getVPNKickMessage()), playerName, playerUuid, ip)); } return true; } @Override - public @Nullable String getMcLeaksKickMessage(@NotNull String playerName, @NotNull UUID playerUuid, @NotNull String ip) { + public @NotNull Component getMcLeaksKickMessage(@NotNull String playerName, @NotNull UUID playerUuid, @NotNull String ip) { CachedConfig cachedConfig = ConfigUtil.getCachedConfig(); if (!cachedConfig.getMCLeaksKickMessage().isEmpty()) { - return VelocityTailorUtil.tailorKickMessage(cachedConfig.getMCLeaksKickMessage(), playerName, playerUuid, ip); + return VelocityTailorUtil.tailorKickMessage(Component.text(cachedConfig.getVPNKickMessage()), playerName, playerUuid, ip); } return null; } diff --git a/Velocity/src/main/java/me/egg82/antivpn/utils/VelocityTailorUtil.java b/Velocity/src/main/java/me/egg82/antivpn/utils/VelocityTailorUtil.java index ddaf86d5..6c026a94 100644 --- a/Velocity/src/main/java/me/egg82/antivpn/utils/VelocityTailorUtil.java +++ b/Velocity/src/main/java/me/egg82/antivpn/utils/VelocityTailorUtil.java @@ -1,5 +1,8 @@ package me.egg82.antivpn.utils; +import net.kyori.adventure.text.Component; +import net.kyori.adventure.text.TextComponent; +import net.kyori.adventure.text.TextReplacementConfig; import org.jetbrains.annotations.NotNull; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -28,8 +31,14 @@ private VelocityTailorUtil() { } return retVal; } - public static @NotNull String tailorKickMessage(@NotNull String message, @NotNull String name, @NotNull UUID uuid, @NotNull String ip) { - message = message.replace("%player%", name).replace("%uuid%", uuid.toString()).replace("%ip%", ip); - return message.replace("\\r", "").replace("\r", "").replace("\\n", "\n"); + public static @NotNull Component tailorKickMessage(@NotNull Component message, @NotNull String name, @NotNull UUID uuid, @NotNull String ip) { + message = message.asComponent() + .replaceText(TextReplacementConfig.builder().match("%player%").replacement(name).build()) + .replaceText(TextReplacementConfig.builder().match("%uuid%").replacement(uuid.toString()).build()) + .replaceText(TextReplacementConfig.builder().match("%ip%").replacement(ip).build()) + .replaceText(TextReplacementConfig.builder().match("\\r").replacement("").build()) + .replaceText(TextReplacementConfig.builder().match("\r").replacement("").build()) + .replaceText(TextReplacementConfig.builder().match("\\n").replacement("\n").build()); + return message; } } diff --git a/pom.xml b/pom.xml index bd2b3859..cacf707b 100644 --- a/pom.xml +++ b/pom.xml @@ -45,10 +45,11 @@ 1.5.0 1.10 - 4.7.0 - 4.0.0-SNAPSHOT - 4.0.0-SNAPSHOT - 4.1.0-SNAPSHOT + 4.8.1 + 4.8.1 + 4.8.1 + 4.2.0-SNAPSHOT 2.1.0 3.1.2 1.2.1 From 54dc28cb8ebbba0f4b064bfcbd354376cc940b65 Mon Sep 17 00:00:00 2001 From: Andrew Baker Date: Tue, 7 Sep 2021 19:38:39 -0700 Subject: [PATCH 12/14] Fix error --- Common/src/main/java/me/egg82/antivpn/api/VPNAPIImpl.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Common/src/main/java/me/egg82/antivpn/api/VPNAPIImpl.java b/Common/src/main/java/me/egg82/antivpn/api/VPNAPIImpl.java index 5d1aac5b..4d451606 100644 --- a/Common/src/main/java/me/egg82/antivpn/api/VPNAPIImpl.java +++ b/Common/src/main/java/me/egg82/antivpn/api/VPNAPIImpl.java @@ -8,7 +8,6 @@ import me.egg82.antivpn.api.platform.PluginMetadata; import me.egg82.antivpn.config.ConfigUtil; import me.egg82.antivpn.utils.PacketUtil; -import me.egg82.antivpn.api.platform.AbstractPluginMetadata; import net.kyori.event.EventBus; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; @@ -18,7 +17,7 @@ public class VPNAPIImpl implements VPNAPI { private final @NotNull Platform platform; - private final @NotNull AbstractPluginMetadata pluginMetadata; + private final @NotNull PluginMetadata pluginMetadata; private final @NotNull AbstractIPManager ipManager; private final @NotNull AbstractPlayerManager playerManager; @@ -70,7 +69,7 @@ public VPNAPIImpl( @Override @NotNull - public AbstractPluginMetadata getPluginMetadata() { return pluginMetadata; } + public PluginMetadata getPluginMetadata() { return pluginMetadata; } @Override @NotNull From a65e87f5ee87de34ad847c52f9977aaecea1f2d5 Mon Sep 17 00:00:00 2001 From: SmallSansSerif Date: Sun, 14 Nov 2021 11:13:15 -0500 Subject: [PATCH 13/14] Setup build actions --- .github/workflows | 1 + 1 file changed, 1 insertion(+) create mode 100644 .github/workflows diff --git a/.github/workflows b/.github/workflows new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/.github/workflows @@ -0,0 +1 @@ + From 12d9caeb1143273187e2e6ca0363fb0d727de4fe Mon Sep 17 00:00:00 2001 From: SmallSansSerif Date: Sun, 14 Nov 2021 11:15:31 -0500 Subject: [PATCH 14/14] Remove file oops --- .github/workflows | 1 - 1 file changed, 1 deletion(-) delete mode 100644 .github/workflows diff --git a/.github/workflows b/.github/workflows deleted file mode 100644 index 8b137891..00000000 --- a/.github/workflows +++ /dev/null @@ -1 +0,0 @@ -