diff --git a/Bungee/src/main/java/dev/brighten/antivpn/bungee/BungeeListener.java b/Bungee/src/main/java/dev/brighten/antivpn/bungee/BungeeListener.java
index 7d94b55..ae5c12e 100644
--- a/Bungee/src/main/java/dev/brighten/antivpn/bungee/BungeeListener.java
+++ b/Bungee/src/main/java/dev/brighten/antivpn/bungee/BungeeListener.java
@@ -1,10 +1,7 @@
package dev.brighten.antivpn.bungee;
import dev.brighten.antivpn.AntiVPN;
-import dev.brighten.antivpn.api.APIPlayer;
-import dev.brighten.antivpn.api.CheckResult;
-import dev.brighten.antivpn.api.OfflinePlayer;
-import dev.brighten.antivpn.api.VPNExecutor;
+import dev.brighten.antivpn.api.*;
import dev.brighten.antivpn.utils.MiscUtils;
import dev.brighten.antivpn.utils.StringUtil;
import dev.brighten.antivpn.utils.Tuple;
@@ -79,7 +76,7 @@ public class BungeeListener extends VPNExecutor implements Listener {
CheckResult instantResult = player.checkPlayer(result -> {
if (!result.resultType().isShouldBlock()) return;
AntiVPN.getInstance().getExecutor().getToKick()
- .add(new Tuple<>(result, event.getConnection().getUniqueId()));
+ .add(new Tuple<>(result, player.getUuid()));
});
if (!instantResult.resultType().isShouldBlock()) {
diff --git a/Common/pom.xml b/Common/pom.xml
index 0854ccd..bed828a 100644
--- a/Common/pom.xml
+++ b/Common/pom.xml
@@ -57,6 +57,10 @@
dev.brighten.antivpn.depends.MavenLibraries
+
+ com.github.benmanes.caffeine
+ dev.brighten.antivpn.com.github.benmanes.caffeine
+
org.h2
dev.brighten.antivpn.shaded.org.h2
@@ -159,7 +163,7 @@
com.github.ben-manes.caffeine
caffeine
3.1.8
- compile
+ provided
diff --git a/Common/src/main/java/dev/brighten/antivpn/AntiVPN.java b/Common/src/main/java/dev/brighten/antivpn/AntiVPN.java
index 3eb00b2..6382ccb 100644
--- a/Common/src/main/java/dev/brighten/antivpn/AntiVPN.java
+++ b/Common/src/main/java/dev/brighten/antivpn/AntiVPN.java
@@ -47,6 +47,7 @@ import java.util.List;
@Relocate(from = "com.my\\" + "sql.jdbc", to = "dev.brighten.antivpn.shaded.com.mysql.jdbc")
}
)
+@MavenLibrary(groupId = "com.github.ben-manes.caffeine", artifactId = "caffeine", version = "3.1.8")
public class AntiVPN {
private static AntiVPN INSTANCE;
diff --git a/Common/src/main/java/dev/brighten/antivpn/utils/MiscUtils.java b/Common/src/main/java/dev/brighten/antivpn/utils/MiscUtils.java
index 50d7dea..77cde0b 100644
--- a/Common/src/main/java/dev/brighten/antivpn/utils/MiscUtils.java
+++ b/Common/src/main/java/dev/brighten/antivpn/utils/MiscUtils.java
@@ -73,8 +73,8 @@ public class MiscUtils {
JSONObject object = JsonReader
.readJsonFromUrl("https://funkemunky.cc/mojang/uuid?name=" + playername);
- if(object.has("id")) {
- return formatFromMojangUUID(object.getString("uuid"));
+ if(object.has("uuid")) {
+ return UUID.fromString(object.getString("uuid"));
}
} catch (IOException | JSONException e) {
AntiVPN.getInstance().getExecutor().logException("Error while looking up UUID for " + playername, e);
diff --git a/Sponge/pom.xml b/Sponge/pom.xml
index 98b6cc5..7af842c 100644
--- a/Sponge/pom.xml
+++ b/Sponge/pom.xml
@@ -13,8 +13,8 @@
- sponge
- https://repo.spongepowered.org/repository/maven-public/
+ spongepowered-repo
+ https://repo.spongepowered.org/maven/
@@ -22,7 +22,7 @@
org.spongepowered
spongeapi
- 8.1.0
+ 11.0.0
provided
@@ -31,12 +31,6 @@
1.9.4-DEV
provided
-
- org.slf4j
- slf4j-api
- 2.0.17
- compile
-
@@ -44,4 +38,41 @@
17
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.13.0
+
+ 17
+ 17
+ -XDignore.symbol.file
+
+
+
+ org.apache.maven.plugins
+ maven-shade-plugin
+ 3.6.0
+
+
+ package
+
+ shade
+
+
+
+
+
+
+
+
+
+
+ src/main/resources
+ true
+
+
+
+
\ No newline at end of file
diff --git a/Sponge/src/main/java/dev/brighten/antivpn/sponge/SpongeListener.java b/Sponge/src/main/java/dev/brighten/antivpn/sponge/SpongeListener.java
index 4519f61..c996343 100644
--- a/Sponge/src/main/java/dev/brighten/antivpn/sponge/SpongeListener.java
+++ b/Sponge/src/main/java/dev/brighten/antivpn/sponge/SpongeListener.java
@@ -19,10 +19,10 @@ public class SpongeListener extends VPNExecutor {
@Listener(order = Order.EARLY)
public void onJoin(ServerSideConnectionEvent.Auth event) {
AtomicReference player = new AtomicReference<>(AntiVPN.getInstance().getPlayerExecutor()
- .getPlayer(event.connection().profile().uuid())
+ .getPlayer(event.profile().uuid())
.orElse(new OfflinePlayer(
- event.connection().profile().uuid(),
- event.connection().profile().name().orElse("Unknown"),
+ event.profile().uuid(),
+ event.profile().name().orElse("Unknown"),
event.connection().address().getAddress()
)));
@@ -66,17 +66,17 @@ public class SpongeListener extends VPNExecutor {
@Override
public void registerListeners() {
- Sponge.eventManager().registerListeners(SpongePlugin.INSTANCE.getPlugin(), this);
+ Sponge.eventManager().registerListeners(SpongePlugin.getInstance().getContainer(), this);
}
@Override
public void log(Level level, String log, Object... objects) {
if (level.equals(Level.SEVERE)) {
- SpongePlugin.INSTANCE.getLogger().error(String.format(log, objects));
+ SpongePlugin.getInstance().getLogger().error(String.format(log, objects));
} else if (level.equals(Level.WARNING)) {
- SpongePlugin.INSTANCE.getLogger().warn(String.format(log, objects));
+ SpongePlugin.getInstance().getLogger().warn(String.format(log, objects));
} else {
- SpongePlugin.INSTANCE.getLogger().info(String.format(log, objects));
+ SpongePlugin.getInstance().getLogger().info(String.format(log, objects));
}
}
@@ -87,7 +87,7 @@ public class SpongeListener extends VPNExecutor {
@Override
public void logException(String message, Throwable ex) {
- SpongePlugin.INSTANCE.getLogger().error(message, ex);
+ SpongePlugin.getInstance().getLogger().error(message, ex);
}
@Override
diff --git a/Sponge/src/main/java/dev/brighten/antivpn/sponge/SpongePlugin.java b/Sponge/src/main/java/dev/brighten/antivpn/sponge/SpongePlugin.java
index 3b68391..ae9cbb3 100644
--- a/Sponge/src/main/java/dev/brighten/antivpn/sponge/SpongePlugin.java
+++ b/Sponge/src/main/java/dev/brighten/antivpn/sponge/SpongePlugin.java
@@ -4,49 +4,52 @@ import com.google.inject.Inject;
import dev.brighten.antivpn.AntiVPN;
import lombok.Getter;
import org.spongepowered.api.Server;
-import org.spongepowered.api.config.ConfigDir;
+import org.apache.logging.log4j.Logger;
+import org.spongepowered.api.Sponge;
+import org.spongepowered.api.config.ConfigManager;
import org.spongepowered.api.event.Listener;
-import org.spongepowered.api.event.lifecycle.StartedEngineEvent;
-import org.spongepowered.api.event.lifecycle.StoppingEngineEvent;
+import org.spongepowered.api.event.lifecycle.*;
import org.spongepowered.plugin.PluginContainer;
import org.spongepowered.plugin.builtin.jvm.Plugin;
import java.nio.file.Path;
-import org.slf4j.Logger;
@Plugin("kaurivpn")
@Getter
public class SpongePlugin {
- public static SpongePlugin INSTANCE;
-
//Plugin init
- @Inject
- private PluginContainer plugin;
+ private final PluginContainer container;
+ private final Logger logger;
@Inject
- private Logger logger;
-
- @Inject
- @ConfigDir(sharedRoot = false)
- private Path configDir;
+ SpongePlugin(final PluginContainer container, final Logger logger) {
+ this.container = container;
+ this.logger = logger;
+ }
@Listener
- public void onServerStart(final StartedEngineEvent event) {
- INSTANCE = this;
-
- logger.info("Starting AntiVPN services...");
+ public void onServerStart(final ConstructPluginEvent event) {
//Start AntiVPN
+ ConfigManager configManager = Sponge.game().configManager();
SpongeListener spongeListener = new SpongeListener();
- AntiVPN.start(spongeListener, new SpongePlayerExecutor(), configDir.toFile());
+ var path = configManager.sharedConfig(container).directory();
+
+ logger.info("Fucking path: " + path);
+
+ AntiVPN.start(spongeListener, new SpongePlayerExecutor(), path.toFile());
}
@Listener
- public void onServer(final StoppingEngineEvent> event) {
+ public void onServer(final StoppingEngineEvent event) {
AntiVPN.getInstance().getExecutor().disablePlugin();
}
+ public static SpongePlugin getInstance() {
+ return (SpongePlugin) Sponge.pluginManager().plugin("kaurivpn").get();
+ }
+
}
diff --git a/Sponge/src/main/resources/META-INF/sponge_plugins.json b/Sponge/src/main/resources/META-INF/sponge_plugins.json
new file mode 100644
index 0000000..be21d3b
--- /dev/null
+++ b/Sponge/src/main/resources/META-INF/sponge_plugins.json
@@ -0,0 +1,29 @@
+{
+ "loader": {
+ "name": "java_plain",
+ "version": "1.0"
+ },
+ "license": "All-Rights-Reserved",
+ "plugins": [
+ {
+ "id": "kaurivpn",
+ "name": "Kauri VPN",
+ "version": "${version}",
+ "entrypoint": "dev.brighten.antivpn.sponge.SpongePlugin",
+ "description": "A simple and fast antivpn plugin.",
+ "branding": {},
+ "links": {
+ },
+ "contributors": [
+ ],
+ "dependencies": [
+ {
+ "id": "spongeapi",
+ "version": "11.0.0",
+ "load-order": "after",
+ "optional": false
+ }
+ ]
+ }
+ ]
+}
diff --git a/Universal/pom.xml b/Universal/pom.xml
index fe9424e..0706963 100644
--- a/Universal/pom.xml
+++ b/Universal/pom.xml
@@ -42,12 +42,11 @@
${project.version}
compile
-
-
+
@@ -77,6 +76,10 @@
org.bstats
dev.brighten.antivpn.shaded.org.bstats
+
+ org.objectweb
+ dev.brighten.antivpn.shaded.org.objectweb
+