Update dependencies
- Updated checkstyle - Fixed new checkstyle issues - Added staged feature: reloading server.properties partially
This commit is contained in:
parent
d52e834f11
commit
466e2659e8
51 changed files with 228 additions and 93 deletions
|
|
@ -5,9 +5,9 @@ archivesBaseName = rootProject.name + '-Bukkit'
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation 'co.aikar:acf-paper:0.5.0-SNAPSHOT'
|
implementation 'co.aikar:acf-paper:0.5.0-SNAPSHOT'
|
||||||
implementation 'org.bstats:bstats-bukkit:1.7'
|
implementation 'org.bstats:bstats-bukkit:1.8'
|
||||||
implementation project(":Common")
|
implementation project(":Common")
|
||||||
compileOnly 'com.destroystokyo.paper:paper-api:1.16.1-R0.1-SNAPSHOT'
|
compileOnly 'com.destroystokyo.paper:paper-api:1.16.4-R0.1-SNAPSHOT'
|
||||||
}
|
}
|
||||||
|
|
||||||
processResources {
|
processResources {
|
||||||
|
|
|
||||||
|
|
@ -3,11 +3,9 @@ package net.frankheijden.serverutils.bukkit;
|
||||||
import co.aikar.commands.BukkitCommandCompletionContext;
|
import co.aikar.commands.BukkitCommandCompletionContext;
|
||||||
import co.aikar.commands.CommandCompletions;
|
import co.aikar.commands.CommandCompletions;
|
||||||
import co.aikar.commands.PaperCommandManager;
|
import co.aikar.commands.PaperCommandManager;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.commands.CommandPlugins;
|
import net.frankheijden.serverutils.bukkit.commands.CommandPlugins;
|
||||||
import net.frankheijden.serverutils.bukkit.commands.CommandServerUtils;
|
import net.frankheijden.serverutils.bukkit.commands.CommandServerUtils;
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitPlugin;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitPlugin;
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,6 @@ import co.aikar.commands.annotation.CommandPermission;
|
||||||
import co.aikar.commands.annotation.Default;
|
import co.aikar.commands.annotation.Default;
|
||||||
import co.aikar.commands.annotation.Description;
|
import co.aikar.commands.annotation.Description;
|
||||||
import co.aikar.commands.annotation.Subcommand;
|
import co.aikar.commands.annotation.Subcommand;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.managers.BukkitPluginManager;
|
import net.frankheijden.serverutils.bukkit.managers.BukkitPluginManager;
|
||||||
import net.frankheijden.serverutils.bukkit.utils.BukkitUtils;
|
import net.frankheijden.serverutils.bukkit.utils.BukkitUtils;
|
||||||
import net.frankheijden.serverutils.common.commands.Plugins;
|
import net.frankheijden.serverutils.common.commands.Plugins;
|
||||||
|
|
|
||||||
|
|
@ -13,16 +13,15 @@ import co.aikar.commands.annotation.Default;
|
||||||
import co.aikar.commands.annotation.Dependency;
|
import co.aikar.commands.annotation.Dependency;
|
||||||
import co.aikar.commands.annotation.Description;
|
import co.aikar.commands.annotation.Description;
|
||||||
import co.aikar.commands.annotation.Subcommand;
|
import co.aikar.commands.annotation.Subcommand;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.ServerUtils;
|
import net.frankheijden.serverutils.bukkit.ServerUtils;
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitLoadResult;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitLoadResult;
|
||||||
import net.frankheijden.serverutils.bukkit.managers.BukkitPluginManager;
|
import net.frankheijden.serverutils.bukkit.managers.BukkitPluginManager;
|
||||||
import net.frankheijden.serverutils.bukkit.reflection.RCraftServer;
|
import net.frankheijden.serverutils.bukkit.reflection.RCraftServer;
|
||||||
|
import net.frankheijden.serverutils.bukkit.reflection.RDedicatedServer;
|
||||||
import net.frankheijden.serverutils.bukkit.utils.BukkitUtils;
|
import net.frankheijden.serverutils.bukkit.utils.BukkitUtils;
|
||||||
import net.frankheijden.serverutils.bukkit.utils.ReloadHandler;
|
import net.frankheijden.serverutils.bukkit.utils.ReloadHandler;
|
||||||
import net.frankheijden.serverutils.common.config.Messenger;
|
import net.frankheijden.serverutils.common.config.Messenger;
|
||||||
|
|
@ -55,6 +54,7 @@ public class CommandServerUtils extends BaseCommand {
|
||||||
supportedConfigs.put("server-icon.png", RCraftServer::loadIcon);
|
supportedConfigs.put("server-icon.png", RCraftServer::loadIcon);
|
||||||
supportedConfigs.put("banned-ips.json", RCraftServer::reloadIpBans);
|
supportedConfigs.put("banned-ips.json", RCraftServer::reloadIpBans);
|
||||||
supportedConfigs.put("banned-players.json", RCraftServer::reloadProfileBans);
|
supportedConfigs.put("banned-players.json", RCraftServer::reloadProfileBans);
|
||||||
|
supportedConfigs.put("server.properties", RDedicatedServer::reloadServerProperties);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Dependency
|
@Dependency
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,6 @@ package net.frankheijden.serverutils.bukkit.entities;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.ServerUtils;
|
import net.frankheijden.serverutils.bukkit.ServerUtils;
|
||||||
import net.frankheijden.serverutils.bukkit.managers.BukkitPluginManager;
|
import net.frankheijden.serverutils.bukkit.managers.BukkitPluginManager;
|
||||||
import net.frankheijden.serverutils.bukkit.managers.BukkitTaskManager;
|
import net.frankheijden.serverutils.bukkit.managers.BukkitTaskManager;
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,6 @@ package net.frankheijden.serverutils.bukkit.entities;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.ServerUtils;
|
import net.frankheijden.serverutils.bukkit.ServerUtils;
|
||||||
import net.frankheijden.serverutils.common.config.YamlConfig;
|
import net.frankheijden.serverutils.common.config.YamlConfig;
|
||||||
import net.frankheijden.serverutils.common.providers.ResourceProvider;
|
import net.frankheijden.serverutils.common.providers.ResourceProvider;
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,6 @@ import java.util.Collection;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.common.config.YamlConfig;
|
import net.frankheijden.serverutils.common.config.YamlConfig;
|
||||||
import org.bukkit.configuration.MemorySection;
|
import org.bukkit.configuration.MemorySection;
|
||||||
import org.bukkit.configuration.file.YamlConfiguration;
|
import org.bukkit.configuration.file.YamlConfiguration;
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,6 @@ import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import java.util.regex.Matcher;
|
import java.util.regex.Matcher;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.ServerUtils;
|
import net.frankheijden.serverutils.bukkit.ServerUtils;
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitLoadResult;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitLoadResult;
|
||||||
import net.frankheijden.serverutils.bukkit.reflection.RCommandMap;
|
import net.frankheijden.serverutils.bukkit.reflection.RCommandMap;
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,6 @@ import java.lang.reflect.Field;
|
||||||
import java.lang.reflect.InvocationTargetException;
|
import java.lang.reflect.InvocationTargetException;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.SimpleCommandMap;
|
import org.bukkit.command.SimpleCommandMap;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,6 @@ import java.lang.reflect.Field;
|
||||||
import java.lang.reflect.InvocationTargetException;
|
import java.lang.reflect.InvocationTargetException;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.Warning;
|
import org.bukkit.Warning;
|
||||||
|
|
@ -67,7 +66,8 @@ public class RCraftServer {
|
||||||
fieldOf("playerList"));
|
fieldOf("playerList"));
|
||||||
methods = getAllMethods(craftServerClass,
|
methods = getAllMethods(craftServerClass,
|
||||||
methodOf("loadIcon"),
|
methodOf("loadIcon"),
|
||||||
methodOf("syncCommands", min(13)));
|
methodOf("syncCommands", min(13)),
|
||||||
|
methodOf("getHandle"));
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
@ -89,7 +89,7 @@ public class RCraftServer {
|
||||||
* @throws IllegalAccessException When prohibited access to the method.
|
* @throws IllegalAccessException When prohibited access to the method.
|
||||||
*/
|
*/
|
||||||
public static File getOptionsFile(String option) throws IllegalAccessException, InvocationTargetException {
|
public static File getOptionsFile(String option) throws IllegalAccessException, InvocationTargetException {
|
||||||
Object console = get(fields, craftServer, "console");
|
Object console = getConsole();
|
||||||
Object options = get(RDedicatedServer.getFields(), console, "options");
|
Object options = get(RDedicatedServer.getFields(), console, "options");
|
||||||
return (File) invoke(ROptionSet.getMethods(), options, "valueOf", option);
|
return (File) invoke(ROptionSet.getMethods(), options, "valueOf", option);
|
||||||
}
|
}
|
||||||
|
|
@ -106,6 +106,10 @@ public class RCraftServer {
|
||||||
invoke(methods, craftServer, "syncCommands");
|
invoke(methods, craftServer, "syncCommands");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Object getConsole() throws IllegalAccessException {
|
||||||
|
return get(fields, craftServer, "console");
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Reloads the bukkit configuration.
|
* Reloads the bukkit configuration.
|
||||||
* @throws ReflectiveOperationException Iff exception thrown regarding reflection.
|
* @throws ReflectiveOperationException Iff exception thrown regarding reflection.
|
||||||
|
|
@ -114,7 +118,7 @@ public class RCraftServer {
|
||||||
YamlConfiguration bukkit = YamlConfiguration.loadConfiguration(getConfigFile());
|
YamlConfiguration bukkit = YamlConfiguration.loadConfiguration(getConfigFile());
|
||||||
set(fields, craftServer, "configuration", bukkit);
|
set(fields, craftServer, "configuration", bukkit);
|
||||||
|
|
||||||
Object console = get(fields, craftServer, "console");
|
Object console = getConsole();
|
||||||
RDedicatedServer.reload(console);
|
RDedicatedServer.reload(console);
|
||||||
|
|
||||||
set(fields, craftServer, "monsterSpawn", bukkit.getInt("spawn-limits.monsters"));
|
set(fields, craftServer, "monsterSpawn", bukkit.getInt("spawn-limits.monsters"));
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,6 @@ import java.util.Collection;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
import java.util.function.Predicate;
|
import java.util.function.Predicate;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
||||||
import net.frankheijden.serverutils.common.utils.MapUtils;
|
import net.frankheijden.serverutils.common.utils.MapUtils;
|
||||||
import org.bukkit.plugin.Plugin;
|
import org.bukkit.plugin.Plugin;
|
||||||
|
|
|
||||||
|
|
@ -14,11 +14,15 @@ import static net.frankheijden.serverutils.common.reflection.VersionParam.exact;
|
||||||
import static net.frankheijden.serverutils.common.reflection.VersionParam.max;
|
import static net.frankheijden.serverutils.common.reflection.VersionParam.max;
|
||||||
import static net.frankheijden.serverutils.common.reflection.VersionParam.min;
|
import static net.frankheijden.serverutils.common.reflection.VersionParam.min;
|
||||||
|
|
||||||
|
import java.io.FileInputStream;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.InputStream;
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
import java.lang.reflect.InvocationTargetException;
|
import java.lang.reflect.InvocationTargetException;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
|
import java.nio.file.Path;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
import java.util.Properties;
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
||||||
import net.frankheijden.serverutils.common.reflection.VersionParam;
|
import net.frankheijden.serverutils.common.reflection.VersionParam;
|
||||||
|
|
||||||
|
|
@ -62,6 +66,14 @@ public class RDedicatedServer {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Class<?> getClazz() {
|
||||||
|
return dedicatedServerClass;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static Object getCustomRegistry(Object dedicatedServer) throws ReflectiveOperationException {
|
||||||
|
return invoke(methods, dedicatedServer, "getCustomRegistry");
|
||||||
|
}
|
||||||
|
|
||||||
public static Map<String, Field> getFields() {
|
public static Map<String, Field> getFields() {
|
||||||
return fields;
|
return fields;
|
||||||
}
|
}
|
||||||
|
|
@ -115,6 +127,30 @@ public class RDedicatedServer {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reloads server.properties.
|
||||||
|
* @throws ReflectiveOperationException Iff exception thrown regarding reflection.
|
||||||
|
*/
|
||||||
|
public static void reloadServerProperties() throws ReflectiveOperationException {
|
||||||
|
Object console = RCraftServer.getConsole();
|
||||||
|
Object playerList = get(RMinecraftServer.getFields(), console, "playerList");
|
||||||
|
Object propertyManager = get(fields, console, "propertyManager");
|
||||||
|
Path path = RDedicatedServerSettings.getServerPropertiesPath(propertyManager);
|
||||||
|
|
||||||
|
Properties properties = new Properties();
|
||||||
|
try (InputStream in = new FileInputStream(path.toFile())) {
|
||||||
|
properties.load(in);
|
||||||
|
} catch (IOException ex) {
|
||||||
|
throw new ReflectiveOperationException("Unable to load server.properties", ex);
|
||||||
|
}
|
||||||
|
|
||||||
|
int maxPlayers = Integer.parseInt(properties.getProperty("max-players"));
|
||||||
|
set(RPlayerList.getFields(), playerList, "maxPlayers", maxPlayers);
|
||||||
|
|
||||||
|
int viewDistance = Integer.parseInt(properties.getProperty("view-distance"));
|
||||||
|
RPlayerList.setViewDistance(playerList, viewDistance);
|
||||||
|
}
|
||||||
|
|
||||||
public static Object getConfigValue(Object config, String key) throws IllegalAccessException {
|
public static Object getConfigValue(Object config, String key) throws IllegalAccessException {
|
||||||
return get(RDedicatedServerProperties.getFields(), config, key);
|
return get(RDedicatedServerProperties.getFields(), config, key);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,6 @@ import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.get
|
||||||
|
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
||||||
|
|
||||||
public class RDedicatedServerProperties {
|
public class RDedicatedServerProperties {
|
||||||
|
|
|
||||||
|
|
@ -1,21 +1,26 @@
|
||||||
package net.frankheijden.serverutils.bukkit.reflection;
|
package net.frankheijden.serverutils.bukkit.reflection;
|
||||||
|
|
||||||
import static net.frankheijden.serverutils.common.reflection.ConstructorParam.constructorOf;
|
import static net.frankheijden.serverutils.common.reflection.ConstructorParam.constructorOf;
|
||||||
|
import static net.frankheijden.serverutils.common.reflection.FieldParam.fieldOf;
|
||||||
import static net.frankheijden.serverutils.common.reflection.MethodParam.methodOf;
|
import static net.frankheijden.serverutils.common.reflection.MethodParam.methodOf;
|
||||||
|
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.get;
|
||||||
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.getAllConstructors;
|
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.getAllConstructors;
|
||||||
|
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.getAllFields;
|
||||||
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.getAllMethods;
|
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.getAllMethods;
|
||||||
|
|
||||||
import java.lang.reflect.Constructor;
|
import java.lang.reflect.Constructor;
|
||||||
|
import java.lang.reflect.Field;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
|
import java.nio.file.Path;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
||||||
|
|
||||||
public class RDedicatedServerSettings {
|
public class RDedicatedServerSettings {
|
||||||
|
|
||||||
private static Class<?> serverSettingsClass;
|
private static Class<?> serverSettingsClass;
|
||||||
private static Map<String, Method> methods;
|
private static Map<String, Method> methods;
|
||||||
|
private static Map<String, Field> fields;
|
||||||
private static List<Constructor<?>> constructors;
|
private static List<Constructor<?>> constructors;
|
||||||
|
|
||||||
static {
|
static {
|
||||||
|
|
@ -24,6 +29,8 @@ public class RDedicatedServerSettings {
|
||||||
BukkitReflection.NMS));
|
BukkitReflection.NMS));
|
||||||
methods = getAllMethods(serverSettingsClass,
|
methods = getAllMethods(serverSettingsClass,
|
||||||
methodOf("getProperties"));
|
methodOf("getProperties"));
|
||||||
|
fields = getAllFields(serverSettingsClass,
|
||||||
|
fieldOf("path"));
|
||||||
constructors = getAllConstructors(serverSettingsClass,
|
constructors = getAllConstructors(serverSettingsClass,
|
||||||
constructorOf(Class.forName("joptsimple.OptionSet")),
|
constructorOf(Class.forName("joptsimple.OptionSet")),
|
||||||
constructorOf(Class.forName(String.format("net.minecraft.server.%s.IRegistryCustom",
|
constructorOf(Class.forName(String.format("net.minecraft.server.%s.IRegistryCustom",
|
||||||
|
|
@ -52,6 +59,10 @@ public class RDedicatedServerSettings {
|
||||||
return getConstructor().newInstance(registry, options);
|
return getConstructor().newInstance(registry, options);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Path getServerPropertiesPath(Object instance) throws ReflectiveOperationException {
|
||||||
|
return (Path) get(fields, instance, "path");
|
||||||
|
}
|
||||||
|
|
||||||
public static Map<String, Method> getMethods() {
|
public static Map<String, Method> getMethods() {
|
||||||
return methods;
|
return methods;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,6 @@ import java.lang.reflect.Field;
|
||||||
import java.lang.reflect.InvocationTargetException;
|
import java.lang.reflect.InvocationTargetException;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import org.bukkit.plugin.java.JavaPlugin;
|
import org.bukkit.plugin.java.JavaPlugin;
|
||||||
|
|
||||||
public class RJavaPlugin {
|
public class RJavaPlugin {
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,6 @@ import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.get
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import org.bukkit.plugin.java.JavaPluginLoader;
|
import org.bukkit.plugin.java.JavaPluginLoader;
|
||||||
|
|
||||||
public class RJavaPluginLoader {
|
public class RJavaPluginLoader {
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,6 @@ import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.inv
|
||||||
import java.lang.reflect.InvocationTargetException;
|
import java.lang.reflect.InvocationTargetException;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
||||||
|
|
||||||
public class RJsonList {
|
public class RJsonList {
|
||||||
|
|
|
||||||
|
|
@ -12,7 +12,6 @@ import java.util.Locale;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
import java.util.function.Predicate;
|
import java.util.function.Predicate;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
||||||
import org.bukkit.plugin.Plugin;
|
import org.bukkit.plugin.Plugin;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,20 @@
|
||||||
package net.frankheijden.serverutils.bukkit.reflection;
|
package net.frankheijden.serverutils.bukkit.reflection;
|
||||||
|
|
||||||
|
import static net.frankheijden.serverutils.common.reflection.FieldParam.fieldOf;
|
||||||
import static net.frankheijden.serverutils.common.reflection.MethodParam.methodOf;
|
import static net.frankheijden.serverutils.common.reflection.MethodParam.methodOf;
|
||||||
|
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.getAllFields;
|
||||||
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.getAllMethods;
|
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.getAllMethods;
|
||||||
|
|
||||||
|
import java.lang.reflect.Field;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
||||||
|
|
||||||
public class RMinecraftServer {
|
public class RMinecraftServer {
|
||||||
|
|
||||||
private static Class<?> minecraftServerClass;
|
private static Class<?> minecraftServerClass;
|
||||||
private static Map<String, Method> methods;
|
private static Map<String, Method> methods;
|
||||||
|
private static Map<String, Field> fields;
|
||||||
|
|
||||||
static {
|
static {
|
||||||
try {
|
try {
|
||||||
|
|
@ -20,6 +23,8 @@ public class RMinecraftServer {
|
||||||
methods = getAllMethods(minecraftServerClass,
|
methods = getAllMethods(minecraftServerClass,
|
||||||
methodOf("getServer"),
|
methodOf("getServer"),
|
||||||
methodOf("getCraftingManager"));
|
methodOf("getCraftingManager"));
|
||||||
|
fields = getAllFields(minecraftServerClass,
|
||||||
|
fieldOf("playerList"));
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
@ -28,4 +33,8 @@ public class RMinecraftServer {
|
||||||
public static Map<String, Method> getMethods() {
|
public static Map<String, Method> getMethods() {
|
||||||
return methods;
|
return methods;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Map<String, Field> getFields() {
|
||||||
|
return fields;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,24 +1,33 @@
|
||||||
package net.frankheijden.serverutils.bukkit.reflection;
|
package net.frankheijden.serverutils.bukkit.reflection;
|
||||||
|
|
||||||
|
import static net.frankheijden.serverutils.common.reflection.FieldParam.fieldOf;
|
||||||
import static net.frankheijden.serverutils.common.reflection.MethodParam.methodOf;
|
import static net.frankheijden.serverutils.common.reflection.MethodParam.methodOf;
|
||||||
|
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.getAllFields;
|
||||||
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.getAllMethods;
|
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.getAllMethods;
|
||||||
|
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.invoke;
|
||||||
|
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.set;
|
||||||
|
|
||||||
|
import java.lang.reflect.Field;
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
||||||
|
|
||||||
public class RPlayerList {
|
public class RPlayerList {
|
||||||
|
|
||||||
private static Class<?> playerListClass;
|
private static Class<?> playerListClass;
|
||||||
private static Map<String, Method> methods;
|
private static Map<String, Method> methods;
|
||||||
|
private static Map<String, Field> fields;
|
||||||
|
|
||||||
static {
|
static {
|
||||||
try {
|
try {
|
||||||
playerListClass = Class.forName(String.format("net.minecraft.server.%s.PlayerList", BukkitReflection.NMS));
|
playerListClass = Class.forName(String.format("net.minecraft.server.%s.PlayerList", BukkitReflection.NMS));
|
||||||
methods = getAllMethods(playerListClass,
|
methods = getAllMethods(playerListClass,
|
||||||
methodOf("getIPBans"),
|
methodOf("getIPBans"),
|
||||||
methodOf("getProfileBans"));
|
methodOf("getProfileBans"),
|
||||||
|
methodOf("a", int.class));
|
||||||
|
fields = getAllFields(playerListClass,
|
||||||
|
fieldOf("maxPlayers"),
|
||||||
|
fieldOf("viewDistance"));
|
||||||
} catch (Exception ex) {
|
} catch (Exception ex) {
|
||||||
ex.printStackTrace();
|
ex.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
@ -27,4 +36,13 @@ public class RPlayerList {
|
||||||
public static Map<String, Method> getMethods() {
|
public static Map<String, Method> getMethods() {
|
||||||
return methods;
|
return methods;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static Map<String, Field> getFields() {
|
||||||
|
return fields;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void setViewDistance(Object instance, int viewDistance) throws ReflectiveOperationException {
|
||||||
|
set(fields, instance, "viewDistance", viewDistance);
|
||||||
|
invoke(methods, instance, "a", viewDistance);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -54,6 +54,6 @@ public class RPluginClassLoader {
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
public static Map<String, Class<?>> getClasses(Object pluginLoader) throws IllegalAccessException {
|
public static Map<String, Class<?>> getClasses(Object pluginLoader) throws IllegalAccessException {
|
||||||
return (Map<String,Class<?>>) get(fields, pluginLoader, "classes");
|
return (Map<String, Class<?>>) get(fields, pluginLoader, "classes");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,6 @@ import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.get
|
||||||
|
|
||||||
import java.lang.reflect.Method;
|
import java.lang.reflect.Method;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
||||||
|
|
||||||
public class RPropertyManager {
|
public class RPropertyManager {
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,6 @@ import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.get
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
||||||
import net.frankheijden.serverutils.common.utils.MapUtils;
|
import net.frankheijden.serverutils.common.utils.MapUtils;
|
||||||
import org.bukkit.plugin.Plugin;
|
import org.bukkit.plugin.Plugin;
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,6 @@ import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.get
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
import net.frankheijden.serverutils.bukkit.entities.BukkitReflection;
|
||||||
import net.frankheijden.serverutils.common.utils.MapUtils;
|
import net.frankheijden.serverutils.common.utils.MapUtils;
|
||||||
import org.bukkit.plugin.Plugin;
|
import org.bukkit.plugin.Plugin;
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,6 @@ import java.util.List;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
|
||||||
import org.bukkit.plugin.Plugin;
|
import org.bukkit.plugin.Plugin;
|
||||||
import org.bukkit.plugin.PluginLoader;
|
import org.bukkit.plugin.PluginLoader;
|
||||||
import org.bukkit.plugin.SimplePluginManager;
|
import org.bukkit.plugin.SimplePluginManager;
|
||||||
|
|
|
||||||
|
|
@ -9,9 +9,9 @@ repositories {
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
implementation 'co.aikar:acf-bungee:0.5.0-SNAPSHOT'
|
implementation 'co.aikar:acf-bungee:0.5.0-SNAPSHOT'
|
||||||
implementation 'org.bstats:bstats-bungeecord:1.7'
|
implementation 'org.bstats:bstats-bungeecord:1.8'
|
||||||
implementation project(":Common")
|
implementation project(":Common")
|
||||||
compileOnly 'net.md-5:bungeecord-api:1.16-R0.2-SNAPSHOT'
|
compileOnly 'net.md-5:bungeecord-api:1.16-R0.4-SNAPSHOT'
|
||||||
}
|
}
|
||||||
|
|
||||||
processResources {
|
processResources {
|
||||||
|
|
|
||||||
|
|
@ -9,11 +9,9 @@ import co.aikar.commands.annotation.CommandPermission;
|
||||||
import co.aikar.commands.annotation.Default;
|
import co.aikar.commands.annotation.Default;
|
||||||
import co.aikar.commands.annotation.Description;
|
import co.aikar.commands.annotation.Description;
|
||||||
import co.aikar.commands.annotation.Subcommand;
|
import co.aikar.commands.annotation.Subcommand;
|
||||||
|
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bungee.ServerUtils;
|
import net.frankheijden.serverutils.bungee.ServerUtils;
|
||||||
import net.frankheijden.serverutils.bungee.entities.BungeeLoadResult;
|
import net.frankheijden.serverutils.bungee.entities.BungeeLoadResult;
|
||||||
import net.frankheijden.serverutils.bungee.managers.BungeePluginManager;
|
import net.frankheijden.serverutils.bungee.managers.BungeePluginManager;
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,6 @@ package net.frankheijden.serverutils.bungee.entities;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bungee.ServerUtils;
|
import net.frankheijden.serverutils.bungee.ServerUtils;
|
||||||
import net.frankheijden.serverutils.bungee.managers.BungeePluginManager;
|
import net.frankheijden.serverutils.bungee.managers.BungeePluginManager;
|
||||||
import net.frankheijden.serverutils.bungee.managers.BungeeTaskManager;
|
import net.frankheijden.serverutils.bungee.managers.BungeeTaskManager;
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@ package net.frankheijden.serverutils.bungee.entities;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bungee.ServerUtils;
|
import net.frankheijden.serverutils.bungee.ServerUtils;
|
||||||
import net.frankheijden.serverutils.common.config.YamlConfig;
|
import net.frankheijden.serverutils.common.config.YamlConfig;
|
||||||
import net.frankheijden.serverutils.common.providers.ResourceProvider;
|
import net.frankheijden.serverutils.common.providers.ResourceProvider;
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,6 @@ import java.util.Collection;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.common.config.YamlConfig;
|
import net.frankheijden.serverutils.common.config.YamlConfig;
|
||||||
import net.md_5.bungee.config.Configuration;
|
import net.md_5.bungee.config.Configuration;
|
||||||
import net.md_5.bungee.config.ConfigurationProvider;
|
import net.md_5.bungee.config.ConfigurationProvider;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
package net.frankheijden.serverutils.bungee.managers;
|
package net.frankheijden.serverutils.bungee.managers;
|
||||||
|
|
||||||
import com.google.common.base.Preconditions;
|
import com.google.common.base.Preconditions;
|
||||||
|
|
||||||
import java.io.Closeable;
|
import java.io.Closeable;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
|
@ -17,7 +16,6 @@ import java.util.jar.JarEntry;
|
||||||
import java.util.jar.JarFile;
|
import java.util.jar.JarFile;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.bungee.ServerUtils;
|
import net.frankheijden.serverutils.bungee.ServerUtils;
|
||||||
import net.frankheijden.serverutils.bungee.entities.BungeeLoadResult;
|
import net.frankheijden.serverutils.bungee.entities.BungeeLoadResult;
|
||||||
import net.frankheijden.serverutils.bungee.reflection.RPluginClassLoader;
|
import net.frankheijden.serverutils.bungee.reflection.RPluginClassLoader;
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,6 @@ import java.lang.reflect.Field;
|
||||||
import java.net.URL;
|
import java.net.URL;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
import net.md_5.bungee.api.ProxyServer;
|
import net.md_5.bungee.api.ProxyServer;
|
||||||
import net.md_5.bungee.api.plugin.Plugin;
|
import net.md_5.bungee.api.plugin.Plugin;
|
||||||
import net.md_5.bungee.api.plugin.PluginDescription;
|
import net.md_5.bungee.api.plugin.PluginDescription;
|
||||||
|
|
|
||||||
|
|
@ -5,10 +5,8 @@ import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.get
|
||||||
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.getAllFields;
|
import static net.frankheijden.serverutils.common.reflection.ReflectionUtils.getAllFields;
|
||||||
|
|
||||||
import com.google.common.collect.Multimap;
|
import com.google.common.collect.Multimap;
|
||||||
|
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.common.utils.MapUtils;
|
import net.frankheijden.serverutils.common.utils.MapUtils;
|
||||||
import net.md_5.bungee.api.plugin.Command;
|
import net.md_5.bungee.api.plugin.Command;
|
||||||
import net.md_5.bungee.api.plugin.Plugin;
|
import net.md_5.bungee.api.plugin.Plugin;
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@ repositories {
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
compileOnly 'com.github.FrankHeijden:ServerUtilsUpdater:v1.0.0'
|
compileOnly 'com.github.FrankHeijden:ServerUtilsUpdater:v1.0.0'
|
||||||
compileOnly 'com.google.code.gson:gson:2.8.0'
|
compileOnly 'com.google.code.gson:gson:2.8.6'
|
||||||
}
|
}
|
||||||
|
|
||||||
shadowJar {
|
shadowJar {
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
package net.frankheijden.serverutils.common.commands;
|
package net.frankheijden.serverutils.common.commands;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.common.config.Messenger;
|
import net.frankheijden.serverutils.common.config.Messenger;
|
||||||
import net.frankheijden.serverutils.common.entities.ServerCommandSender;
|
import net.frankheijden.serverutils.common.entities.ServerCommandSender;
|
||||||
import net.frankheijden.serverutils.common.utils.ListBuilder;
|
import net.frankheijden.serverutils.common.utils.ListBuilder;
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,6 @@ package net.frankheijden.serverutils.common.config;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.common.ServerUtilsApp;
|
import net.frankheijden.serverutils.common.ServerUtilsApp;
|
||||||
import net.frankheijden.serverutils.common.entities.ServerUtilsPlugin;
|
import net.frankheijden.serverutils.common.entities.ServerUtilsPlugin;
|
||||||
import net.frankheijden.serverutils.common.providers.ResourceProvider;
|
import net.frankheijden.serverutils.common.providers.ResourceProvider;
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@ package net.frankheijden.serverutils.common.entities;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.common.managers.AbstractPluginManager;
|
import net.frankheijden.serverutils.common.managers.AbstractPluginManager;
|
||||||
import net.frankheijden.serverutils.common.managers.AbstractTaskManager;
|
import net.frankheijden.serverutils.common.managers.AbstractTaskManager;
|
||||||
import net.frankheijden.serverutils.common.managers.AbstractVersionManager;
|
import net.frankheijden.serverutils.common.managers.AbstractVersionManager;
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
package net.frankheijden.serverutils.common.managers;
|
package net.frankheijden.serverutils.common.managers;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.common.ServerUtilsApp;
|
import net.frankheijden.serverutils.common.ServerUtilsApp;
|
||||||
import net.frankheijden.serverutils.common.entities.AbstractResult;
|
import net.frankheijden.serverutils.common.entities.AbstractResult;
|
||||||
import net.frankheijden.serverutils.common.entities.CloseableResult;
|
import net.frankheijden.serverutils.common.entities.CloseableResult;
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,6 @@ import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.function.Consumer;
|
import java.util.function.Consumer;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.common.entities.AbstractTask;
|
import net.frankheijden.serverutils.common.entities.AbstractTask;
|
||||||
|
|
||||||
public abstract class AbstractTaskManager<T> {
|
public abstract class AbstractTaskManager<T> {
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,6 @@ package net.frankheijden.serverutils.common.providers;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.common.config.YamlConfig;
|
import net.frankheijden.serverutils.common.config.YamlConfig;
|
||||||
|
|
||||||
public interface ResourceProvider {
|
public interface ResourceProvider {
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
package net.frankheijden.serverutils.common.tasks;
|
package net.frankheijden.serverutils.common.tasks;
|
||||||
|
|
||||||
import com.sun.nio.file.SensitivityWatchEventModifier;
|
import com.sun.nio.file.SensitivityWatchEventModifier;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.nio.file.ClosedWatchServiceException;
|
import java.nio.file.ClosedWatchServiceException;
|
||||||
|
|
@ -11,7 +10,6 @@ import java.nio.file.WatchEvent;
|
||||||
import java.nio.file.WatchKey;
|
import java.nio.file.WatchKey;
|
||||||
import java.nio.file.WatchService;
|
import java.nio.file.WatchService;
|
||||||
import java.util.concurrent.atomic.AtomicBoolean;
|
import java.util.concurrent.atomic.AtomicBoolean;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.common.ServerUtilsApp;
|
import net.frankheijden.serverutils.common.ServerUtilsApp;
|
||||||
import net.frankheijden.serverutils.common.entities.AbstractTask;
|
import net.frankheijden.serverutils.common.entities.AbstractTask;
|
||||||
import net.frankheijden.serverutils.common.entities.ServerCommandSender;
|
import net.frankheijden.serverutils.common.entities.ServerCommandSender;
|
||||||
|
|
|
||||||
|
|
@ -3,7 +3,6 @@ package net.frankheijden.serverutils.common.tasks;
|
||||||
import com.google.gson.JsonArray;
|
import com.google.gson.JsonArray;
|
||||||
import com.google.gson.JsonElement;
|
import com.google.gson.JsonElement;
|
||||||
import com.google.gson.JsonObject;
|
import com.google.gson.JsonObject;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileNotFoundException;
|
import java.io.FileNotFoundException;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
|
|
@ -11,7 +10,6 @@ import java.net.ConnectException;
|
||||||
import java.net.SocketTimeoutException;
|
import java.net.SocketTimeoutException;
|
||||||
import java.net.UnknownHostException;
|
import java.net.UnknownHostException;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.common.ServerUtilsApp;
|
import net.frankheijden.serverutils.common.ServerUtilsApp;
|
||||||
import net.frankheijden.serverutils.common.config.Config;
|
import net.frankheijden.serverutils.common.config.Config;
|
||||||
import net.frankheijden.serverutils.common.config.Messenger;
|
import net.frankheijden.serverutils.common.config.Messenger;
|
||||||
|
|
@ -205,7 +203,7 @@ public class UpdateCheckerTask implements Runnable {
|
||||||
plugin.getPluginManager().enablePlugin(updater);
|
plugin.getPluginManager().enablePlugin(updater);
|
||||||
|
|
||||||
plugin.getPluginManager().disablePlugin(ServerUtilsApp.getPlatformPlugin());
|
plugin.getPluginManager().disablePlugin(ServerUtilsApp.getPlatformPlugin());
|
||||||
plugin.getPluginManager().unloadPlugin((Object)ServerUtilsApp.getPlatformPlugin()).tryClose();
|
plugin.getPluginManager().unloadPlugin((Object) ServerUtilsApp.getPlatformPlugin()).tryClose();
|
||||||
updater.update(pluginFile);
|
updater.update(pluginFile);
|
||||||
updaterFile.delete();
|
updaterFile.delete();
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -216,7 +214,7 @@ public class UpdateCheckerTask implements Runnable {
|
||||||
|
|
||||||
private void broadcastDownloadStatus(String githubVersion, boolean isError) {
|
private void broadcastDownloadStatus(String githubVersion, boolean isError) {
|
||||||
final String path = "serverutils.update." + (isError ? "failed" : "success");
|
final String path = "serverutils.update." + (isError ? "failed" : "success");
|
||||||
String message = Messenger.getMessage(path,"%new%", githubVersion);
|
String message = Messenger.getMessage(path, "%new%", githubVersion);
|
||||||
plugin.getChatProvider().broadcast("serverutils.notification.update", message);
|
plugin.getChatProvider().broadcast("serverutils.notification.update", message);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,6 @@ package net.frankheijden.serverutils.common.utils;
|
||||||
|
|
||||||
import com.google.gson.JsonElement;
|
import com.google.gson.JsonElement;
|
||||||
import com.google.gson.JsonParser;
|
import com.google.gson.JsonParser;
|
||||||
|
|
||||||
import java.io.BufferedReader;
|
import java.io.BufferedReader;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileOutputStream;
|
import java.io.FileOutputStream;
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,7 @@
|
||||||
package net.frankheijden.serverutils.common.utils;
|
package net.frankheijden.serverutils.common.utils;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.common.config.Messenger;
|
import net.frankheijden.serverutils.common.config.Messenger;
|
||||||
import net.frankheijden.serverutils.common.entities.ServerCommandSender;
|
import net.frankheijden.serverutils.common.entities.ServerCommandSender;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,6 @@ package net.frankheijden.serverutils.common.utils;
|
||||||
|
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import java.util.logging.LogRecord;
|
import java.util.logging.LogRecord;
|
||||||
|
|
||||||
import net.frankheijden.serverutils.common.entities.ServerCommandSender;
|
import net.frankheijden.serverutils.common.entities.ServerCommandSender;
|
||||||
|
|
||||||
public class ForwardFilter extends PredicateFilter {
|
public class ForwardFilter extends PredicateFilter {
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,6 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||||
import static org.junit.jupiter.params.provider.Arguments.of;
|
import static org.junit.jupiter.params.provider.Arguments.of;
|
||||||
|
|
||||||
import java.util.stream.Stream;
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
import org.junit.jupiter.params.ParameterizedTest;
|
import org.junit.jupiter.params.ParameterizedTest;
|
||||||
import org.junit.jupiter.params.provider.Arguments;
|
import org.junit.jupiter.params.provider.Arguments;
|
||||||
import org.junit.jupiter.params.provider.CsvSource;
|
import org.junit.jupiter.params.provider.CsvSource;
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,6 @@ import static org.assertj.core.api.Assertions.assertThat;
|
||||||
import static org.junit.jupiter.params.provider.Arguments.of;
|
import static org.junit.jupiter.params.provider.Arguments.of;
|
||||||
|
|
||||||
import java.util.stream.Stream;
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
import org.junit.jupiter.params.ParameterizedTest;
|
import org.junit.jupiter.params.ParameterizedTest;
|
||||||
import org.junit.jupiter.params.provider.Arguments;
|
import org.junit.jupiter.params.provider.Arguments;
|
||||||
import org.junit.jupiter.params.provider.MethodSource;
|
import org.junit.jupiter.params.provider.MethodSource;
|
||||||
|
|
|
||||||
14
build.gradle
14
build.gradle
|
|
@ -1,6 +1,6 @@
|
||||||
plugins {
|
plugins {
|
||||||
id 'java'
|
id 'java'
|
||||||
id 'com.github.johnrengelman.shadow' version '5.2.0'
|
id 'com.github.johnrengelman.shadow' version '6.1.0'
|
||||||
}
|
}
|
||||||
|
|
||||||
group = 'net.frankheijden.serverutils'
|
group = 'net.frankheijden.serverutils'
|
||||||
|
|
@ -22,10 +22,10 @@ subprojects {
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
testCompile 'org.assertj:assertj-core:3.15.0'
|
testCompile 'org.assertj:assertj-core:3.18.1'
|
||||||
testCompile 'org.junit.jupiter:junit-jupiter-api:5.6.2'
|
testCompile 'org.junit.jupiter:junit-jupiter-api:5.7.0'
|
||||||
testCompile 'org.junit.jupiter:junit-jupiter-params:5.6.2'
|
testCompile 'org.junit.jupiter:junit-jupiter-params:5.7.0'
|
||||||
testCompile 'org.junit.jupiter:junit-jupiter-engine:5.6.2'
|
testCompile 'org.junit.jupiter:junit-jupiter-engine:5.7.0'
|
||||||
}
|
}
|
||||||
|
|
||||||
compileJava {
|
compileJava {
|
||||||
|
|
@ -39,8 +39,8 @@ subprojects {
|
||||||
}
|
}
|
||||||
|
|
||||||
checkstyle {
|
checkstyle {
|
||||||
toolVersion "8.25"
|
toolVersion "8.38"
|
||||||
configFile = rootProject.file('config/checkstyle/checkstyle.xml')
|
configFile = file("${rootDir}/config/checkstyle/checkstyle.xml")
|
||||||
|
|
||||||
ignoreFailures = false
|
ignoreFailures = false
|
||||||
maxErrors = 0
|
maxErrors = 0
|
||||||
|
|
|
||||||
|
|
@ -7,12 +7,16 @@
|
||||||
Checkstyle configuration that checks the Google coding conventions from Google Java Style
|
Checkstyle configuration that checks the Google coding conventions from Google Java Style
|
||||||
that can be found at https://google.github.io/styleguide/javaguide.html
|
that can be found at https://google.github.io/styleguide/javaguide.html
|
||||||
Checkstyle is very configurable. Be sure to read the documentation at
|
Checkstyle is very configurable. Be sure to read the documentation at
|
||||||
http://checkstyle.sf.net (or in your downloaded distribution).
|
http://checkstyle.org (or in your downloaded distribution).
|
||||||
To completely disable a check, just comment it out or delete it from the file.
|
To completely disable a check, just comment it out or delete it from the file.
|
||||||
|
To suppress certain violations please review suppression filters.
|
||||||
Authors: Max Vetrenko, Ruslan Diachenko, Roman Ivanov.
|
Authors: Max Vetrenko, Ruslan Diachenko, Roman Ivanov.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<module name = "Checker">
|
<module name = "Checker">
|
||||||
|
|
||||||
|
<module name="SuppressWarningsFilter"/>
|
||||||
|
|
||||||
<property name="charset" value="UTF-8"/>
|
<property name="charset" value="UTF-8"/>
|
||||||
|
|
||||||
<property name="severity" value="warning"/>
|
<property name="severity" value="warning"/>
|
||||||
|
|
@ -23,12 +27,14 @@
|
||||||
<module name="BeforeExecutionExclusionFileFilter">
|
<module name="BeforeExecutionExclusionFileFilter">
|
||||||
<property name="fileNamePattern" value="module\-info\.java$"/>
|
<property name="fileNamePattern" value="module\-info\.java$"/>
|
||||||
</module>
|
</module>
|
||||||
<!-- Checks for whitespace -->
|
<!-- https://checkstyle.org/config_filters.html#SuppressionFilter -->
|
||||||
<!-- See http://checkstyle.sf.net/config_whitespace.html -->
|
<module name="SuppressionFilter">
|
||||||
<module name="FileTabCharacter">
|
<property name="file" value="${config_loc}/suppressions.xml" />
|
||||||
<property name="eachLine" value="true"/>
|
|
||||||
</module>
|
</module>
|
||||||
|
|
||||||
|
<!-- Checks for whitespace -->
|
||||||
|
<!-- See http://checkstyle.org/config_whitespace.html -->
|
||||||
|
|
||||||
<module name="LineLength">
|
<module name="LineLength">
|
||||||
<property name="fileExtensions" value="java"/>
|
<property name="fileExtensions" value="java"/>
|
||||||
<!-- changed from 100 to 120, loosen a bit -->
|
<!-- changed from 100 to 120, loosen a bit -->
|
||||||
|
|
@ -37,6 +43,17 @@
|
||||||
</module>
|
</module>
|
||||||
|
|
||||||
<module name="TreeWalker">
|
<module name="TreeWalker">
|
||||||
|
<module name="SuppressWarningsHolder"/>
|
||||||
|
<module name="SuppressWarnings">
|
||||||
|
<property name="id" value="checkstyle:suppresswarnings"/>
|
||||||
|
</module>
|
||||||
|
<module name="SuppressWithNearbyCommentFilter"/>
|
||||||
|
<module name="SuppressionCommentFilter">
|
||||||
|
<metadata name="net.sf.eclipsecs.core.comment" value="Single warning"/>
|
||||||
|
<property name="offCommentFormat" value="CHECKSTYLE\:OFF\: ([\w\|]+)"/>
|
||||||
|
<property name="onCommentFormat" value="CHECKSTYLE\:ON\: ([\w\|]+)"/>
|
||||||
|
<property name="checkFormat" value="$1"/>
|
||||||
|
</module>
|
||||||
<module name="OuterTypeFilename"/>
|
<module name="OuterTypeFilename"/>
|
||||||
<module name="IllegalTokenText">
|
<module name="IllegalTokenText">
|
||||||
<property name="tokens" value="STRING_LITERAL, CHAR_LITERAL"/>
|
<property name="tokens" value="STRING_LITERAL, CHAR_LITERAL"/>
|
||||||
|
|
@ -52,16 +69,26 @@
|
||||||
</module>
|
</module>
|
||||||
<module name="AvoidStarImport"/>
|
<module name="AvoidStarImport"/>
|
||||||
<module name="OneTopLevelClass"/>
|
<module name="OneTopLevelClass"/>
|
||||||
<module name="NoLineWrap"/>
|
<module name="NoLineWrap">
|
||||||
|
<property name="tokens" value="PACKAGE_DEF, IMPORT, STATIC_IMPORT"/>
|
||||||
|
</module>
|
||||||
<module name="EmptyBlock">
|
<module name="EmptyBlock">
|
||||||
<property name="option" value="TEXT"/>
|
<property name="option" value="TEXT"/>
|
||||||
<property name="tokens"
|
<property name="tokens"
|
||||||
value="LITERAL_TRY, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE, LITERAL_SWITCH"/>
|
value="LITERAL_TRY, LITERAL_FINALLY, LITERAL_IF, LITERAL_ELSE, LITERAL_SWITCH"/>
|
||||||
</module>
|
</module>
|
||||||
<!-- Disabled because it makes certain code pieces neater.
|
<module name="NeedBraces">
|
||||||
<module name="NeedBraces"/>
|
<property name="tokens"
|
||||||
-->
|
value="LITERAL_DO, LITERAL_ELSE, LITERAL_FOR, LITERAL_WHILE"/>
|
||||||
<module name="LeftCurly"/>
|
</module>
|
||||||
|
<module name="LeftCurly">
|
||||||
|
<property name="tokens"
|
||||||
|
value="ANNOTATION_DEF, CLASS_DEF, CTOR_DEF, ENUM_CONSTANT_DEF, ENUM_DEF,
|
||||||
|
INTERFACE_DEF, LAMBDA, LITERAL_CASE, LITERAL_CATCH, LITERAL_DEFAULT,
|
||||||
|
LITERAL_DO, LITERAL_ELSE, LITERAL_FINALLY, LITERAL_FOR, LITERAL_IF,
|
||||||
|
LITERAL_SWITCH, LITERAL_SYNCHRONIZED, LITERAL_TRY, LITERAL_WHILE, METHOD_DEF,
|
||||||
|
OBJBLOCK, STATIC_INIT, RECORD_DEF, COMPACT_CTOR_DEF"/>
|
||||||
|
</module>
|
||||||
<module name="RightCurly">
|
<module name="RightCurly">
|
||||||
<property name="id" value="RightCurlySame"/>
|
<property name="id" value="RightCurlySame"/>
|
||||||
<property name="tokens"
|
<property name="tokens"
|
||||||
|
|
@ -73,7 +100,19 @@
|
||||||
<property name="option" value="alone"/>
|
<property name="option" value="alone"/>
|
||||||
<property name="tokens"
|
<property name="tokens"
|
||||||
value="CLASS_DEF, METHOD_DEF, CTOR_DEF, LITERAL_FOR, LITERAL_WHILE, STATIC_INIT,
|
value="CLASS_DEF, METHOD_DEF, CTOR_DEF, LITERAL_FOR, LITERAL_WHILE, STATIC_INIT,
|
||||||
INSTANCE_INIT"/>
|
INSTANCE_INIT, ANNOTATION_DEF, ENUM_DEF, INTERFACE_DEF, RECORD_DEF,
|
||||||
|
COMPACT_CTOR_DEF"/>
|
||||||
|
</module>
|
||||||
|
<module name="SuppressionXpathSingleFilter">
|
||||||
|
<!-- suppresion is required till https://github.com/checkstyle/checkstyle/issues/7541 -->
|
||||||
|
<property name="id" value="RightCurlyAlone"/>
|
||||||
|
<property name="query" value="//RCURLY[parent::SLIST[count(./*)=1]
|
||||||
|
or preceding-sibling::*[last()][self::LCURLY]]"/>
|
||||||
|
</module>
|
||||||
|
<module name="WhitespaceAfter">
|
||||||
|
<property name="tokens"
|
||||||
|
value="COMMA, SEMI, TYPECAST, LITERAL_IF, LITERAL_ELSE,
|
||||||
|
LITERAL_WHILE, LITERAL_DO, LITERAL_FOR, DO_WHILE"/>
|
||||||
</module>
|
</module>
|
||||||
<module name="WhitespaceAround">
|
<module name="WhitespaceAround">
|
||||||
<property name="allowEmptyConstructors" value="true"/>
|
<property name="allowEmptyConstructors" value="true"/>
|
||||||
|
|
@ -81,6 +120,15 @@
|
||||||
<property name="allowEmptyMethods" value="true"/>
|
<property name="allowEmptyMethods" value="true"/>
|
||||||
<property name="allowEmptyTypes" value="true"/>
|
<property name="allowEmptyTypes" value="true"/>
|
||||||
<property name="allowEmptyLoops" value="true"/>
|
<property name="allowEmptyLoops" value="true"/>
|
||||||
|
<property name="ignoreEnhancedForColon" value="false"/>
|
||||||
|
<property name="tokens"
|
||||||
|
value="ASSIGN, BAND, BAND_ASSIGN, BOR, BOR_ASSIGN, BSR, BSR_ASSIGN, BXOR,
|
||||||
|
BXOR_ASSIGN, COLON, DIV, DIV_ASSIGN, DO_WHILE, EQUAL, GE, GT, LAMBDA, LAND,
|
||||||
|
LCURLY, LE, LITERAL_CATCH, LITERAL_DO, LITERAL_ELSE, LITERAL_FINALLY,
|
||||||
|
LITERAL_FOR, LITERAL_IF, LITERAL_RETURN, LITERAL_SWITCH, LITERAL_SYNCHRONIZED,
|
||||||
|
LITERAL_TRY, LITERAL_WHILE, LOR, LT, MINUS, MINUS_ASSIGN, MOD, MOD_ASSIGN,
|
||||||
|
NOT_EQUAL, PLUS, PLUS_ASSIGN, QUESTION, RCURLY, SL, SLIST, SL_ASSIGN, SR,
|
||||||
|
SR_ASSIGN, STAR, STAR_ASSIGN, LITERAL_ASSERT, TYPE_EXTENSION_AND"/>
|
||||||
<message key="ws.notFollowed"
|
<message key="ws.notFollowed"
|
||||||
value="WhitespaceAround: ''{0}'' is not followed by whitespace. Empty blocks may only be represented as '{}' when not part of a multi-block statement (4.1.3)"/>
|
value="WhitespaceAround: ''{0}'' is not followed by whitespace. Empty blocks may only be represented as '{}' when not part of a multi-block statement (4.1.3)"/>
|
||||||
<message key="ws.notPreceded"
|
<message key="ws.notPreceded"
|
||||||
|
|
@ -90,10 +138,13 @@
|
||||||
<module name="MultipleVariableDeclarations"/>
|
<module name="MultipleVariableDeclarations"/>
|
||||||
<module name="ArrayTypeStyle"/>
|
<module name="ArrayTypeStyle"/>
|
||||||
<module name="MissingSwitchDefault"/>
|
<module name="MissingSwitchDefault"/>
|
||||||
<module name="FallThrough"/>
|
|
||||||
<module name="UpperEll"/>
|
<module name="UpperEll"/>
|
||||||
<module name="ModifierOrder"/>
|
<module name="ModifierOrder"/>
|
||||||
<module name="EmptyLineSeparator">
|
<module name="EmptyLineSeparator">
|
||||||
|
<property name="tokens"
|
||||||
|
value="PACKAGE_DEF, IMPORT, STATIC_IMPORT, CLASS_DEF, INTERFACE_DEF, ENUM_DEF,
|
||||||
|
STATIC_INIT, INSTANCE_INIT, METHOD_DEF, CTOR_DEF, VARIABLE_DEF, RECORD_DEF,
|
||||||
|
COMPACT_CTOR_DEF"/>
|
||||||
<property name="allowNoEmptyLineBetweenFields" value="true"/>
|
<property name="allowNoEmptyLineBetweenFields" value="true"/>
|
||||||
</module>
|
</module>
|
||||||
<module name="SeparatorWrap">
|
<module name="SeparatorWrap">
|
||||||
|
|
@ -129,6 +180,8 @@
|
||||||
value="Package name ''{0}'' must match pattern ''{1}''."/>
|
value="Package name ''{0}'' must match pattern ''{1}''."/>
|
||||||
</module>
|
</module>
|
||||||
<module name="TypeName">
|
<module name="TypeName">
|
||||||
|
<property name="tokens" value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF,
|
||||||
|
ANNOTATION_DEF, RECORD_DEF"/>
|
||||||
<message key="name.invalidPattern"
|
<message key="name.invalidPattern"
|
||||||
value="Type name ''{0}'' must match pattern ''{1}''."/>
|
value="Type name ''{0}'' must match pattern ''{1}''."/>
|
||||||
</module>
|
</module>
|
||||||
|
|
@ -153,16 +206,25 @@
|
||||||
value="Catch parameter name ''{0}'' must match pattern ''{1}''."/>
|
value="Catch parameter name ''{0}'' must match pattern ''{1}''."/>
|
||||||
</module>
|
</module>
|
||||||
<module name="LocalVariableName">
|
<module name="LocalVariableName">
|
||||||
<property name="tokens" value="VARIABLE_DEF"/>
|
|
||||||
<property name="format" value="^[a-z]([a-z0-9][a-zA-Z0-9]*)?$"/>
|
<property name="format" value="^[a-z]([a-z0-9][a-zA-Z0-9]*)?$"/>
|
||||||
<message key="name.invalidPattern"
|
<message key="name.invalidPattern"
|
||||||
value="Local variable name ''{0}'' must match pattern ''{1}''."/>
|
value="Local variable name ''{0}'' must match pattern ''{1}''."/>
|
||||||
</module>
|
</module>
|
||||||
|
<module name="PatternVariableName">
|
||||||
|
<property name="format" value="^[a-z]([a-z0-9][a-zA-Z0-9]*)?$"/>
|
||||||
|
<message key="name.invalidPattern"
|
||||||
|
value="Pattern variable name ''{0}'' must match pattern ''{1}''."/>
|
||||||
|
</module>
|
||||||
<module name="ClassTypeParameterName">
|
<module name="ClassTypeParameterName">
|
||||||
<property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
|
<property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
|
||||||
<message key="name.invalidPattern"
|
<message key="name.invalidPattern"
|
||||||
value="Class type name ''{0}'' must match pattern ''{1}''."/>
|
value="Class type name ''{0}'' must match pattern ''{1}''."/>
|
||||||
</module>
|
</module>
|
||||||
|
<module name="RecordTypeParameterName">
|
||||||
|
<property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
|
||||||
|
<message key="name.invalidPattern"
|
||||||
|
value="Record type name ''{0}'' must match pattern ''{1}''."/>
|
||||||
|
</module>
|
||||||
<module name="MethodTypeParameterName">
|
<module name="MethodTypeParameterName">
|
||||||
<property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
|
<property name="format" value="(^[A-Z][0-9]?)$|([A-Z][a-zA-Z0-9]*[T]$)"/>
|
||||||
<message key="name.invalidPattern"
|
<message key="name.invalidPattern"
|
||||||
|
|
@ -194,22 +256,40 @@
|
||||||
</module>
|
</module>
|
||||||
<module name="AbbreviationAsWordInName">
|
<module name="AbbreviationAsWordInName">
|
||||||
<property name="ignoreFinal" value="false"/>
|
<property name="ignoreFinal" value="false"/>
|
||||||
<property name="allowedAbbreviationLength" value="1"/>
|
<property name="allowedAbbreviationLength" value="0"/>
|
||||||
|
<property name="tokens"
|
||||||
|
value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF, ANNOTATION_DEF, ANNOTATION_FIELD_DEF,
|
||||||
|
PARAMETER_DEF, VARIABLE_DEF, METHOD_DEF, PATTERN_VARIABLE_DEF, RECORD_DEF,
|
||||||
|
RECORD_COMPONENT_DEF"/>
|
||||||
</module>
|
</module>
|
||||||
<module name="OverloadMethodsDeclarationOrder"/>
|
<module name="OverloadMethodsDeclarationOrder"/>
|
||||||
<module name="VariableDeclarationUsageDistance"/>
|
<module name="VariableDeclarationUsageDistance"/>
|
||||||
<module name="CustomImportOrder">
|
<module name="CustomImportOrder">
|
||||||
<property name="sortImportsInGroupAlphabetically" value="true"/>
|
<property name="sortImportsInGroupAlphabetically" value="false"/>
|
||||||
<property name="separateLineBetweenGroups" value="true"/>
|
<property name="separateLineBetweenGroups" value="true"/>
|
||||||
<property name="customImportOrderRules" value="STATIC###THIRD_PARTY_PACKAGE"/>
|
<property name="customImportOrderRules" value="STATIC###THIRD_PARTY_PACKAGE"/>
|
||||||
|
<property name="tokens" value="IMPORT, STATIC_IMPORT, PACKAGE_DEF"/>
|
||||||
|
</module>
|
||||||
|
<module name="UnusedImports"/>
|
||||||
|
<module name="MethodParamPad">
|
||||||
|
<property name="tokens"
|
||||||
|
value="CTOR_DEF, LITERAL_NEW, METHOD_CALL, METHOD_DEF,
|
||||||
|
SUPER_CTOR_CALL, ENUM_CONSTANT_DEF, RECORD_DEF"/>
|
||||||
</module>
|
</module>
|
||||||
<module name="MethodParamPad"/>
|
|
||||||
<module name="NoWhitespaceBefore">
|
<module name="NoWhitespaceBefore">
|
||||||
<property name="tokens"
|
<property name="tokens"
|
||||||
value="COMMA, SEMI, POST_INC, POST_DEC, DOT, ELLIPSIS, METHOD_REF"/>
|
value="COMMA, SEMI, POST_INC, POST_DEC, DOT,
|
||||||
|
LABELED_STAT, METHOD_REF"/>
|
||||||
<property name="allowLineBreaks" value="true"/>
|
<property name="allowLineBreaks" value="true"/>
|
||||||
</module>
|
</module>
|
||||||
<module name="ParenPad"/>
|
<module name="ParenPad">
|
||||||
|
<property name="tokens"
|
||||||
|
value="ANNOTATION, ANNOTATION_FIELD_DEF, CTOR_CALL, CTOR_DEF, DOT, ENUM_CONSTANT_DEF,
|
||||||
|
EXPR, LITERAL_CATCH, LITERAL_DO, LITERAL_FOR, LITERAL_IF, LITERAL_NEW,
|
||||||
|
LITERAL_SWITCH, LITERAL_SYNCHRONIZED, LITERAL_WHILE, METHOD_CALL,
|
||||||
|
METHOD_DEF, QUESTION, RESOURCE_SPECIFICATION, SUPER_CTOR_CALL, LAMBDA,
|
||||||
|
RECORD_DEF"/>
|
||||||
|
</module>
|
||||||
<module name="OperatorWrap">
|
<module name="OperatorWrap">
|
||||||
<property name="option" value="NL"/>
|
<property name="option" value="NL"/>
|
||||||
<property name="tokens"
|
<property name="tokens"
|
||||||
|
|
@ -219,7 +299,8 @@
|
||||||
<module name="AnnotationLocation">
|
<module name="AnnotationLocation">
|
||||||
<property name="id" value="AnnotationLocationMostCases"/>
|
<property name="id" value="AnnotationLocationMostCases"/>
|
||||||
<property name="tokens"
|
<property name="tokens"
|
||||||
value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF, METHOD_DEF, CTOR_DEF"/>
|
value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF, METHOD_DEF, CTOR_DEF,
|
||||||
|
RECORD_DEF, COMPACT_CTOR_DEF"/>
|
||||||
</module>
|
</module>
|
||||||
<module name="AnnotationLocation">
|
<module name="AnnotationLocation">
|
||||||
<property name="id" value="AnnotationLocationVariables"/>
|
<property name="id" value="AnnotationLocationVariables"/>
|
||||||
|
|
@ -234,6 +315,7 @@
|
||||||
value="^@return the *|^This method returns |^A [{]@code [a-zA-Z0-9]+[}]( is a )"/>
|
value="^@return the *|^This method returns |^A [{]@code [a-zA-Z0-9]+[}]( is a )"/>
|
||||||
</module>
|
</module>
|
||||||
<module name="JavadocParagraph"/>
|
<module name="JavadocParagraph"/>
|
||||||
|
<module name="RequireEmptyLineBeforeBlockTagGroup"/>
|
||||||
<module name="AtclauseOrder">
|
<module name="AtclauseOrder">
|
||||||
<property name="tagOrder" value="@param, @return, @throws, @deprecated"/>
|
<property name="tagOrder" value="@param, @return, @throws, @deprecated"/>
|
||||||
<property name="target"
|
<property name="target"
|
||||||
|
|
@ -242,15 +324,16 @@
|
||||||
<module name="JavadocMethod">
|
<module name="JavadocMethod">
|
||||||
<property name="scope" value="public"/>
|
<property name="scope" value="public"/>
|
||||||
<property name="allowMissingParamTags" value="true"/>
|
<property name="allowMissingParamTags" value="true"/>
|
||||||
<property name="allowMissingThrowsTags" value="true"/>
|
|
||||||
<property name="allowMissingReturnTag" value="true"/>
|
<property name="allowMissingReturnTag" value="true"/>
|
||||||
<property name="allowedAnnotations" value="Override, Test"/>
|
<property name="allowedAnnotations" value="Override, Test"/>
|
||||||
<property name="allowThrowsTagsForSubclasses" value="true"/>
|
<property name="tokens" value="METHOD_DEF, CTOR_DEF, ANNOTATION_FIELD_DEF, COMPACT_CTOR_DEF"/>
|
||||||
</module>
|
</module>
|
||||||
<module name="MissingJavadocMethod">
|
<module name="MissingJavadocMethod">
|
||||||
<property name="scope" value="public"/>
|
<property name="scope" value="public"/>
|
||||||
<property name="minLineCount" value="2"/>
|
<property name="minLineCount" value="2"/>
|
||||||
<property name="allowedAnnotations" value="Override, Test"/>
|
<property name="allowedAnnotations" value="Override, Test"/>
|
||||||
|
<property name="tokens" value="METHOD_DEF, CTOR_DEF, ANNOTATION_FIELD_DEF,
|
||||||
|
COMPACT_CTOR_DEF"/>
|
||||||
</module>
|
</module>
|
||||||
<module name="MethodName">
|
<module name="MethodName">
|
||||||
<property name="format" value="^[a-z][a-z0-9][a-zA-Z0-9_]*$"/>
|
<property name="format" value="^[a-z][a-z0-9][a-zA-Z0-9_]*$"/>
|
||||||
|
|
@ -263,6 +346,14 @@
|
||||||
<module name="EmptyCatchBlock">
|
<module name="EmptyCatchBlock">
|
||||||
<property name="exceptionVariableName" value="expected"/>
|
<property name="exceptionVariableName" value="expected"/>
|
||||||
</module>
|
</module>
|
||||||
<module name="CommentsIndentation"/>
|
<module name="CommentsIndentation">
|
||||||
|
<property name="tokens" value="SINGLE_LINE_COMMENT, BLOCK_COMMENT_BEGIN"/>
|
||||||
|
</module>
|
||||||
|
<!-- https://checkstyle.org/config_filters.html#SuppressionXpathFilter -->
|
||||||
|
<module name="SuppressionXpathFilter">
|
||||||
|
<property name="file" value="${org.checkstyle.google.suppressionxpathfilter.config}"
|
||||||
|
default="checkstyle-xpath-suppressions.xml" />
|
||||||
|
<property name="optional" value="true"/>
|
||||||
|
</module>
|
||||||
</module>
|
</module>
|
||||||
</module>
|
</module>
|
||||||
8
config/checkstyle/suppressions.xml
Normal file
8
config/checkstyle/suppressions.xml
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
<?xml version="1.0"?>
|
||||||
|
<!DOCTYPE suppressions PUBLIC
|
||||||
|
"-//Puppy Crawl//DTD Suppressions 1.1//EN"
|
||||||
|
"http://www.puppycrawl.com/dtds/suppressions_1_1.dtd">
|
||||||
|
<suppressions>
|
||||||
|
<suppress files="." checks="RequireEmptyLineBeforeBlockTagGroup" />
|
||||||
|
<suppress files="." checks="AbbreviationAsWordInName" />
|
||||||
|
</suppressions>
|
||||||
|
|
@ -1,2 +1,4 @@
|
||||||
rootProject.name = 'ServerUtils'
|
rootProject.name = 'ServerUtils'
|
||||||
include 'Common', 'Bukkit', 'Bungee'
|
include 'Common'
|
||||||
|
include 'Bukkit'
|
||||||
|
include 'Bungee'
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue