Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 1 addition & 3 deletions .github/workflows/create-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,8 @@ jobs:
build-and-release:
name: Build and Release
runs-on: ubuntu-latest
env:
JAVA_TOOL_OPTIONS: -Djavax.net.ssl.trustStoreType=JKS -Djavax.net.ssl.trustStore=/etc/ssl/certs/java/cacerts -Djavax.net.ssl.trustStorePassword=changeit
steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v7
- name: Set up JDK 21
uses: actions/setup-java@v5
with:
Expand Down
7 changes: 2 additions & 5 deletions .github/workflows/gradle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,8 @@ jobs:
build:
name: Build and Test
runs-on: ubuntu-latest
env:
JAVA_TOOL_OPTIONS: -Djavax.net.ssl.trustStoreType=JKS -Djavax.net.ssl.trustStore=/etc/ssl/certs/java/cacerts -Djavax.net.ssl.trustStorePassword=changeit

steps:
- uses: actions/checkout@v5
- uses: actions/checkout@v7
- name: Set up JDK 21
uses: actions/setup-java@v5
with:
Expand All @@ -31,7 +28,7 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload AntiVPN
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v7
with:
name: AntiVPN-Universal
path: build/libs/AntiVPN-*-universal.jar
34 changes: 0 additions & 34 deletions .github/workflows/test-gradle.yml

This file was deleted.

5 changes: 5 additions & 0 deletions Bukkit/Plugin/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,16 @@ plugins {
id 'com.gradleup.shadow'
}

repositories {
maven { url 'https://jitpack.io' }
}

dependencies {
compileOnly 'org.spigotmc:spigot-api:1.20.2-R0.1-SNAPSHOT'
implementation project(':Common:Source')
implementation project(':Common:loader-utils')
implementation 'org.bstats:bstats-bukkit:2.2.1'
implementation 'com.github.TechnicallyCoded:FoliaLib:0.4.4'
testImplementation 'com.github.seeseemelk:MockBukkit-v1.20:3.84.0'
testImplementation 'com.github.ben-manes.caffeine:caffeine:3.1.8'
testImplementation 'org.mockito:mockito-core:5.11.0'
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@
import dev.brighten.antivpn.api.OfflinePlayer;
import dev.brighten.antivpn.api.VPNExecutor;
import dev.brighten.antivpn.utils.StringUtil;
import java.util.logging.Level;
import net.md_5.bungee.api.ChatColor;
import org.bukkit.Bukkit;
import org.bukkit.event.EventHandler;
Expand All @@ -32,7 +31,8 @@
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.event.player.PlayerLoginEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.scheduler.BukkitRunnable;

import java.util.logging.Level;

public class BukkitListener extends VPNExecutor implements Listener {

Expand All @@ -58,13 +58,9 @@ public void logException(String message, Throwable ex) {

@Override
public void runCommand(String command) {
new BukkitRunnable() {
public void run() {
Bukkit.getServer()
.dispatchCommand(
Bukkit.getConsoleSender(), ChatColor.translateAlternateColorCodes('&', command));
}
}.runTask(BukkitPlugin.pluginInstance.getPlugin());
BukkitPlugin.pluginInstance.getFoliaLib().getScheduler().runNextTick(task -> Bukkit.getServer()
.dispatchCommand(
Bukkit.getConsoleSender(), ChatColor.translateAlternateColorCodes('&', command)));
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@
import dev.brighten.antivpn.api.APIPlayer;
import org.bukkit.ChatColor;
import org.bukkit.entity.Player;
import org.bukkit.scheduler.BukkitRunnable;

public class BukkitPlayer extends APIPlayer {

Expand All @@ -41,11 +40,8 @@ public void sendMessage(String message) {

@Override
public void kickPlayer(String reason) {
new BukkitRunnable() {
public void run() {
player.kickPlayer(ChatColor.translateAlternateColorCodes('&', reason));
}
}.runTask(BukkitPlugin.pluginInstance.getPlugin());
BukkitPlugin.pluginInstance.getFoliaLib().getScheduler().runNextTick(task ->
player.kickPlayer(ChatColor.translateAlternateColorCodes('&', reason)));
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@

package dev.brighten.antivpn.bukkit;

import com.tcoded.folialib.FoliaLib;
import dev.brighten.antivpn.AntiVPN;
import dev.brighten.antivpn.bukkit.command.BukkitCommand;
import dev.brighten.antivpn.command.Command;
Expand All @@ -24,11 +25,6 @@
import dev.brighten.antivpn.database.mongo.MongoVPN;
import dev.brighten.antivpn.database.sql.MySqlVPN;
import dev.brighten.antivpn.loader.LoaderBootstrap;
import java.io.File;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import lombok.Getter;
import org.bstats.bukkit.Metrics;
import org.bstats.charts.SimplePie;
Expand All @@ -37,7 +33,12 @@
import org.bukkit.event.HandlerList;
import org.bukkit.plugin.SimplePluginManager;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.scheduler.BukkitRunnable;

import java.io.File;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

public class BukkitPlugin implements LoaderBootstrap {

Expand All @@ -46,13 +47,13 @@ public class BukkitPlugin implements LoaderBootstrap {
@Getter private File dataFolder;
private final List<org.bukkit.command.Command> registeredCommands = new ArrayList<>();
@Getter private final JavaPlugin plugin;
@Getter private final FoliaLib foliaLib;

public BukkitPlugin(JavaPlugin plugin) {
this.plugin = plugin;
foliaLib = new FoliaLib(plugin);
}

@Getter private PlayerCommandRunner playerCommandRunner;

@Override
public void onLoad(File dataFolder) {
this.dataFolder = dataFolder;
Expand All @@ -63,20 +64,11 @@ public void onEnable() {

Bukkit.getLogger().info("Starting AntiVPN services...");
AntiVPN.start(new BukkitListener(), new BukkitPlayerExecutor(), getDataFolder());

playerCommandRunner = new PlayerCommandRunner();
playerCommandRunner.start();

// Loading our bStats metrics to be pushed to https://bstats.org
if (AntiVPN.getInstance().getVpnConfig().metrics()) {
Bukkit.getLogger().info("Starting bStats metrics...");
Metrics metrics = new Metrics(plugin, 12615);
metrics.addCustomChart(new SimplePie("database_used", this::getDatabaseType));
new BukkitRunnable() {
public void run() {
AntiVPN.getInstance().checked = AntiVPN.getInstance().detections = 0;
}
}.runTaskTimerAsynchronously(plugin, 12000, 12000);
}

Bukkit.getLogger().info("Setting up and registering commands...");
Expand Down Expand Up @@ -121,7 +113,6 @@ public void run() {
public void onDisable() {
Bukkit.getLogger().info("Stopping plugin services...");
AntiVPN.getInstance().stop();
playerCommandRunner.stop();

Bukkit.getLogger().info("Unregistering commands...");
try {
Expand Down Expand Up @@ -149,14 +140,11 @@ public void onDisable() {
private String getDatabaseType() {
VPNDatabase database = AntiVPN.getInstance().getDatabase();

if (database instanceof MySqlVPN) {
return "MySQL";
} else if (database instanceof H2VPN) {
return "H2";
} else if (database instanceof MongoVPN) {
return "MongoDB";
} else {
return "No-Database";
}
return switch (database) {
case MySqlVPN ignored -> "MySQL";
case H2VPN ignored -> "H2";
case MongoVPN ignored -> "MongoDB";
case null, default -> "No-Database";
};
}
}

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,21 +1,18 @@
package dev.brighten.antivpn.bukkit;

import static org.junit.jupiter.api.Assertions.assertDoesNotThrow;
import static org.junit.jupiter.api.Assertions.assertFalse;
import static org.junit.jupiter.api.Assertions.assertTrue;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.when;

import be.seeseemelk.mockbukkit.MockBukkit;
import be.seeseemelk.mockbukkit.ServerMock;
import be.seeseemelk.mockbukkit.entity.PlayerMock;
import java.util.concurrent.CompletableFuture;
import java.util.concurrent.TimeUnit;
import org.bukkit.plugin.java.JavaPlugin;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;

import java.util.concurrent.CompletableFuture;
import java.util.concurrent.TimeUnit;

import static org.junit.jupiter.api.Assertions.*;

class BukkitPlayerTest {

private ServerMock server;
Expand All @@ -24,10 +21,8 @@ class BukkitPlayerTest {
void setUp() {
server = MockBukkit.mock();

BukkitPlugin pluginBootstrap = mock(BukkitPlugin.class);
JavaPlugin plugin = MockBukkit.createMockPlugin();
when(pluginBootstrap.getPlugin()).thenReturn(plugin);
BukkitPlugin.pluginInstance = pluginBootstrap;
BukkitPlugin.pluginInstance = new BukkitPlugin(plugin);
}

@AfterEach
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -64,14 +64,6 @@ public void onEnable() {
ProxyServer.getInstance().getLogger().info("Starting bStats metrics...");
Metrics metrics = new Metrics(getPlugin(), 12616);
metrics.addCustomChart(new SimplePie("database_used", this::getDatabaseType));
ProxyServer.getInstance()
.getScheduler()
.schedule(
getPlugin(),
() -> AntiVPN.getInstance().checked = AntiVPN.getInstance().detections = 0,
10,
10,
TimeUnit.MINUTES);
}

for (Command command : AntiVPN.getInstance().getCommands()) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,6 @@ public class AntiVPN {
private MessageHandler messageHandler;
private Configuration config;
private List<Command> commands = new ArrayList<>();
public int detections, checked;
private File pluginFolder;

public static void start(VPNExecutor executor, PlayerExecutor playerExecutor, File pluginFolder) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,6 @@ public CheckResult checkPlayer() {
if (checkResult.resultType().isShouldBlock()) {
AntiVPN.getInstance().getExecutor().handleKickingOfPlayer(checkResult, this);
}
AntiVPN.getInstance().checked++;
});
return new CheckResult(null, ResultType.UNKNOWN, false);
}
Expand Down
Loading
Loading