diff --git a/checkstyle.xml b/checkstyle.xml index e091b33c..f78c9c8f 100644 --- a/checkstyle.xml +++ b/checkstyle.xml @@ -1,7 +1,7 @@ + "-//Puppy Crawl//DTD Check Configuration 1.3//EN" + "http://www.puppycrawl.com/dtds/configuration_1_3.dtd"> @@ -9,7 +9,7 @@ - + @@ -20,7 +20,8 @@ - + @@ -36,7 +37,8 @@ - + @@ -114,7 +116,8 @@ - + diff --git a/src/main/java/ca/momothereal/mojangson/MojangsonFinder.java b/src/main/java/ca/momothereal/mojangson/MojangsonFinder.java index f2dd79a7..a084811c 100644 --- a/src/main/java/ca/momothereal/mojangson/MojangsonFinder.java +++ b/src/main/java/ca/momothereal/mojangson/MojangsonFinder.java @@ -5,15 +5,18 @@ import ca.momothereal.mojangson.value.*; import static ca.momothereal.mojangson.MojangsonToken.*; -public class MojangsonFinder { +public class MojangsonFinder +{ /** * Automatically detects the appropriate MojangsonValue from the given value. + * * @param value The value to parse * @return The resulting MojangsonValue. If the type couldn't be found, it falls back to MojangsonString * @throws MojangsonParseException if the given value could not be parsed */ - public static MojangsonValue readFromValue(String value) throws MojangsonParseException { + public static MojangsonValue readFromValue(String value) throws MojangsonParseException + { MojangsonValue val = new MojangsonString(); val.read(value); return val; diff --git a/src/main/java/ca/momothereal/mojangson/MojangsonToken.java b/src/main/java/ca/momothereal/mojangson/MojangsonToken.java index cbb707b5..3345887e 100644 --- a/src/main/java/ca/momothereal/mojangson/MojangsonToken.java +++ b/src/main/java/ca/momothereal/mojangson/MojangsonToken.java @@ -1,6 +1,7 @@ package ca.momothereal.mojangson; -public enum MojangsonToken { +public enum MojangsonToken +{ COMPOUND_START(0, "Compound_Start", '{'), COMPOUND_END(1, "Compound_End", '}'), @@ -22,26 +23,31 @@ public enum MojangsonToken { private String name; private char symbol; - MojangsonToken(int id, String name, char symbol) { + MojangsonToken(int id, String name, char symbol) + { this.id = id; this.name = name; this.symbol = symbol; } - public int getId() { + public int getId() + { return id; } - public String getName() { + public String getName() + { return name; } - public char getSymbol() { + public char getSymbol() + { return symbol; } @Override - public String toString() { + public String toString() + { return String.valueOf(symbol); } } diff --git a/src/main/java/ca/momothereal/mojangson/ex/MojangsonParseException.java b/src/main/java/ca/momothereal/mojangson/ex/MojangsonParseException.java index 61a847d7..4409dcba 100644 --- a/src/main/java/ca/momothereal/mojangson/ex/MojangsonParseException.java +++ b/src/main/java/ca/momothereal/mojangson/ex/MojangsonParseException.java @@ -1,34 +1,41 @@ package ca.momothereal.mojangson.ex; -public class MojangsonParseException extends Exception { +public class MojangsonParseException extends Exception +{ private ParseExceptionReason reason; - public MojangsonParseException(String message, ParseExceptionReason reason) { + public MojangsonParseException(String message, ParseExceptionReason reason) + { super(message); this.reason = reason; } - public ParseExceptionReason getReason() { + public ParseExceptionReason getReason() + { return reason; } @Override - public String getMessage() { + public String getMessage() + { return reason.getMessage() + ": " + super.getMessage(); } - public enum ParseExceptionReason { + public enum ParseExceptionReason + { INVALID_FORMAT_NUM("Given value is not numerical"), UNEXPECTED_SYMBOL("Unexpected symbol in Mojangson string"); private String message; - ParseExceptionReason(String message) { + ParseExceptionReason(String message) + { this.message = message; } - public String getMessage() { + public String getMessage() + { return message; } } diff --git a/src/main/java/ca/momothereal/mojangson/value/MojangsonCompound.java b/src/main/java/ca/momothereal/mojangson/value/MojangsonCompound.java index 53c59f84..b0552a51 100644 --- a/src/main/java/ca/momothereal/mojangson/value/MojangsonCompound.java +++ b/src/main/java/ca/momothereal/mojangson/value/MojangsonCompound.java @@ -7,35 +7,43 @@ import java.util.*; import static ca.momothereal.mojangson.MojangsonToken.*; -public class MojangsonCompound extends HashMap> implements MojangsonValue> { +public class MojangsonCompound extends HashMap> implements MojangsonValue> +{ private final int C_COMPOUND_START = 0; // Parsing context private final int C_COMPOUND_PAIR_KEY = 1; // Parsing context private final int C_COMPOUND_PAIR_VALUE = 2; // Parsing context - public MojangsonCompound() { + public MojangsonCompound() + { } - public MojangsonCompound(Map map) { + public MojangsonCompound(Map map) + { super(map); } @Override - public void write(StringBuilder builder) { + public void write(StringBuilder builder) + { builder.append(COMPOUND_START); boolean start = true; - for (String key : keySet()) { - if (start) { + for (String key : keySet()) + { + if (start) + { start = false; - } else { + } + else + { builder.append(ELEMENT_SEPERATOR); } builder.append(key).append(ELEMENT_PAIR_SEPERATOR); List value = get(key); - for(MojangsonValue val : value) + for (MojangsonValue val : value) { val.write(builder); } @@ -44,46 +52,60 @@ public class MojangsonCompound extends HashMap> imp } @Override - public void read(String string) throws MojangsonParseException { + public void read(String string) throws MojangsonParseException + { int context = C_COMPOUND_START; String tmp_key = "", tmp_val = ""; int scope = 0; boolean inString = false; - for (int index = 0; index < string.length(); index++) { + for (int index = 0; index < string.length(); index++) + { Character character = string.charAt(index); - if (character == STRING_QUOTES.getSymbol()) { + if (character == STRING_QUOTES.getSymbol()) + { inString = !inString; } - if (character == WHITE_SPACE.getSymbol()) { + if (character == WHITE_SPACE.getSymbol()) + { if (!inString) + { continue; + } } - if ((character == COMPOUND_START.getSymbol() || character == ARRAY_START.getSymbol()) && !inString) { + if ((character == COMPOUND_START.getSymbol() || character == ARRAY_START.getSymbol()) && !inString) + { scope++; } - if ((character == COMPOUND_END.getSymbol() || character == ARRAY_END.getSymbol()) && !inString) { + if ((character == COMPOUND_END.getSymbol() || character == ARRAY_END.getSymbol()) && !inString) + { scope--; } - if (context == C_COMPOUND_START) { - if (character != COMPOUND_START.getSymbol()) { + if (context == C_COMPOUND_START) + { + if (character != COMPOUND_START.getSymbol()) + { parseException(index, character); return; } context++; continue; } - if (context == C_COMPOUND_PAIR_KEY) { - if (character == ELEMENT_PAIR_SEPERATOR.getSymbol() && scope <= 1) { + if (context == C_COMPOUND_PAIR_KEY) + { + if (character == ELEMENT_PAIR_SEPERATOR.getSymbol() && scope <= 1) + { context++; continue; } tmp_key += character; continue; } - if (context == C_COMPOUND_PAIR_VALUE) { - if ((character == ELEMENT_SEPERATOR.getSymbol() || character == COMPOUND_END.getSymbol()) && scope <= 1 && !inString) { + if (context == C_COMPOUND_PAIR_VALUE) + { + if ((character == ELEMENT_SEPERATOR.getSymbol() || character == COMPOUND_END.getSymbol()) && scope <= 1 && !inString) + { context = C_COMPOUND_PAIR_KEY; computeIfAbsent(tmp_key, k -> new ArrayList<>()).add(MojangsonFinder.readFromValue(tmp_val)); tmp_key = tmp_val = ""; @@ -95,11 +117,12 @@ public class MojangsonCompound extends HashMap> imp } @Override - public Map getValue() { + public Map getValue() + { HashMap hack = new HashMap<>(); - for(String string : keySet()) + for (String string : keySet()) { - for(MojangsonValue value : get(string)) + for (MojangsonValue value : get(string)) { hack.put(string, value); } @@ -108,11 +131,13 @@ public class MojangsonCompound extends HashMap> imp } @Override - public Class getValueClass() { + public Class getValueClass() + { return Map.class; } - private void parseException(int index, char symbol) throws MojangsonParseException { + private void parseException(int index, char symbol) throws MojangsonParseException + { throw new MojangsonParseException("Index: " + index + ", symbol: \'" + symbol + "\'", MojangsonParseException.ParseExceptionReason.UNEXPECTED_SYMBOL); } } diff --git a/src/main/java/ca/momothereal/mojangson/value/MojangsonString.java b/src/main/java/ca/momothereal/mojangson/value/MojangsonString.java index e7e636e2..386b7974 100644 --- a/src/main/java/ca/momothereal/mojangson/value/MojangsonString.java +++ b/src/main/java/ca/momothereal/mojangson/value/MojangsonString.java @@ -3,43 +3,54 @@ package ca.momothereal.mojangson.value; import ca.momothereal.mojangson.MojangsonToken; import ca.momothereal.mojangson.ex.MojangsonParseException; -public class MojangsonString implements MojangsonValue { +public class MojangsonString implements MojangsonValue +{ private String value; - public MojangsonString() { + public MojangsonString() + { } - public MojangsonString(String value) { + public MojangsonString(String value) + { this.value = value; } - public String getValue() { + public String getValue() + { return value; } - public void setValue(String value) { + public void setValue(String value) + { this.value = value; } @Override - public void write(StringBuilder builder) { + public void write(StringBuilder builder) + { builder.append(MojangsonToken.STRING_QUOTES).append(value).append(MojangsonToken.STRING_QUOTES); } @Override - public Class getValueClass() { + public Class getValueClass() + { return String.class; } @Override - public void read(String string) throws MojangsonParseException { + public void read(String string) throws MojangsonParseException + { Character lastChar = string.charAt(string.length() - 1); Character firstChar = string.charAt(0); - if (firstChar == MojangsonToken.STRING_QUOTES.getSymbol() && lastChar == MojangsonToken.STRING_QUOTES.getSymbol()) { + if (firstChar == MojangsonToken.STRING_QUOTES.getSymbol() && lastChar == MojangsonToken.STRING_QUOTES.getSymbol()) + { value = string.substring(1, string.length() - 1); - } else { + } + else + { value = string; } } diff --git a/src/main/java/ca/momothereal/mojangson/value/MojangsonValue.java b/src/main/java/ca/momothereal/mojangson/value/MojangsonValue.java index db76e9cf..088238b4 100644 --- a/src/main/java/ca/momothereal/mojangson/value/MojangsonValue.java +++ b/src/main/java/ca/momothereal/mojangson/value/MojangsonValue.java @@ -4,18 +4,22 @@ import ca.momothereal.mojangson.ex.MojangsonParseException; /** * Represents a value inside a compound or array. + * * @param The type of value this MojangsonValue holds */ -public interface MojangsonValue { +public interface MojangsonValue +{ /** * Writes the value to a StringBuilder buffer. + * * @param builder The buffer to write to */ void write(StringBuilder builder); /** * Parses and updates the current value to the given string representation + * * @param string The string representation of the value * @throws MojangsonParseException if the given value cannot be parsed */ @@ -23,12 +27,14 @@ public interface MojangsonValue { /** * Gets the current literal value + * * @return The current literal value of the MojangsonValue */ T getValue(); /** * Gets the literal value's class + * * @return The literal value's class */ Class getValueClass(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/ChatManager.java b/src/main/java/me/totalfreedom/totalfreedommod/ChatManager.java index f74c8f06..5307efda 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/ChatManager.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/ChatManager.java @@ -154,10 +154,10 @@ public class ChatManager extends FreedomService Admin admin = plugin.al.getAdmin(player); if (!Strings.isNullOrEmpty(admin.getAcFormat())) { - String format = admin.getAcFormat(); - ChatColor color = getColor(admin, display); - String msg = format.replace("%name%", sender.getName()).replace("%rank%", display.getAbbr()).replace("%rankcolor%", color.toString()).replace("%msg%", message); - player.sendMessage(FUtil.colorize(msg)); + String format = admin.getAcFormat(); + ChatColor color = getColor(admin, display); + String msg = format.replace("%name%", sender.getName()).replace("%rank%", display.getAbbr()).replace("%rankcolor%", color.toString()).replace("%msg%", message); + player.sendMessage(FUtil.colorize(msg)); } else { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/FrontDoor.java b/src/main/java/me/totalfreedom/totalfreedommod/FrontDoor.java index 9303ddcd..2f3023c1 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/FrontDoor.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/FrontDoor.java @@ -500,9 +500,9 @@ public class FrontDoor extends FreedomService book.setTitle(ChatColor.DARK_GREEN + "Why you should go to TotalFreedom instead"); book.addPage( ChatColor.DARK_GREEN + "Why you should go to TotalFreedom instead\n" - + ChatColor.DARK_GRAY + "---------\n" - + ChatColor.BLACK + "TotalFreedom is the original TotalFreedomMod server. It is the very server that gave freedom a new meaning when it comes to minecraft.\n" - + ChatColor.BLUE + "Join now! " + ChatColor.RED + "play.totalfreedom.me"); + + ChatColor.DARK_GRAY + "---------\n" + + ChatColor.BLACK + "TotalFreedom is the original TotalFreedomMod server. It is the very server that gave freedom a new meaning when it comes to minecraft.\n" + + ChatColor.BLUE + "Join now! " + ChatColor.RED + "play.totalfreedom.me"); bookStack.setItemMeta(book); for (Player player : Bukkit.getOnlinePlayers()) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/LoginProcess.java b/src/main/java/me/totalfreedom/totalfreedommod/LoginProcess.java index 1b0e30fc..6d5d0b03 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/LoginProcess.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/LoginProcess.java @@ -108,7 +108,7 @@ public class LoginProcess extends FreedomService final int forceIpPort = ConfigEntry.FORCE_IP_PORT.getInteger(); event.disallow(PlayerLoginEvent.Result.KICK_OTHER, ConfigEntry.FORCE_IP_KICKMSG.getString() - .replace("%address%", ConfigEntry.SERVER_ADDRESS.getString() + (forceIpPort == DEFAULT_PORT ? "" : ":" + forceIpPort))); + .replace("%address%", ConfigEntry.SERVER_ADDRESS.getString() + (forceIpPort == DEFAULT_PORT ? "" : ":" + forceIpPort))); return; } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/TotalFreedomMod.java b/src/main/java/me/totalfreedom/totalfreedommod/TotalFreedomMod.java index 432d066e..736ab0ae 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/TotalFreedomMod.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/TotalFreedomMod.java @@ -205,8 +205,8 @@ public class TotalFreedomMod extends AeroPlugin ak = services.registerService(AutoKick.class); ae = services.registerService(AutoEject.class); mo = services.registerService(Monitors.class); - - + + mv = services.registerService(MovementValidator.class); ew = services.registerService(EntityWiper.class); fd = services.registerService(FrontDoor.class); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/amp/AMP.java b/src/main/java/me/totalfreedom/totalfreedommod/amp/AMP.java index 8b282e11..63cb42e1 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/amp/AMP.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/amp/AMP.java @@ -18,7 +18,7 @@ public class AMP extends FreedomService @Override protected void onStart() { - if(!plugin.config.getBoolean(ConfigEntry.AMP_ENABLED)) + if (!plugin.config.getBoolean(ConfigEntry.AMP_ENABLED)) { return; } @@ -41,7 +41,8 @@ public class AMP extends FreedomService } @Override - protected void onStop() { + protected void onStop() + { } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/amp/AMPEndpoints.java b/src/main/java/me/totalfreedom/totalfreedommod/amp/AMPEndpoints.java index 8e75dd42..7543cf08 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/amp/AMPEndpoints.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/amp/AMPEndpoints.java @@ -3,7 +3,7 @@ package me.totalfreedom.totalfreedommod.amp; public enum AMPEndpoints { - LOGIN("/API/Core/Login" , "{username:\"%s\", password:\"%s\", token:\"\", rememberMe:false}"), + LOGIN("/API/Core/Login", "{username:\"%s\", password:\"%s\", token:\"\", rememberMe:false}"), RESTART("/API/Core/Restart", "{SESSIONID:\"%s\"}"); private final String text; @@ -20,6 +20,7 @@ public enum AMPEndpoints { return text; } + public String getParameters() { return parameters; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/amp/AMPManager.java b/src/main/java/me/totalfreedom/totalfreedommod/amp/AMPManager.java index 715bee87..417d01e5 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/amp/AMPManager.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/amp/AMPManager.java @@ -22,7 +22,10 @@ public class AMPManager public AMPManager(TotalFreedomMod plugin, String url, String username, String password) { - this.plugin = plugin; this.url = url; this.username = username; this.password = password; + this.plugin = plugin; + this.url = url; + this.username = username; + this.password = password; } public void connectAsync(final LoginCallback callback) @@ -38,7 +41,7 @@ public class AMPManager try { LoginResult resp = new Gson().fromJson(postRequestToEndpoint(apiEndpoint, body), LoginResult.class); - if(!resp.getSuccess()) + if (!resp.getSuccess()) { FLog.severe("AMP login unsuccessful. Check if login details are correct."); sessionID = ""; @@ -48,7 +51,7 @@ public class AMPManager sessionID = resp.getSessionID(); callback.loginDone(true); } - catch(IOException ex) + catch (IOException ex) { FLog.severe("Could not login to AMP. Check if URL is correct. Stacktrace: " + ex.getMessage()); sessionID = ""; @@ -71,7 +74,7 @@ public class AMPManager try { String resp = postRequestToEndpoint(apiEndpoint, body); - if(resp.contains("Unauthorized Access")) + if (resp.contains("Unauthorized Access")) { //try connecting one more time LoginCallback callback = new LoginCallback() @@ -79,7 +82,7 @@ public class AMPManager @Override public void loginDone(boolean success) { - if(!success) + if (!success) { FLog.severe("Failed to connect to AMP. Did the panel go down? Were panel user details changed/deleted? Check for more info above. Connection was successful when plugin started, but unsuccessful now." + " Using server.shutdown() instead."); @@ -89,7 +92,7 @@ public class AMPManager try { String response = postRequestToEndpoint(apiEndpoint, body); - if(response.contains("Unauthorized Access")) + if (response.contains("Unauthorized Access")) { FLog.severe("Contact a developer. Panel gives Session ID but trying to use it gives a no perms error. The panel user set in config doesn't" + " have perms to restart server. Using server.shutdown() instead. "); @@ -107,7 +110,7 @@ public class AMPManager plugin.amp.ampManager.connectAsync(callback); } } - catch(IOException ex) + catch (IOException ex) { FLog.severe("Could not restart. Using server.shutdown() instead. Stacktrace: " + ex.getMessage()); plugin.getServer().shutdown(); @@ -120,7 +123,7 @@ public class AMPManager private String postRequestToEndpoint(String endpoint, String body) throws IOException { URL url = new URL(endpoint); - if(endpoint.startsWith("https://")) + if (endpoint.startsWith("https://")) { HttpsURLConnection connection = (HttpsURLConnection) url.openConnection(); connection.setRequestMethod("POST"); @@ -157,7 +160,8 @@ public class AMPManager String inputLine; StringBuffer response = new StringBuffer(); - while ((inputLine = in.readLine()) != null) { + while ((inputLine = in.readLine()) != null) + { response.append(inputLine); } in.close(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/banning/Ban.java b/src/main/java/me/totalfreedom/totalfreedommod/banning/Ban.java index b25fbc4d..33001f53 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/banning/Ban.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/banning/Ban.java @@ -49,9 +49,9 @@ public class Ban implements ConfigLoadable, ConfigSavable, Validatable { this(username, new String[] - { - ip - }, + { + ip + }, by, expire, reason); @@ -80,9 +80,9 @@ public class Ban implements ConfigLoadable, ConfigSavable, Validatable public static Ban forPlayerIp(Player player, CommandSender by, Date expiry, String reason) { return new Ban(null, new String[] - { - Ips.getIp(player) - }, by.getName(), expiry, reason); + { + Ips.getIp(player) + }, by.getName(), expiry, reason); } public static Ban forPlayerIp(String ip, CommandSender by, Date expiry, String reason) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/banning/BanManager.java b/src/main/java/me/totalfreedom/totalfreedommod/banning/BanManager.java index 5d282ac0..1237fdee 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/banning/BanManager.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/banning/BanManager.java @@ -275,7 +275,7 @@ public class BanManager extends FreedomService private void updateViews() { // Remove expired bans - for (Iterator it = bans.iterator(); it.hasNext();) + for (Iterator it = bans.iterator(); it.hasNext(); ) { if (it.next().isExpired()) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/banning/PermbanList.java b/src/main/java/me/totalfreedom/totalfreedommod/banning/PermbanList.java index a360e55c..2c4c38c2 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/banning/PermbanList.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/banning/PermbanList.java @@ -66,8 +66,8 @@ public class PermbanList extends FreedomService { event.disallow(PlayerLoginEvent.Result.KICK_OTHER, ChatColor.RED + "Your IP address is permanently banned from this server.\n" - + "Release procedures are available at\n" - + ChatColor.GOLD + ConfigEntry.SERVER_PERMBAN_URL.getString()); + + "Release procedures are available at\n" + + ChatColor.GOLD + ConfigEntry.SERVER_PERMBAN_URL.getString()); return; } } @@ -79,8 +79,8 @@ public class PermbanList extends FreedomService { event.disallow(PlayerLoginEvent.Result.KICK_OTHER, ChatColor.RED + "Your username is permanently banned from this server.\n" - + "Release procedures are available at\n" - + ChatColor.GOLD + ConfigEntry.SERVER_PERMBAN_URL.getString()); + + "Release procedures are available at\n" + + ChatColor.GOLD + ConfigEntry.SERVER_PERMBAN_URL.getString()); return; } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/blocking/MobBlocker.java b/src/main/java/me/totalfreedom/totalfreedommod/blocking/MobBlocker.java index 47acbc46..02d9877e 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/blocking/MobBlocker.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/blocking/MobBlocker.java @@ -28,7 +28,7 @@ public class MobBlocker extends FreedomService protected void onStop() { } - + //fixes crash mobs, credit to Mafrans @EventHandler(priority = EventPriority.NORMAL) public void onEntitySpawn(EntitySpawnEvent e) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/blocking/PVPBlocker.java b/src/main/java/me/totalfreedom/totalfreedommod/blocking/PVPBlocker.java index 041f1bc3..6ebdfdbb 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/blocking/PVPBlocker.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/blocking/PVPBlocker.java @@ -36,7 +36,7 @@ public class PVPBlocker extends FreedomService Player target = null; if (event.getEntity() instanceof Player) { - target = (Player)event.getEntity(); + target = (Player) event.getEntity(); if (event.getDamager() instanceof Player) { player = (Player) event.getDamager(); @@ -59,7 +59,7 @@ public class PVPBlocker extends FreedomService } } - if (player != null &! plugin.al.isAdmin(player)) + if (player != null & !plugin.al.isAdmin(player)) { if (player.getGameMode() == GameMode.CREATIVE) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/blocking/PotionBlocker.java b/src/main/java/me/totalfreedom/totalfreedommod/blocking/PotionBlocker.java index 8562e36e..7a643fe9 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/blocking/PotionBlocker.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/blocking/PotionBlocker.java @@ -43,7 +43,7 @@ public class PotionBlocker extends FreedomService Player player = null; if (projectileSource instanceof Player) { - player = (Player)projectileSource; + player = (Player) projectileSource; } if (isDeathPotion(potion.getEffects())) @@ -64,7 +64,7 @@ public class PotionBlocker extends FreedomService Player player = null; if (projectileSource instanceof Player) { - player = (Player)projectileSource; + player = (Player) projectileSource; } if (isDeathPotion(potion.getEffects())) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerEntry.java b/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerEntry.java index 376a04ee..f55328d8 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerEntry.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/blocking/command/CommandBlockerEntry.java @@ -20,12 +20,12 @@ public class CommandBlockerEntry private final String subCommand; @Getter private final String message; - + public CommandBlockerEntry(CommandBlockerRank rank, CommandBlockerAction action, String command, String message) { this(rank, action, command, null, message); } - + public CommandBlockerEntry(CommandBlockerRank rank, CommandBlockerAction action, String command, String subCommand, String message) { this.rank = rank; @@ -34,12 +34,12 @@ public class CommandBlockerEntry this.subCommand = ((subCommand == null) ? null : subCommand.toLowerCase().trim()); this.message = ((message == null || message.equals("_")) ? "That command is blocked." : message); } - + public void doActions(CommandSender sender) { if (action == CommandBlockerAction.BLOCK_AND_EJECT && sender instanceof Player) { - TotalFreedomMod.plugin().ae.autoEject((Player)sender, "You used a prohibited command: " + command); + TotalFreedomMod.plugin().ae.autoEject((Player) sender, "You used a prohibited command: " + command); FUtil.bcastMsg(sender.getName() + " was automatically kicked for using harmful commands.", ChatColor.RED); return; } @@ -50,27 +50,27 @@ public class CommandBlockerEntry } FUtil.playerMsg(sender, FUtil.colorize(message)); } - + public CommandBlockerRank getRank() { return rank; } - + public CommandBlockerAction getAction() { return action; } - + public String getCommand() { return command; } - + public String getSubCommand() { return subCommand; } - + public String getMessage() { return message; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/caging/CageData.java b/src/main/java/me/totalfreedom/totalfreedommod/caging/CageData.java index 430b7ad7..0fc0ac72 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/caging/CageData.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/caging/CageData.java @@ -64,7 +64,7 @@ public class CageData buildHistory(location, 2, fPlayer); regenerate(); } - + public void cage(Location location, Material outer, Material inner, String input) { if (isCaged()) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_aeclear.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_aeclear.java index 55bcbf12..35dd7cc6 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_aeclear.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_aeclear.java @@ -10,7 +10,7 @@ import org.bukkit.entity.Entity; import org.bukkit.entity.AreaEffectCloud; @CommandPermissions(level = Rank.SUPER_ADMIN, source = SourceType.BOTH) -@CommandParameters(description = "Clears lingering potion area effect clouds.", usage = "/", aliases="aec") +@CommandParameters(description = "Clears lingering potion area effect clouds.", usage = "/", aliases = "aec") public class Command_aeclear extends FreedomCommand { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_cage.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_cage.java index 996f09bf..4715d2ae 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_cage.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_cage.java @@ -15,7 +15,7 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Place a cage around someone.", usage = "/ [skull | block] [blockname | playername]") public class Command_cage extends FreedomCommand { - + public boolean run(final CommandSender sender, final Player playerSender, final Command cmd, final String commandLabel, final String[] args, final boolean senderIsConsole) { if (args.length == 0) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_list.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_list.java index fd060efc..351b2a23 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_list.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_list.java @@ -17,7 +17,8 @@ import java.util.List; @CommandParameters(description = "Lists the real names of all online players.", usage = "/ [-a | -i | -f | -v]", aliases = "who") public class Command_list extends FreedomCommand { - public boolean run(final CommandSender sender, final Player playerSender, final Command cmd, final String commandLabel, final String[] args, final boolean senderIsConsole) { + public boolean run(final CommandSender sender, final Player playerSender, final Command cmd, final String commandLabel, final String[] args, final boolean senderIsConsole) + { if (args.length > 1) { return false; @@ -152,13 +153,13 @@ public class Command_list extends FreedomCommand return color + prefix; } - + private enum ListFilter { - PLAYERS, - ADMINS, - VANISHED_ADMINS, - FAMOUS_PLAYERS, + PLAYERS, + ADMINS, + VANISHED_ADMINS, + FAMOUS_PLAYERS, IMPOSTORS } } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_onlinemode.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_onlinemode.java index ba20edee..4fe7c321 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_onlinemode.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_onlinemode.java @@ -46,9 +46,9 @@ public class Command_onlinemode extends FreedomCommand try { - plugin.si.setOnlineMode(onlineMode); + plugin.si.setOnlineMode(onlineMode); - if (onlineMode) + if (onlineMode) { for (Player player : server.getOnlinePlayers()) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_potion.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_potion.java index 7648851e..24e0bb61 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_potion.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_potion.java @@ -160,9 +160,9 @@ public class Command_potion extends FreedomCommand target.addPotionEffect(new_effect, true); msg( "Added potion effect: " + new_effect.getType().getName() - + ", Duration: " + new_effect.getDuration() - + ", Amplifier: " + new_effect.getAmplifier() - + (!target.equals(playerSender) ? " to player " + target.getName() + "." : " to yourself."), ChatColor.AQUA); + + ", Duration: " + new_effect.getDuration() + + ", Amplifier: " + new_effect.getAmplifier() + + (!target.equals(playerSender) ? " to player " + target.getName() + "." : " to yourself."), ChatColor.AQUA); return true; } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_premium.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_premium.java index 52ee3a93..7d55715c 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_premium.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_premium.java @@ -48,7 +48,7 @@ public class Command_premium extends FreedomCommand final URLConnection urlConnection = getUrl.openConnection(); final String message; try ( // Read the response - BufferedReader in = new BufferedReader(new InputStreamReader(urlConnection.getInputStream()))) + BufferedReader in = new BufferedReader(new InputStreamReader(urlConnection.getInputStream()))) { message = (!"PREMIUM".equalsIgnoreCase(in.readLine()) ? ChatColor.RED + "No" : ChatColor.DARK_GREEN + "Yes"); } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_rainbownick.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_rainbownick.java index de59c98f..6049a552 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_rainbownick.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_rainbownick.java @@ -29,7 +29,7 @@ public class Command_rainbownick extends FreedomCommand msg("That nickname contains invalid characters."); return true; } - + if (nickPlain.length() < 4 || nickPlain.length() > 30) { msg("Your nickname must be between 4 and 30 characters long."); @@ -48,9 +48,9 @@ public class Command_rainbownick extends FreedomCommand return true; } } - + final String newNick = FUtil.rainbowify(ChatColor.stripColor(FUtil.colorize(nickPlain))); - + plugin.esb.setNickname(sender.getName(), newNick); msg("Your nickname is now: " + newNick); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_spawnmob.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_spawnmob.java index a1accf00..46994209 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_spawnmob.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_spawnmob.java @@ -17,7 +17,7 @@ import java.util.List; import java.util.Set; @CommandPermissions(level = Rank.OP, source = SourceType.ONLY_IN_GAME) -@CommandParameters(description = "Spawn an entity.", usage = "/ [amount]", aliases="spawnentity") +@CommandParameters(description = "Spawn an entity.", usage = "/ [amount]", aliases = "spawnentity") public class Command_spawnmob extends FreedomCommand { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_spectate.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_spectate.java index 1308fe6a..94c93620 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_spectate.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_spectate.java @@ -8,7 +8,7 @@ import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; @CommandPermissions(level = Rank.SUPER_ADMIN, source = SourceType.ONLY_IN_GAME) -@CommandParameters(description = "Quickly spectate someone.", usage = "/ ", aliases="spec") +@CommandParameters(description = "Quickly spectate someone.", usage = "/ ", aliases = "spec") public class Command_spectate extends FreedomCommand { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_tag.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_tag.java index 02b7194c..fab06527 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_tag.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_tag.java @@ -14,6 +14,7 @@ import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import java.util.Arrays; import java.util.List; +import static me.totalfreedom.totalfreedommod.util.FUtil.DEVELOPERS: @CommandPermissions(level = Rank.OP, source = SourceType.BOTH) @CommandParameters(description = "Sets yourself a prefix", usage = "/ [-s[ave]] | off | clear | clearall>") diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_tagnyan.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_tagnyan.java index 3ba4bd53..9872d5df 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_tagnyan.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_tagnyan.java @@ -15,11 +15,11 @@ import org.bukkit.entity.Player; @CommandParameters(description = "Gives you a tag with random colors", usage = "/ ", aliases = "tn") public class Command_tagnyan extends FreedomCommand { - + public static final List FORBIDDEN_WORDS = Arrays.asList(new String[] - { - "admin", "owner", "moderator", "developer", "console", "SRA", "TCA", "SA" - }); + { + "admin", "owner", "moderator", "developer", "console", "SRA", "TCA", "SA" + }); @Override public boolean run(CommandSender sender, Player playerSender, Command cmd, String commandLabel, String[] args, boolean senderIsConsole) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_toggle.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_toggle.java index b6c9796e..f37da7f1 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_toggle.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_toggle.java @@ -55,7 +55,7 @@ public class Command_toggle extends FreedomCommand { toggle("Lava placement is", ConfigEntry.ALLOW_LAVA_PLACE); return true; - } + } else if (args[0].equalsIgnoreCase("fluidspread")) { toggle("Fluid spread is", ConfigEntry.ALLOW_FLUID_SPREAD); @@ -155,7 +155,7 @@ public class Command_toggle extends FreedomCommand return false; } } - + private void toggle(final String name, final ConfigEntry entry) { msg(name + " now " + (entry.setBoolean(!entry.getBoolean()) ? "enabled." : "disabled.")); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_vanish.java b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_vanish.java index 1b13346c..945083ab 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/command/Command_vanish.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/command/Command_vanish.java @@ -20,7 +20,8 @@ public class Command_vanish extends FreedomCommand { public static ArrayList VANISHED = new ArrayList<>(); - public boolean run(final CommandSender sender, final Player playerSender, final Command cmd, final String commandLabel, final String[] args, final boolean senderIsConsole) { + public boolean run(final CommandSender sender, final Player playerSender, final Command cmd, final String commandLabel, final String[] args, final boolean senderIsConsole) + { Displayable display = plugin.rm.getDisplay(playerSender); String loginMsg = display.getColoredLoginMessage(); String displayName = display.getColor() + playerSender.getName(); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTTPDaemon.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTTPDaemon.java index 9d17d08e..53f18714 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTTPDaemon.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/HTTPDaemon.java @@ -52,7 +52,8 @@ public class HTTPDaemon extends FreedomService return; } - port = ConfigEntry.HTTPD_PORT.getInteger();; + port = ConfigEntry.HTTPD_PORT.getInteger(); + ; httpd = new HTTPD(port); // Modules @@ -168,7 +169,7 @@ public class HTTPDaemon extends FreedomService { mimetype = MIME_DEFAULT_BINARY; } - + // Some browsers like firefox download the file for text/yaml mime types if (FilenameUtils.getExtension(file.getName()).equals("yml")) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/NanoHTTPD.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/NanoHTTPD.java index efe0600c..c56e4ee4 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/NanoHTTPD.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/NanoHTTPD.java @@ -239,7 +239,8 @@ public abstract class NanoHTTPD catch (IOException e) { } - } while (!myServerSocket.isClosed()); + } + while (!myServerSocket.isClosed()); } }); myThread.setDaemon(true); @@ -284,15 +285,15 @@ public abstract class NanoHTTPD *

* (By default, this delegates to serveFile() and allows directory listing.) * - * @param uri Percent-decoded URI without parameters, for example "/index.cgi" - * @param method "GET", "POST" etc. - * @param parms Parsed, percent decoded parameters from URI and, in case of POST, data. + * @param uri Percent-decoded URI without parameters, for example "/index.cgi" + * @param method "GET", "POST" etc. + * @param parms Parsed, percent decoded parameters from URI and, in case of POST, data. * @param headers Header entries, percent decoded * @return HTTP response, see class Response for details */ @Deprecated public Response serve(String uri, Method method, Map headers, Map parms, - Map files) + Map files) { return new Response(Response.Status.NOT_FOUND, MIME_PLAINTEXT, "Not Found"); } @@ -397,6 +398,7 @@ public abstract class NanoHTTPD // Threading Strategy. // // ------------------------------------------------------------------------------- // + /** * Pluggable strategy for asynchronously executing requests. * @@ -412,6 +414,7 @@ public abstract class NanoHTTPD // Temp file handling strategy. // // ------------------------------------------------------------------------------- // + /** * Pluggable strategy for creating and cleaning up temporary files. * @@ -462,6 +465,7 @@ public abstract class NanoHTTPD } // ------------------------------------------------------------------------------- // + /** * Temp file manager. *

@@ -823,9 +827,9 @@ public abstract class NanoHTTPD { OK(200, "OK"), CREATED(201, "Created"), ACCEPTED(202, "Accepted"), NO_CONTENT(204, "No Content"), PARTIAL_CONTENT(206, "Partial Content"), REDIRECT(301, - "Moved Permanently"), NOT_MODIFIED(304, "Not Modified"), BAD_REQUEST(400, "Bad Request"), UNAUTHORIZED(401, - "Unauthorized"), FORBIDDEN(403, "Forbidden"), NOT_FOUND(404, "Not Found"), RANGE_NOT_SATISFIABLE(416, - "Requested Range Not Satisfiable"), INTERNAL_ERROR(500, "Internal Server Error"); + "Moved Permanently"), NOT_MODIFIED(304, "Not Modified"), BAD_REQUEST(400, "Bad Request"), UNAUTHORIZED(401, + "Unauthorized"), FORBIDDEN(403, "Forbidden"), NOT_FOUND(404, "Not Found"), RANGE_NOT_SATISFIABLE(416, + "Requested Range Not Satisfiable"), INTERNAL_ERROR(500, "Internal Server Error"); private final int requestStatus; private final String description; @@ -1181,7 +1185,7 @@ public abstract class NanoHTTPD * Decodes the Multipart Body data and put it into Key/Value pairs. */ private void decodeMultipartData(String boundary, ByteBuffer fbuf, BufferedReader in, Map parms, - Map files) throws ResponseException + Map files) throws ResponseException { try { @@ -1261,7 +1265,8 @@ public abstract class NanoHTTPD do { mpline = in.readLine(); - } while (mpline != null && !mpline.contains(boundary)); + } + while (mpline != null && !mpline.contains(boundary)); } parms.put(pname, value); } @@ -1544,8 +1549,8 @@ public abstract class NanoHTTPD /** * Sets a cookie. * - * @param name The cookie's name. - * @param value The cookie's value. + * @param name The cookie's name. + * @param value The cookie's value. * @param expires How many days until the cookie expires. */ public void set(String name, String value, int expires) diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_help.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_help.java index 242598da..1254c4cd 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_help.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_help.java @@ -42,7 +42,7 @@ public class Module_help extends HTTPDModule final StringBuilder responseBody = new StringBuilder() .append(heading("Command Help", 1)) .append(paragraph( - "This page is an automatically generated listing of all plugin commands that are currently live on the server. " + "This page is an automatically generated listing of all plugin commands that are currently live on the server. " + "Please note that it does not include vanilla server commands.")); final Collection knownCommands = ((SimpleCommandMap) map).getCommands(); @@ -102,19 +102,19 @@ public class Module_help extends HTTPDModule sb.append( "

  • {$CMD_NAME} - Usage: {$CMD_USAGE}" - .replace("{$CMD_NAME}", escapeHtml4(command.getName().trim())) - .replace("{$CMD_USAGE}", escapeHtml4(command.getUsage().trim()))); + .replace("{$CMD_NAME}", escapeHtml4(command.getName().trim())) + .replace("{$CMD_USAGE}", escapeHtml4(command.getUsage().trim()))); if (!command.getAliases().isEmpty()) { sb.append( " - Aliases: {$CMD_ALIASES}" - .replace("{$CMD_ALIASES}", escapeHtml4(StringUtils.join(command.getAliases(), ", ")))); + .replace("{$CMD_ALIASES}", escapeHtml4(StringUtils.join(command.getAliases(), ", ")))); } sb.append( "
    {$CMD_DESC}
  • \r\n" - .replace("{$CMD_DESC}", escapeHtml4(command.getDescription().trim()))); + .replace("{$CMD_DESC}", escapeHtml4(command.getDescription().trim()))); return sb.toString(); } diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_logfile.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_logfile.java index 555aee5f..9d202355 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_logfile.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_logfile.java @@ -23,10 +23,10 @@ public class Module_logfile extends HTTPDModule private static final File LOG_FOLDER = new File("./logs/"); private static final String[] LOG_FILTER = new String[] - { - "log", - "gz" - }; + { + "log", + "gz" + }; public Module_logfile(TotalFreedomMod plugin, NanoHTTPD.HTTPSession session) { diff --git a/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_schematic.java b/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_schematic.java index d7da1ffc..b3a862cf 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_schematic.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/httpd/module/Module_schematic.java @@ -30,9 +30,9 @@ public class Module_schematic extends HTTPDModule private static final String REQUEST_FORM_FILE_ELEMENT_NAME = "schematicFile"; private static final Pattern SCHEMATIC_FILENAME_LC = Pattern.compile("^[a-z0-9_'!,\\-]{1,30}\\.schematic$"); private static final String[] SCHEMATIC_FILTER = new String[] - { - "schematic" - }; + { + "schematic" + }; private static final String UPLOAD_FORM = "
    \n" + "

    Select a schematic file to upload. Filenames must be alphanumeric, between 1 and 30 characters long (inclusive), and have a .schematic extension.

    \n" + "\n" diff --git a/src/main/java/me/totalfreedom/totalfreedommod/masterbuilder/MasterBuilderList.java b/src/main/java/me/totalfreedom/totalfreedommod/masterbuilder/MasterBuilderList.java index 3041c894..e0466538 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/masterbuilder/MasterBuilderList.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/masterbuilder/MasterBuilderList.java @@ -81,7 +81,7 @@ public class MasterBuilderList extends FreedomService } masterBuilders.put(key, masterBuilder); - } + } updateTables(); FLog.info("Loaded " + masterBuilders.size() + " master builders with " + ipTable.size() + " IPs)"); diff --git a/src/main/java/me/totalfreedom/totalfreedommod/punishments/PunishmentList.java b/src/main/java/me/totalfreedom/totalfreedommod/punishments/PunishmentList.java index 5a86661d..86fa77e0 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/punishments/PunishmentList.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/punishments/PunishmentList.java @@ -1,4 +1,5 @@ package me.totalfreedom.totalfreedommod.punishments; + import java.util.List; import java.util.Set; import java.util.ArrayList; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/util/FUtil.java b/src/main/java/me/totalfreedom/totalfreedommod/util/FUtil.java index 1e57e549..3db2f861 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/util/FUtil.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/util/FUtil.java @@ -163,12 +163,12 @@ public class FUtil { Pattern timePattern = Pattern.compile( "(?:([0-9]+)\\s*y[a-z]*[,\\s]*)?" - + "(?:([0-9]+)\\s*mo[a-z]*[,\\s]*)?" - + "(?:([0-9]+)\\s*w[a-z]*[,\\s]*)?" - + "(?:([0-9]+)\\s*d[a-z]*[,\\s]*)?" - + "(?:([0-9]+)\\s*h[a-z]*[,\\s]*)?" - + "(?:([0-9]+)\\s*m[a-z]*[,\\s]*)?" - + "(?:([0-9]+)\\s*(?:s[a-z]*)?)?", Pattern.CASE_INSENSITIVE); + + "(?:([0-9]+)\\s*mo[a-z]*[,\\s]*)?" + + "(?:([0-9]+)\\s*w[a-z]*[,\\s]*)?" + + "(?:([0-9]+)\\s*d[a-z]*[,\\s]*)?" + + "(?:([0-9]+)\\s*h[a-z]*[,\\s]*)?" + + "(?:([0-9]+)\\s*m[a-z]*[,\\s]*)?" + + "(?:([0-9]+)\\s*(?:s[a-z]*)?)?", Pattern.CASE_INSENSITIVE); Matcher m = timePattern.matcher(time); int years = 0; int months = 0; @@ -362,7 +362,8 @@ public class FUtil catch (NoSuchFieldException | IllegalAccessException ex) { } - } while (checkClass.getSuperclass() != Object.class + } + while (checkClass.getSuperclass() != Object.class && ((checkClass = checkClass.getSuperclass()) != null)); return null; diff --git a/src/main/java/me/totalfreedom/totalfreedommod/world/Flatlands.java b/src/main/java/me/totalfreedom/totalfreedommod/world/Flatlands.java index 4245f78b..2618d0e6 100644 --- a/src/main/java/me/totalfreedom/totalfreedommod/world/Flatlands.java +++ b/src/main/java/me/totalfreedom/totalfreedommod/world/Flatlands.java @@ -64,7 +64,6 @@ public class Flatlands extends CustomWorld } - public void wipeFlatlandsIfFlagged() { boolean doFlatlandsWipe = false; diff --git a/src/main/java/org/bstats/Metrics.java b/src/main/java/org/bstats/Metrics.java index e1c526ee..52d56baa 100644 --- a/src/main/java/org/bstats/Metrics.java +++ b/src/main/java/org/bstats/Metrics.java @@ -30,20 +30,24 @@ import java.util.zip.GZIPOutputStream; /** * bStats collects some data for plugin authors. - * + *

    * Check out https://bStats.org/ to learn more about bStats! */ -public class Metrics { +public class Metrics +{ - static { + static + { // You can use the property to disable the check in your test environment - if (System.getProperty("bstats.relocatecheck") == null || !System.getProperty("bstats.relocatecheck").equals("false")) { + if (System.getProperty("bstats.relocatecheck") == null || !System.getProperty("bstats.relocatecheck").equals("false")) + { // Maven's Relocate is clever and changes strings, too. So we have to use this little "trick" ... :D final String defaultPackage = new String( new byte[]{'o', 'r', 'g', '.', 'b', 's', 't', 'a', 't', 's', '.', 'b', 'u', 'k', 'k', 'i', 't'}); final String examplePackage = new String(new byte[]{'y', 'o', 'u', 'r', '.', 'p', 'a', 'c', 'k', 'a', 'g', 'e'}); // We want to make sure nobody just copy & pastes the example and use the wrong package names - if (Metrics.class.getPackage().getName().equals(defaultPackage) || Metrics.class.getPackage().getName().equals(examplePackage)) { + if (Metrics.class.getPackage().getName().equals(defaultPackage) || Metrics.class.getPackage().getName().equals(examplePackage)) + { throw new IllegalStateException("bStats Metrics class has not been relocated correctly!"); } } @@ -72,8 +76,10 @@ public class Metrics { * * @param plugin The plugin which stats should be submitted. */ - public Metrics(JavaPlugin plugin) { - if (plugin == null) { + public Metrics(JavaPlugin plugin) + { + if (plugin == null) + { throw new IllegalArgumentException("Plugin cannot be null!"); } this.plugin = plugin; @@ -84,7 +90,8 @@ public class Metrics { YamlConfiguration config = YamlConfiguration.loadConfiguration(configFile); // Check if the config file exists - if (!config.isSet("serverUuid")) { + if (!config.isSet("serverUuid")) + { // Add default values config.addDefault("enabled", true); @@ -100,27 +107,38 @@ public class Metrics { "This has nearly no effect on the server performance!\n" + "Check out https://bStats.org/ to learn more :)" ).copyDefaults(true); - try { + try + { config.save(configFile); - } catch (IOException ignored) { } + } + catch (IOException ignored) + { + } } // Load the data serverUUID = config.getString("serverUuid"); logFailedRequests = config.getBoolean("logFailedRequests", false); - if (config.getBoolean("enabled", true)) { + if (config.getBoolean("enabled", true)) + { boolean found = false; // Search for all other bStats Metrics classes to see if we are the first one - for (Class service : Bukkit.getServicesManager().getKnownServices()) { - try { + for (Class service : Bukkit.getServicesManager().getKnownServices()) + { + try + { service.getField("B_STATS_VERSION"); // Our identifier :) found = true; // We aren't the first break; - } catch (NoSuchFieldException ignored) { } + } + catch (NoSuchFieldException ignored) + { + } } // Register our service Bukkit.getServicesManager().register(Metrics.class, this, plugin, ServicePriority.Normal); - if (!found) { + if (!found) + { // We are the first! startSubmitting(); } @@ -132,8 +150,10 @@ public class Metrics { * * @param chart The chart to add. */ - public void addCustomChart(CustomChart chart) { - if (chart == null) { + public void addCustomChart(CustomChart chart) + { + if (chart == null) + { throw new IllegalArgumentException("Chart cannot be null!"); } charts.add(chart); @@ -142,25 +162,31 @@ public class Metrics { /** * Starts the Scheduler which submits our data every 30 minutes. */ - private void startSubmitting() { + private void startSubmitting() + { final Timer timer = new Timer(true); // We use a timer cause the Bukkit scheduler is affected by server lags - timer.scheduleAtFixedRate(new TimerTask() { + timer.scheduleAtFixedRate(new TimerTask() + { @Override - public void run() { - if (!plugin.isEnabled()) { // Plugin was disabled + public void run() + { + if (!plugin.isEnabled()) + { // Plugin was disabled timer.cancel(); return; } // Nevertheless we want our code to run in the Bukkit main thread, so we have to use the Bukkit scheduler // Don't be afraid! The connection to the bStats server is still async, only the stats collection is sync ;) - Bukkit.getScheduler().runTask(plugin, new Runnable() { + Bukkit.getScheduler().runTask(plugin, new Runnable() + { @Override - public void run() { + public void run() + { submitData(); } }); } - }, 1000*60*5, 1000*60*30); + }, 1000 * 60 * 5, 1000 * 60 * 30); // Submit the data every 30 minutes, first time after 5 minutes to give other plugins enough time to start // WARNING: Changing the frequency has no effect but your plugin WILL be blocked/deleted! // WARNING: Just don't do it! @@ -172,7 +198,8 @@ public class Metrics { * * @return The plugin specific data. */ - public JSONObject getPluginData() { + public JSONObject getPluginData() + { JSONObject data = new JSONObject(); String pluginName = plugin.getDescription().getName(); @@ -181,10 +208,12 @@ public class Metrics { data.put("pluginName", pluginName); // Append the name of the plugin data.put("pluginVersion", pluginVersion); // Append the version of the plugin JSONArray customCharts = new JSONArray(); - for (CustomChart customChart : charts) { + for (CustomChart customChart : charts) + { // Add the data of the custom charts JSONObject chart = customChart.getRequestJsonObject(); - if (chart == null) { // If the chart is null, we skip it + if (chart == null) + { // If the chart is null, we skip it continue; } customCharts.add(chart); @@ -199,17 +228,21 @@ public class Metrics { * * @return The server specific data. */ - private JSONObject getServerData() { + private JSONObject getServerData() + { // Minecraft specific data int playerAmount; - try { + try + { // Around MC 1.8 the return type was changed to a collection from an array, // This fixes java.lang.NoSuchMethodError: org.bukkit.Bukkit.getOnlinePlayers()Ljava/util/Collection; Method onlinePlayersMethod = Class.forName("org.bukkit.Server").getMethod("getOnlinePlayers"); playerAmount = onlinePlayersMethod.getReturnType().equals(Collection.class) ? ((Collection) onlinePlayersMethod.invoke(Bukkit.getServer())).size() : ((Player[]) onlinePlayersMethod.invoke(Bukkit.getServer())).length; - } catch (Exception e) { + } + catch (Exception e) + { playerAmount = Bukkit.getOnlinePlayers().size(); // Just use the new method if the Reflection failed } int onlineMode = Bukkit.getOnlineMode() ? 1 : 0; @@ -243,35 +276,52 @@ public class Metrics { /** * Collects the data and sends it afterwards. */ - private void submitData() { + private void submitData() + { final JSONObject data = getServerData(); JSONArray pluginData = new JSONArray(); // Search for all other bStats Metrics classes to get their plugin data - for (Class service : Bukkit.getServicesManager().getKnownServices()) { - try { + for (Class service : Bukkit.getServicesManager().getKnownServices()) + { + try + { service.getField("B_STATS_VERSION"); // Our identifier :) - for (RegisteredServiceProvider provider : Bukkit.getServicesManager().getRegistrations(service)) { - try { + for (RegisteredServiceProvider provider : Bukkit.getServicesManager().getRegistrations(service)) + { + try + { pluginData.add(provider.getService().getMethod("getPluginData").invoke(provider.getProvider())); - } catch (NullPointerException | NoSuchMethodException | IllegalAccessException | InvocationTargetException ignored) { } + } + catch (NullPointerException | NoSuchMethodException | IllegalAccessException | InvocationTargetException ignored) + { + } } - } catch (NoSuchFieldException ignored) { } + } + catch (NoSuchFieldException ignored) + { + } } data.put("plugins", pluginData); // Create a new thread for the connection to the bStats server - new Thread(new Runnable() { + new Thread(new Runnable() + { @Override - public void run() { - try { + public void run() + { + try + { // Send the data sendData(data); - } catch (Exception e) { + } + catch (Exception e) + { // Something went wrong! :( - if (logFailedRequests) { + if (logFailedRequests) + { plugin.getLogger().log(Level.WARNING, "Could not submit plugin stats of " + plugin.getName(), e); } } @@ -285,11 +335,14 @@ public class Metrics { * @param data The data to send. * @throws Exception If the request failed. */ - private static void sendData(JSONObject data) throws Exception { - if (data == null) { + private static void sendData(JSONObject data) throws Exception + { + if (data == null) + { throw new IllegalArgumentException("Data cannot be null!"); } - if (Bukkit.isPrimaryThread()) { + if (Bukkit.isPrimaryThread()) + { throw new IllegalAccessException("This method must not be called from the main thread!"); } HttpsURLConnection connection = (HttpsURLConnection) new URL(URL).openConnection(); @@ -323,8 +376,10 @@ public class Metrics { * @return The gzipped String. * @throws IOException If the compression failed. */ - private static byte[] compress(final String str) throws IOException { - if (str == null) { + private static byte[] compress(final String str) throws IOException + { + if (str == null) + { return null; } ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); @@ -337,7 +392,8 @@ public class Metrics { /** * Represents a custom chart. */ - public static abstract class CustomChart { + public static abstract class CustomChart + { // The id of the chart final String chartId; @@ -347,25 +403,33 @@ public class Metrics { * * @param chartId The id of the chart. */ - CustomChart(String chartId) { - if (chartId == null || chartId.isEmpty()) { + CustomChart(String chartId) + { + if (chartId == null || chartId.isEmpty()) + { throw new IllegalArgumentException("ChartId cannot be null or empty!"); } this.chartId = chartId; } - private JSONObject getRequestJsonObject() { + private JSONObject getRequestJsonObject() + { JSONObject chart = new JSONObject(); chart.put("chartId", chartId); - try { + try + { JSONObject data = getChartData(); - if (data == null) { + if (data == null) + { // If the data is null we don't send the chart. return null; } chart.put("data", data); - } catch (Throwable t) { - if (logFailedRequests) { + } + catch (Throwable t) + { + if (logFailedRequests) + { Bukkit.getLogger().log(Level.WARNING, "Failed to get data for custom chart with id " + chartId, t); } return null; @@ -380,26 +444,30 @@ public class Metrics { /** * Represents a custom simple pie. */ - public static class SimplePie extends CustomChart { + public static class SimplePie extends CustomChart + { private final Callable callable; /** * Class constructor. * - * @param chartId The id of the chart. + * @param chartId The id of the chart. * @param callable The callable which is used to request the chart data. */ - public SimplePie(String chartId, Callable callable) { + public SimplePie(String chartId, Callable callable) + { super(chartId); this.callable = callable; } @Override - protected JSONObject getChartData() throws Exception { + protected JSONObject getChartData() throws Exception + { JSONObject data = new JSONObject(); String value = callable.call(); - if (value == null || value.isEmpty()) { + if (value == null || value.isEmpty()) + { // Null = skip the chart return null; } @@ -411,39 +479,46 @@ public class Metrics { /** * Represents a custom advanced pie. */ - public static class AdvancedPie extends CustomChart { + public static class AdvancedPie extends CustomChart + { private final Callable> callable; /** * Class constructor. * - * @param chartId The id of the chart. + * @param chartId The id of the chart. * @param callable The callable which is used to request the chart data. */ - public AdvancedPie(String chartId, Callable> callable) { + public AdvancedPie(String chartId, Callable> callable) + { super(chartId); this.callable = callable; } @Override - protected JSONObject getChartData() throws Exception { + protected JSONObject getChartData() throws Exception + { JSONObject data = new JSONObject(); JSONObject values = new JSONObject(); Map map = callable.call(); - if (map == null || map.isEmpty()) { + if (map == null || map.isEmpty()) + { // Null = skip the chart return null; } boolean allSkipped = true; - for (Map.Entry entry : map.entrySet()) { - if (entry.getValue() == 0) { + for (Map.Entry entry : map.entrySet()) + { + if (entry.getValue() == 0) + { continue; // Skip this invalid } allSkipped = false; values.put(entry.getKey(), entry.getValue()); } - if (allSkipped) { + if (allSkipped) + { // Null = skip the chart return null; } @@ -455,44 +530,52 @@ public class Metrics { /** * Represents a custom drilldown pie. */ - public static class DrilldownPie extends CustomChart { + public static class DrilldownPie extends CustomChart + { private final Callable>> callable; /** * Class constructor. * - * @param chartId The id of the chart. + * @param chartId The id of the chart. * @param callable The callable which is used to request the chart data. */ - public DrilldownPie(String chartId, Callable>> callable) { + public DrilldownPie(String chartId, Callable>> callable) + { super(chartId); this.callable = callable; } @Override - public JSONObject getChartData() throws Exception { + public JSONObject getChartData() throws Exception + { JSONObject data = new JSONObject(); JSONObject values = new JSONObject(); Map> map = callable.call(); - if (map == null || map.isEmpty()) { + if (map == null || map.isEmpty()) + { // Null = skip the chart return null; } boolean reallyAllSkipped = true; - for (Map.Entry> entryValues : map.entrySet()) { + for (Map.Entry> entryValues : map.entrySet()) + { JSONObject value = new JSONObject(); boolean allSkipped = true; - for (Map.Entry valueEntry : map.get(entryValues.getKey()).entrySet()) { + for (Map.Entry valueEntry : map.get(entryValues.getKey()).entrySet()) + { value.put(valueEntry.getKey(), valueEntry.getValue()); allSkipped = false; } - if (!allSkipped) { + if (!allSkipped) + { reallyAllSkipped = false; values.put(entryValues.getKey(), value); } } - if (reallyAllSkipped) { + if (reallyAllSkipped) + { // Null = skip the chart return null; } @@ -504,26 +587,30 @@ public class Metrics { /** * Represents a custom single line chart. */ - public static class SingleLineChart extends CustomChart { + public static class SingleLineChart extends CustomChart + { private final Callable callable; /** * Class constructor. * - * @param chartId The id of the chart. + * @param chartId The id of the chart. * @param callable The callable which is used to request the chart data. */ - public SingleLineChart(String chartId, Callable callable) { + public SingleLineChart(String chartId, Callable callable) + { super(chartId); this.callable = callable; } @Override - protected JSONObject getChartData() throws Exception { + protected JSONObject getChartData() throws Exception + { JSONObject data = new JSONObject(); int value = callable.call(); - if (value == 0) { + if (value == 0) + { // Null = skip the chart return null; } @@ -536,39 +623,46 @@ public class Metrics { /** * Represents a custom multi line chart. */ - public static class MultiLineChart extends CustomChart { + public static class MultiLineChart extends CustomChart + { private final Callable> callable; /** * Class constructor. * - * @param chartId The id of the chart. + * @param chartId The id of the chart. * @param callable The callable which is used to request the chart data. */ - public MultiLineChart(String chartId, Callable> callable) { + public MultiLineChart(String chartId, Callable> callable) + { super(chartId); this.callable = callable; } @Override - protected JSONObject getChartData() throws Exception { + protected JSONObject getChartData() throws Exception + { JSONObject data = new JSONObject(); JSONObject values = new JSONObject(); Map map = callable.call(); - if (map == null || map.isEmpty()) { + if (map == null || map.isEmpty()) + { // Null = skip the chart return null; } boolean allSkipped = true; - for (Map.Entry entry : map.entrySet()) { - if (entry.getValue() == 0) { + for (Map.Entry entry : map.entrySet()) + { + if (entry.getValue() == 0) + { continue; // Skip this invalid } allSkipped = false; values.put(entry.getKey(), entry.getValue()); } - if (allSkipped) { + if (allSkipped) + { // Null = skip the chart return null; } @@ -581,31 +675,36 @@ public class Metrics { /** * Represents a custom simple bar chart. */ - public static class SimpleBarChart extends CustomChart { + public static class SimpleBarChart extends CustomChart + { private final Callable> callable; /** * Class constructor. * - * @param chartId The id of the chart. + * @param chartId The id of the chart. * @param callable The callable which is used to request the chart data. */ - public SimpleBarChart(String chartId, Callable> callable) { + public SimpleBarChart(String chartId, Callable> callable) + { super(chartId); this.callable = callable; } @Override - protected JSONObject getChartData() throws Exception { + protected JSONObject getChartData() throws Exception + { JSONObject data = new JSONObject(); JSONObject values = new JSONObject(); Map map = callable.call(); - if (map == null || map.isEmpty()) { + if (map == null || map.isEmpty()) + { // Null = skip the chart return null; } - for (Map.Entry entry : map.entrySet()) { + for (Map.Entry entry : map.entrySet()) + { JSONArray categoryValues = new JSONArray(); categoryValues.add(entry.getValue()); values.put(entry.getKey(), categoryValues); @@ -619,43 +718,51 @@ public class Metrics { /** * Represents a custom advanced bar chart. */ - public static class AdvancedBarChart extends CustomChart { + public static class AdvancedBarChart extends CustomChart + { private final Callable> callable; /** * Class constructor. * - * @param chartId The id of the chart. + * @param chartId The id of the chart. * @param callable The callable which is used to request the chart data. */ - public AdvancedBarChart(String chartId, Callable> callable) { + public AdvancedBarChart(String chartId, Callable> callable) + { super(chartId); this.callable = callable; } @Override - protected JSONObject getChartData() throws Exception { + protected JSONObject getChartData() throws Exception + { JSONObject data = new JSONObject(); JSONObject values = new JSONObject(); Map map = callable.call(); - if (map == null || map.isEmpty()) { + if (map == null || map.isEmpty()) + { // Null = skip the chart return null; } boolean allSkipped = true; - for (Map.Entry entry : map.entrySet()) { - if (entry.getValue().length == 0) { + for (Map.Entry entry : map.entrySet()) + { + if (entry.getValue().length == 0) + { continue; // Skip this invalid } allSkipped = false; JSONArray categoryValues = new JSONArray(); - for (int categoryValue : entry.getValue()) { + for (int categoryValue : entry.getValue()) + { categoryValues.add(categoryValue); } values.put(entry.getKey(), categoryValues); } - if (allSkipped) { + if (allSkipped) + { // Null = skip the chart return null; } diff --git a/supressions.xml b/supressions.xml index dfede587..7330506f 100644 --- a/supressions.xml +++ b/supressions.xml @@ -1,8 +1,8 @@ + "-//Puppy Crawl//DTD Suppressions 1.1//EN" + "http://www.puppycrawl.com/dtds/suppressions_1_1.dtd">