diff --git a/src/main/java/com/sk89q/worldguard/blacklist/Blacklist.java b/src/main/java/com/sk89q/worldguard/blacklist/Blacklist.java index 74bab4b2..5c66231d 100644 --- a/src/main/java/com/sk89q/worldguard/blacklist/Blacklist.java +++ b/src/main/java/com/sk89q/worldguard/blacklist/Blacklist.java @@ -41,10 +41,6 @@ * @author sk89q */ public abstract class Blacklist { - /** - * Logger. - */ - private static final Logger logger = Logger.getLogger("Minecraft.WorldGuard"); /** * List of entries by block ID. @@ -67,8 +63,11 @@ public abstract class Blacklist { private boolean useAsWhitelist; - public Blacklist(Boolean useAsWhitelist) { + private final Logger logger; + + public Blacklist(Boolean useAsWhitelist, Logger logger) { this.useAsWhitelist = useAsWhitelist; + this.logger = logger; } /** @@ -178,7 +177,7 @@ public void load(File file) throws IOException { } catch (NumberFormatException e) { id = getItemID(item.trim()); if (id == 0) { - logger.log(Level.WARNING, "WorldGuard: Unknown block name: " + logger.log(Level.WARNING, "Unknown block name: " + item); break; } diff --git a/src/main/java/com/sk89q/worldguard/blacklist/loggers/ConsoleLoggerHandler.java b/src/main/java/com/sk89q/worldguard/blacklist/loggers/ConsoleLoggerHandler.java index ca0c8d6c..fda3b34f 100644 --- a/src/main/java/com/sk89q/worldguard/blacklist/loggers/ConsoleLoggerHandler.java +++ b/src/main/java/com/sk89q/worldguard/blacklist/loggers/ConsoleLoggerHandler.java @@ -37,17 +37,15 @@ * @author sk89q */ public class ConsoleLoggerHandler implements BlacklistLoggerHandler { - /** - * Logger. - */ - private static final Logger logger = Logger.getLogger("Minecraft.WorldGuard"); private String worldName; + + private final Logger logger; - public ConsoleLoggerHandler(String worldName) - { - this.worldName = worldName; + public ConsoleLoggerHandler(String worldName, Logger logger) { + this.worldName = worldName; + this.logger = logger; } /** @@ -59,55 +57,55 @@ public void logEvent(BlacklistEvent event, String comment) { // Block break if (event instanceof BlockBreakBlacklistEvent) { BlockBreakBlacklistEvent evt = (BlockBreakBlacklistEvent)event; - logger.log(Level.INFO, "WorldGuard: [" + worldName + "] " + event.getPlayer().getName() + logger.log(Level.INFO, "[" + worldName + "] " + event.getPlayer().getName() + " tried to break " + getFriendlyItemName(evt.getType()) + (comment != null ? " (" + comment + ")" : "")); // Block place } else if (event instanceof BlockPlaceBlacklistEvent) { BlockPlaceBlacklistEvent evt = (BlockPlaceBlacklistEvent)event; - logger.log(Level.INFO, "WorldGuard: [" + worldName + "] " + event.getPlayer().getName() + logger.log(Level.INFO, "[" + worldName + "] " + event.getPlayer().getName() + " tried to place " + getFriendlyItemName(evt.getType()) + (comment != null ? " (" + comment + ")" : "")); // Block interact } else if (event instanceof BlockInteractBlacklistEvent) { BlockInteractBlacklistEvent evt = (BlockInteractBlacklistEvent)event; - logger.log(Level.INFO, "WorldGuard: [" + worldName + "] " + event.getPlayer().getName() + logger.log(Level.INFO, "[" + worldName + "] " + event.getPlayer().getName() + " tried to interact with " + getFriendlyItemName(evt.getType()) + (comment != null ? " (" + comment + ")" : "")); // Destroy with } else if (event instanceof DestroyWithBlacklistEvent) { DestroyWithBlacklistEvent evt = (DestroyWithBlacklistEvent)event; - logger.log(Level.INFO, "WorldGuard: [" + worldName + "] " + event.getPlayer().getName() + logger.log(Level.INFO, "[" + worldName + "] " + event.getPlayer().getName() + " tried to destroy with " + getFriendlyItemName(evt.getType()) + (comment != null ? " (" + comment + ")" : "")); // Acquire } else if (event instanceof ItemAcquireBlacklistEvent) { ItemAcquireBlacklistEvent evt = (ItemAcquireBlacklistEvent)event; - logger.log(Level.INFO, "WorldGuard: [" + worldName + "] " + event.getPlayer().getName() + logger.log(Level.INFO, "[" + worldName + "] " + event.getPlayer().getName() + " tried to acquire " + getFriendlyItemName(evt.getType()) + (comment != null ? " (" + comment + ")" : "")); // Drop } else if (event instanceof ItemDropBlacklistEvent) { ItemDropBlacklistEvent evt = (ItemDropBlacklistEvent)event; - logger.log(Level.INFO, "WorldGuard: [" + worldName + "] " + event.getPlayer().getName() + logger.log(Level.INFO, "[" + worldName + "] " + event.getPlayer().getName() + " tried to drop " + getFriendlyItemName(evt.getType()) + (comment != null ? " (" + comment + ")" : "")); // Use } else if (event instanceof ItemUseBlacklistEvent) { ItemUseBlacklistEvent evt = (ItemUseBlacklistEvent)event; - logger.log(Level.INFO, "WorldGuard: [" + worldName + "] " + event.getPlayer().getName() + logger.log(Level.INFO, "[" + worldName + "] " + event.getPlayer().getName() + " tried to use " + getFriendlyItemName(evt.getType()) + (comment != null ? " (" + comment + ")" : "")); // Unknown } else { - logger.log(Level.INFO, "WorldGuard: [" + worldName + "] " + event.getPlayer().getName() + logger.log(Level.INFO, "[" + worldName + "] " + event.getPlayer().getName() + " caught unknown event: " + event.getClass().getCanonicalName()); } } diff --git a/src/main/java/com/sk89q/worldguard/blacklist/loggers/DatabaseLoggerHandler.java b/src/main/java/com/sk89q/worldguard/blacklist/loggers/DatabaseLoggerHandler.java index bfe313c5..79c592a2 100644 --- a/src/main/java/com/sk89q/worldguard/blacklist/loggers/DatabaseLoggerHandler.java +++ b/src/main/java/com/sk89q/worldguard/blacklist/loggers/DatabaseLoggerHandler.java @@ -42,35 +42,33 @@ * @author sk89q */ public class DatabaseLoggerHandler implements BlacklistLoggerHandler { - /** - * Logger. - */ - private static final Logger logger = Logger.getLogger("Minecraft.WorldGuard"); /** * DSN. */ - private String dsn; + private final String dsn; /** * Username. */ - private String user; + private final String user; /** * Password. */ - private String pass; + private final String pass; /** * Table. */ - private String table; + private final String table; /** * World name. */ - private String worldName; + private final String worldName; /** * Database connection. */ private Connection conn; + + private final Logger logger; /** * Construct the object. @@ -81,12 +79,13 @@ public class DatabaseLoggerHandler implements BlacklistLoggerHandler { * @param table * @param worldName */ - public DatabaseLoggerHandler(String dsn, String user, String pass, String table, String worldName) { + public DatabaseLoggerHandler(String dsn, String user, String pass, String table, String worldName, Logger logger) { this.dsn = dsn; this.user = user; this.pass = pass; this.table = table; this.worldName = worldName; + this.logger = logger; } /** @@ -106,10 +105,8 @@ private Connection getConnection() throws SQLException { * Log an event to the database. * * @param event - * @param name - * @param x - * @param y - * @param z + * @param player + * @param pos * @param item * @param comment */ diff --git a/src/main/java/com/sk89q/worldguard/blacklist/loggers/FileLoggerHandler.java b/src/main/java/com/sk89q/worldguard/blacklist/loggers/FileLoggerHandler.java index 9d638769..ac9e8e9d 100644 --- a/src/main/java/com/sk89q/worldguard/blacklist/loggers/FileLoggerHandler.java +++ b/src/main/java/com/sk89q/worldguard/blacklist/loggers/FileLoggerHandler.java @@ -52,10 +52,6 @@ * @author sk89q */ public class FileLoggerHandler implements BlacklistLoggerHandler { - /** - * Logger. - */ - private static final Logger logger = Logger.getLogger("Minecraft.WorldGuard"); /** * Regex for patterns in the path. */ @@ -83,6 +79,8 @@ public class FileLoggerHandler implements BlacklistLoggerHandler { */ private TreeMap writers = new TreeMap(); + + private final Logger logger; /** * Construct the object. @@ -90,9 +88,10 @@ public class FileLoggerHandler implements BlacklistLoggerHandler { * @param pathPattern * @param worldName */ - public FileLoggerHandler(String pathPattern, String worldName) { + public FileLoggerHandler(String pathPattern, String worldName, Logger logger) { this.pathPattern = pathPattern; this.worldName = worldName; + this.logger = logger; } /** @@ -102,13 +101,14 @@ public FileLoggerHandler(String pathPattern, String worldName) { * @param cacheSize * @param worldName */ - public FileLoggerHandler(String pathPattern, int cacheSize, String worldName) { + public FileLoggerHandler(String pathPattern, int cacheSize, String worldName, Logger logger) { if (cacheSize < 1) { throw new IllegalArgumentException("Cache size cannot be less than 1"); } this.pathPattern = pathPattern; this.cacheSize = cacheSize; this.worldName = worldName; + this.logger = logger; } /** diff --git a/src/main/java/com/sk89q/worldguard/bukkit/BukkitBlacklist.java b/src/main/java/com/sk89q/worldguard/bukkit/BukkitBlacklist.java index 8d0c7ded..7c19c600 100644 --- a/src/main/java/com/sk89q/worldguard/bukkit/BukkitBlacklist.java +++ b/src/main/java/com/sk89q/worldguard/bukkit/BukkitBlacklist.java @@ -25,7 +25,7 @@ public class BukkitBlacklist extends Blacklist { private WorldGuardPlugin plugin; public BukkitBlacklist(Boolean useAsWhitelist, WorldGuardPlugin plugin) { - super(useAsWhitelist); + super(useAsWhitelist, plugin.getLogger()); this.plugin = plugin; } diff --git a/src/main/java/com/sk89q/worldguard/bukkit/ConfigurationManager.java b/src/main/java/com/sk89q/worldguard/bukkit/ConfigurationManager.java index 9252991f..a61d443c 100644 --- a/src/main/java/com/sk89q/worldguard/bukkit/ConfigurationManager.java +++ b/src/main/java/com/sk89q/worldguard/bukkit/ConfigurationManager.java @@ -129,7 +129,7 @@ public void load() { try { config.load(); } catch (IOException e) { - WorldGuardPlugin.logger.severe("Error reading configuration for global config: "); + plugin.getLogger().severe("Error reading configuration for global config: "); e.printStackTrace(); } @@ -160,7 +160,7 @@ public void load() { } if (!config.save()) { - WorldGuardPlugin.logger.severe("Error saving configuration!"); + plugin.getLogger().severe("Error saving configuration!"); } } diff --git a/src/main/java/com/sk89q/worldguard/bukkit/LegacyWorldGuardMigration.java b/src/main/java/com/sk89q/worldguard/bukkit/LegacyWorldGuardMigration.java index 269851d1..a4ed174a 100644 --- a/src/main/java/com/sk89q/worldguard/bukkit/LegacyWorldGuardMigration.java +++ b/src/main/java/com/sk89q/worldguard/bukkit/LegacyWorldGuardMigration.java @@ -40,10 +40,6 @@ * @author sk89q */ public class LegacyWorldGuardMigration { - /** - * Logger for messages. - */ - protected static final Logger logger = Logger.getLogger("Minecraft.WorldGuard"); /** * Port over the blacklist. @@ -59,7 +55,7 @@ public static void migrateBlacklist(WorldGuardPlugin plugin) { File newFile = new File(plugin.getDataFolder(), newPath); if (!newFile.exists() && oldFile.exists()) { - logger.warning("WorldGuard: WorldGuard will now update your blacklist " + plugin.getLogger().warning("WorldGuard will now update your blacklist " + "from an older version of WorldGuard."); // Need to make root directories @@ -69,9 +65,9 @@ public static void migrateBlacklist(WorldGuardPlugin plugin) { oldFile.renameTo(new File(plugin.getDataFolder(), "blacklist.txt.old")); } else { - logger.warning("WorldGuard: blacklist.txt has been converted " + + plugin.getLogger().warning("blacklist.txt has been converted " + "for the main world at " + newPath + ""); - logger.warning("WorldGuard: Your other worlds currently have no " + + plugin.getLogger().warning("Your other worlds currently have no " + "blacklist defined!"); } @@ -88,7 +84,7 @@ public static void migrateRegions(WorldGuardPlugin plugin) { File oldDatabase = new File(plugin.getDataFolder(), "regions.txt"); if (!oldDatabase.exists()) return; - logger.info("WorldGuard: The regions database has changed in 5.x. " + plugin.getLogger().info("The regions database has changed in 5.x. " + "Your old regions database will be converted to the new format " + "and set as your primary world's database."); @@ -96,7 +92,7 @@ public static void migrateRegions(WorldGuardPlugin plugin) { RegionManager mgr = plugin.getGlobalRegionManager().get(w); // First load up the old database using the CSV loader - CSVDatabase db = new CSVDatabase(oldDatabase); + CSVDatabase db = new CSVDatabase(oldDatabase, plugin.getLogger()); db.load(); // Then save the new database @@ -105,9 +101,9 @@ public static void migrateRegions(WorldGuardPlugin plugin) { oldDatabase.renameTo(new File(plugin.getDataFolder(), "regions.txt.old")); - logger.info("WorldGuard: Regions database converted!"); + plugin.getLogger().info("Regions database converted!"); } catch (ProtectionDatabaseException e) { - logger.warning("WorldGuard: Failed to load regions: " + plugin.getLogger().warning("Failed to load regions: " + e.getMessage()); } } diff --git a/src/main/java/com/sk89q/worldguard/bukkit/WorldConfiguration.java b/src/main/java/com/sk89q/worldguard/bukkit/WorldConfiguration.java index 9d62466e..4f7301f7 100644 --- a/src/main/java/com/sk89q/worldguard/bukkit/WorldConfiguration.java +++ b/src/main/java/com/sk89q/worldguard/bukkit/WorldConfiguration.java @@ -64,9 +64,6 @@ public class WorldConfiguration { "# Remove the {} and add your own entries.\r\n" + "#\r\n"; - private static final Logger logger = Logger - .getLogger("Minecraft.WorldGuard"); - private WorldGuardPlugin plugin; private String worldName; @@ -177,7 +174,7 @@ public WorldConfiguration(WorldGuardPlugin plugin, String worldName, YAMLProcess config = new YAMLProcessor(this.configFile, true, YAMLFormat.EXTENDED); loadConfiguration(); - logger.info("WorldGuard: Loaded configuration for world '" + worldName + '"'); + plugin.getLogger().info("Loaded configuration for world '" + worldName + '"'); } private boolean getBoolean(String node, boolean def) { @@ -279,7 +276,7 @@ private void loadConfiguration() { try { config.load(); } catch (IOException e) { - WorldGuardPlugin.logger.severe("Error reading configuration for world " + worldName + ": "); + plugin.getLogger().severe("Error reading configuration for world " + worldName + ": "); e.printStackTrace(); } @@ -384,7 +381,7 @@ private void loadConfiguration() { CreatureType creature = CreatureType.fromName(creatureName); if (creature == null) { - logger.warning("WorldGuard: Unknown mob type '" + creatureName + "'"); + plugin.getLogger().warning("Unknown mob type '" + creatureName + "'"); } else { blockCreatureSpawn.add(creature); } @@ -424,52 +421,52 @@ private void loadConfiguration() { this.blacklist = null; } else { this.blacklist = blist; - logger.log(Level.INFO, "WorldGuard: Blacklist loaded."); + plugin.getLogger().log(Level.INFO, "Blacklist loaded."); BlacklistLogger blacklistLogger = blist.getLogger(); if (logDatabase) { - blacklistLogger.addHandler(new DatabaseLoggerHandler(dsn, user, pass, table, worldName)); + blacklistLogger.addHandler(new DatabaseLoggerHandler(dsn, user, pass, table, worldName, plugin.getLogger())); } if (logConsole) { - blacklistLogger.addHandler(new ConsoleLoggerHandler(worldName)); + blacklistLogger.addHandler(new ConsoleLoggerHandler(worldName, plugin.getLogger())); } if (logFile) { FileLoggerHandler handler = - new FileLoggerHandler(logFilePattern, logFileCacheSize, worldName); + new FileLoggerHandler(logFilePattern, logFileCacheSize, worldName, plugin.getLogger()); blacklistLogger.addHandler(handler); } } } catch (FileNotFoundException e) { - logger.log(Level.WARNING, "WorldGuard blacklist does not exist."); + plugin.getLogger().log(Level.WARNING, "WorldGuard blacklist does not exist."); } catch (IOException e) { - logger.log(Level.WARNING, "Could not load WorldGuard blacklist: " + plugin.getLogger().log(Level.WARNING, "Could not load WorldGuard blacklist: " + e.getMessage()); } // Print an overview of settings if (getBoolean("summary-on-start", true)) { - logger.log(Level.INFO, blockTNTExplosions - ? "WorldGuard: (" + worldName + ") TNT ignition is blocked." - : "WorldGuard: (" + worldName + ") TNT ignition is PERMITTED."); - logger.log(Level.INFO, blockLighter - ? "WorldGuard: (" + worldName + ") Lighters are blocked." - : "WorldGuard: (" + worldName + ") Lighters are PERMITTED."); - logger.log(Level.INFO, preventLavaFire - ? "WorldGuard: (" + worldName + ") Lava fire is blocked." - : "WorldGuard: (" + worldName + ") Lava fire is PERMITTED."); + plugin.getLogger().log(Level.INFO, blockTNTExplosions + ? "(" + worldName + ") TNT ignition is blocked." + : "(" + worldName + ") TNT ignition is PERMITTED."); + plugin.getLogger().log(Level.INFO, blockLighter + ? "(" + worldName + ") Lighters are blocked." + : "(" + worldName + ") Lighters are PERMITTED."); + plugin.getLogger().log(Level.INFO, preventLavaFire + ? "(" + worldName + ") Lava fire is blocked." + : "(" + worldName + ") Lava fire is PERMITTED."); if (disableFireSpread) { - logger.log(Level.INFO, "WorldGuard: (" + worldName + ") All fire spread is disabled."); + plugin.getLogger().log(Level.INFO, "(" + worldName + ") All fire spread is disabled."); } else { if (disableFireSpreadBlocks.size() > 0) { - logger.log(Level.INFO, "WorldGuard: (" + worldName + plugin.getLogger().log(Level.INFO, "(" + worldName + ") Fire spread is limited to " + disableFireSpreadBlocks.size() + " block types."); } else { - logger.log(Level.INFO, "WorldGuard: (" + worldName + plugin.getLogger().log(Level.INFO, "(" + worldName + ") Fire spread is UNRESTRICTED."); } } diff --git a/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardBlockListener.java b/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardBlockListener.java index cf312b08..8fcb7904 100644 --- a/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardBlockListener.java +++ b/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardBlockListener.java @@ -65,11 +65,6 @@ * @author sk89q */ public class WorldGuardBlockListener implements Listener { - /** - * Logger for messages. - */ - @SuppressWarnings("unused") - private static final Logger logger = Logger.getLogger("Minecraft.WorldGuard"); private WorldGuardPlugin plugin; diff --git a/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardEntityListener.java b/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardEntityListener.java index 45bb14b9..92d690eb 100644 --- a/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardEntityListener.java +++ b/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardEntityListener.java @@ -79,11 +79,6 @@ * @author sk89q */ public class WorldGuardEntityListener implements Listener { - /** - * Logger for messages. - */ - @SuppressWarnings("unused") - private static final Logger logger = Logger.getLogger("Minecraft.WorldGuard"); private WorldGuardPlugin plugin; diff --git a/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardPlayerListener.java b/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardPlayerListener.java index 73a1495c..d76fd580 100644 --- a/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardPlayerListener.java +++ b/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardPlayerListener.java @@ -75,11 +75,6 @@ */ public class WorldGuardPlayerListener implements Listener { - /** - * Logger for messages. - */ - private static final Logger logger = Logger.getLogger("Minecraft.WorldGuard"); - private WorldGuardPlugin plugin; /** @@ -252,7 +247,7 @@ public void onPlayerJoin(PlayerJoinEvent event) { } if (removed > 10) { - logger.info("WG Halt-Act: " + removed + " entities (>10) auto-removed from " + plugin.getLogger().info("Halt-Act: " + removed + " entities (>10) auto-removed from " + player.getWorld().toString()); } } diff --git a/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardPlugin.java b/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardPlugin.java index a11df139..8c69c77b 100644 --- a/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardPlugin.java +++ b/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardPlugin.java @@ -33,9 +33,9 @@ import java.util.logging.Logger; import java.util.zip.ZipEntry; +import com.sk89q.bukkit.util.CommandsManagerRegistration; import com.sk89q.minecraft.util.commands.*; import com.sk89q.wepif.PermissionsResolverManager; -import com.sk89q.worldguard.util.CommandRegistration; import org.bukkit.ChatColor; import org.bukkit.Location; import org.bukkit.World; @@ -62,10 +62,6 @@ * @author sk89q */ public class WorldGuardPlugin extends JavaPlugin { - /** - * Logger for messages. - */ - static final Logger logger = Logger.getLogger("Minecraft.WorldGuard"); /** * Manager for commands. This automatically handles nested commands, @@ -116,7 +112,7 @@ public void onEnable() { commands.setInjector(new SimpleInjector(this)); // Register command classes - final CommandRegistration reg = new CommandRegistration(this, commands); + final CommandsManagerRegistration reg = new CommandsManagerRegistration(this, commands); reg.register(ToggleCommands.class); reg.register(ProtectionCommands.class); @@ -185,8 +181,6 @@ public void run() { } } } - - logger.info("WorldGuard " + this.getDescription().getVersion() + " enabled."); } /** @@ -196,8 +190,6 @@ public void onDisable() { globalRegionManager.unload(); configuration.unload(); this.getServer().getScheduler().cancelTasks(this); - - logger.info("WorldGuard " + getDescription().getVersion() + " disabled."); } /** @@ -693,7 +685,7 @@ public void createDefaultConfiguration(File actual, if (copy == null) throw new FileNotFoundException(); input = file.getInputStream(copy); } catch (IOException e) { - logger.severe(getDescription().getName() + ": Unable to read default configuration: " + defaultName); + getLogger().severe("Unable to read default configuration: " + defaultName); } if (input != null) { @@ -707,7 +699,7 @@ public void createDefaultConfiguration(File actual, output.write(buf, 0, length); } - logger.info("WorldGuard: Default configuration file written: " + getLogger().info("Default configuration file written: " + actual.getAbsolutePath()); } catch (IOException e) { e.printStackTrace(); diff --git a/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardVehicleListener.java b/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardVehicleListener.java index 4d264a8c..b1d10009 100644 --- a/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardVehicleListener.java +++ b/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardVehicleListener.java @@ -28,12 +28,6 @@ public class WorldGuardVehicleListener implements Listener { - /** - * Logger for messages. - */ - @SuppressWarnings("unused") - private static final Logger logger = Logger.getLogger("Minecraft.WorldGuard"); - private WorldGuardPlugin plugin; /** diff --git a/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardWeatherListener.java b/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardWeatherListener.java index 0a259c39..dc001f13 100644 --- a/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardWeatherListener.java +++ b/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardWeatherListener.java @@ -36,12 +36,6 @@ public class WorldGuardWeatherListener implements Listener { - /** - * Logger for messages. - */ - @SuppressWarnings("unused") - private static final Logger logger = Logger.getLogger("Minecraft.WorldGuard"); - /** * Plugin. */ diff --git a/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardWorldListener.java b/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardWorldListener.java index 4d01eb79..7d5000c5 100644 --- a/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardWorldListener.java +++ b/src/main/java/com/sk89q/worldguard/bukkit/WorldGuardWorldListener.java @@ -16,11 +16,6 @@ public class WorldGuardWorldListener implements Listener { - /** - * Logger for messages. - */ - private static final Logger logger = Logger.getLogger("Minecraft.WorldGuard"); - private WorldGuardPlugin plugin; /** @@ -57,7 +52,7 @@ public void onChunkLoad(ChunkLoadEvent event) { } if (removed > 50) { - logger.info("WG Halt-Act: " + removed + " entities (>50) auto-removed from " + plugin.getLogger().info("Halt-Act: " + removed + " entities (>50) auto-removed from " + event.getChunk().toString()); } } diff --git a/src/main/java/com/sk89q/worldguard/protection/GlobalRegionManager.java b/src/main/java/com/sk89q/worldguard/protection/GlobalRegionManager.java index b7724be2..1102af07 100644 --- a/src/main/java/com/sk89q/worldguard/protection/GlobalRegionManager.java +++ b/src/main/java/com/sk89q/worldguard/protection/GlobalRegionManager.java @@ -51,8 +51,6 @@ */ public class GlobalRegionManager { - private static final Logger logger = Logger.getLogger("Minecraft.WorldGuard"); - /** * Reference to the plugin. */ @@ -141,12 +139,12 @@ public RegionManager load(World world) { try { if (!config.useSqlDatabase) { file = getPath(name); - database = new YAMLDatabase(file); + database = new YAMLDatabase(file, plugin.getLogger()); // Store the last modification date so we can track changes lastModified.put(name, file.lastModified()); } else { - database = new MySQLDatabase(config, name); + database = new MySQLDatabase(config, name, plugin.getLogger()); } // Create a manager @@ -155,22 +153,22 @@ public RegionManager load(World world) { managers.put(name, manager); manager.load(); - logger.info("WorldGuard: " + manager.getRegions().size() + plugin.getLogger().info(manager.getRegions().size() + " regions loaded for '" + name + "'"); return manager; } catch (ProtectionDatabaseException e) { - String logStr = "WorldGuard: Failed to load regions from "; + String logStr = "Failed to load regions from "; if (config.useSqlDatabase) { logStr += "SQL Database <" + config.sqlDsn + "> "; } else { logStr += "file \"" + file + "\" "; } - logger.info(logStr + " : " + e.getMessage()); + plugin.getLogger().info(logStr + " : " + e.getMessage()); e.printStackTrace(); } catch (Exception e) { - logger.info("WorldGuard: Error loading regions for world \"" + plugin.getLogger().info("Error loading regions for world \"" + name + "\": " + e.toString() + "\n\t" + e.getMessage()); e.printStackTrace(); } diff --git a/src/main/java/com/sk89q/worldguard/protection/databases/CSVDatabase.java b/src/main/java/com/sk89q/worldguard/protection/databases/CSVDatabase.java index 47b40a03..48a4785c 100644 --- a/src/main/java/com/sk89q/worldguard/protection/databases/CSVDatabase.java +++ b/src/main/java/com/sk89q/worldguard/protection/databases/CSVDatabase.java @@ -48,12 +48,12 @@ * @author sk89q */ public class CSVDatabase extends AbstractProtectionDatabase { - private static Logger logger = Logger.getLogger("Minecraft.WorldGuard"); + private final Logger logger; /** * References the CSV file. */ - private File file; + private final File file; /** * Holds the list of regions. */ @@ -65,8 +65,9 @@ public class CSVDatabase extends AbstractProtectionDatabase { * * @param file */ - public CSVDatabase(File file) { + public CSVDatabase(File file, Logger logger) { this.file = file; + this.logger = logger; } /** diff --git a/src/main/java/com/sk89q/worldguard/protection/databases/MySQLDatabase.java b/src/main/java/com/sk89q/worldguard/protection/databases/MySQLDatabase.java index f8c9677a..37d42381 100755 --- a/src/main/java/com/sk89q/worldguard/protection/databases/MySQLDatabase.java +++ b/src/main/java/com/sk89q/worldguard/protection/databases/MySQLDatabase.java @@ -48,8 +48,7 @@ import com.sk89q.worldguard.protection.regions.ProtectedRegion.CircularInheritanceException; public class MySQLDatabase extends AbstractProtectionDatabase { - - private static Logger logger = Logger.getLogger("Minecraft.WorldGuard"); + private final Logger logger; private Map regions; @@ -58,15 +57,16 @@ public class MySQLDatabase extends AbstractProtectionDatabase { private Map globalRegions; private Map parentSets; - private ConfigurationManager config; + private final ConfigurationManager config; private Connection conn; private String world; private int worldDbId = -1; // The database will never have an id of -1; - public MySQLDatabase(ConfigurationManager config, String world) throws ProtectionDatabaseException { + public MySQLDatabase(ConfigurationManager config, String world, Logger logger) throws ProtectionDatabaseException { this.config = config; this.world = world; + this.logger = logger; try { connect(); @@ -264,6 +264,7 @@ private void loadGlobal() { Throwable t = ex.getCause(); while (t != null) { logger.warning("\t\tCause: " + t.getMessage()); + t = t.getCause(); } } @@ -336,6 +337,7 @@ private void loadCuboid() { Throwable t = ex.getCause(); while (t != null) { logger.warning("\t\tCause: " + t.getMessage()); + t = t.getCause(); } } @@ -409,6 +411,7 @@ private void loadPoly2d() { Throwable t = ex.getCause(); while (t != null) { logger.warning("\t\tCause: " + t.getMessage()); + t = t.getCause(); } } diff --git a/src/main/java/com/sk89q/worldguard/protection/databases/YAMLDatabase.java b/src/main/java/com/sk89q/worldguard/protection/databases/YAMLDatabase.java index 5f80d589..68847d76 100644 --- a/src/main/java/com/sk89q/worldguard/protection/databases/YAMLDatabase.java +++ b/src/main/java/com/sk89q/worldguard/protection/databases/YAMLDatabase.java @@ -47,12 +47,12 @@ public class YAMLDatabase extends AbstractProtectionDatabase { - private static Logger logger = Logger.getLogger("Minecraft.WorldGuard"); - private YAMLProcessor config; private Map regions; + private final Logger logger; - public YAMLDatabase(File file) throws ProtectionDatabaseException, FileNotFoundException { + public YAMLDatabase(File file, Logger logger) throws ProtectionDatabaseException, FileNotFoundException { + this.logger = logger; if (!file.exists()) { // shouldn't be necessary, but check anyways try { file.createNewFile(); diff --git a/src/main/java/com/sk89q/worldguard/protection/databases/migrators/MySQLToYAMLMigrator.java b/src/main/java/com/sk89q/worldguard/protection/databases/migrators/MySQLToYAMLMigrator.java index a9c84304..5ac22f96 100644 --- a/src/main/java/com/sk89q/worldguard/protection/databases/migrators/MySQLToYAMLMigrator.java +++ b/src/main/java/com/sk89q/worldguard/protection/databases/migrators/MySQLToYAMLMigrator.java @@ -72,7 +72,7 @@ protected Set getWorldsFromOld() { protected Map getRegionsForWorldFromOld(String world) throws MigrationException { ProtectionDatabase oldDatabase; try { - oldDatabase = new MySQLDatabase(plugin.getGlobalStateManager(), world); + oldDatabase = new MySQLDatabase(plugin.getGlobalStateManager(), world, plugin.getLogger()); oldDatabase.load(); } catch (ProtectionDatabaseException e) { throw new MigrationException((Exception) e); @@ -87,7 +87,7 @@ protected ProtectionDatabase getNewWorldStorage(String world) throws MigrationEx File file = new File(plugin.getDataFolder(), "worlds" + File.separator + world + File.separator + "regions.yml"); - return new YAMLDatabase(file); + return new YAMLDatabase(file, plugin.getLogger()); } catch (FileNotFoundException e) { throw new MigrationException((Exception) e); } catch (ProtectionDatabaseException e) { diff --git a/src/main/java/com/sk89q/worldguard/protection/databases/migrators/YAMLToMySQLMigrator.java b/src/main/java/com/sk89q/worldguard/protection/databases/migrators/YAMLToMySQLMigrator.java index a4c00082..403a0e79 100644 --- a/src/main/java/com/sk89q/worldguard/protection/databases/migrators/YAMLToMySQLMigrator.java +++ b/src/main/java/com/sk89q/worldguard/protection/databases/migrators/YAMLToMySQLMigrator.java @@ -63,7 +63,7 @@ protected Set getWorldsFromOld() { protected Map getRegionsForWorldFromOld(String world) throws MigrationException { ProtectionDatabase oldDatabase; try { - oldDatabase = new YAMLDatabase(this.regionYamlFiles.get(world)); + oldDatabase = new YAMLDatabase(this.regionYamlFiles.get(world), plugin.getLogger()); oldDatabase.load(); } catch (FileNotFoundException e) { throw new MigrationException((Exception) e); @@ -77,7 +77,7 @@ protected Map getRegionsForWorldFromOld(String world) t @Override protected ProtectionDatabase getNewWorldStorage(String world) throws MigrationException { try { - return new MySQLDatabase(plugin.getGlobalStateManager(), world); + return new MySQLDatabase(plugin.getGlobalStateManager(), world, plugin.getLogger()); } catch (ProtectionDatabaseException e) { throw new MigrationException((Exception) e); } diff --git a/src/main/java/com/sk89q/worldguard/util/CommandRegistration.java b/src/main/java/com/sk89q/worldguard/util/CommandRegistration.java deleted file mode 100644 index 639b9109..00000000 --- a/src/main/java/com/sk89q/worldguard/util/CommandRegistration.java +++ /dev/null @@ -1,139 +0,0 @@ -/* - * WorldGuard - * Copyright (C) 2011 sk89q - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - */ - -package com.sk89q.worldguard.util; - -import com.sk89q.minecraft.util.commands.Command; -import com.sk89q.minecraft.util.commands.CommandsManager; -import org.bukkit.Bukkit; -import org.bukkit.command.CommandMap; -import org.bukkit.command.CommandSender; -import org.bukkit.command.SimpleCommandMap; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.PlayerCommandPreprocessEvent; -import org.bukkit.plugin.Plugin; - -import java.util.*; - -/** - * A helper class for dynamic command registration, including support for fallback methods. - */ -public class CommandRegistration { - private final Plugin plugin; - private final CommandsManager commands; - private CommandMap fallbackCommands; - - public CommandRegistration(Plugin plugin, CommandsManager commands) { - this.plugin = plugin; - this.commands = commands; - } - - public boolean register(Class clazz) { - List registered = commands.registerAndReturn(clazz); - CommandMap commandMap = getCommandMap(); - if (registered == null || commandMap == null) { - return false; - } - for (Command command : registered) { - commandMap.register(plugin.getDescription().getName(), new DynamicPluginCommand(command, plugin)); - } - return true; - } - - private CommandMap getCommandMap() { - CommandMap commandMap = ReflectionUtil.getField(plugin.getServer().getPluginManager(), "commandMap"); - if (commandMap == null) { - if (fallbackCommands != null) { - commandMap = fallbackCommands; - } else { - Bukkit.getServer().getLogger().warning(plugin.getDescription().getName() + - ": Could not retrieve server CommandMap! Please report to http://redmine.sk89q.com"); - fallbackCommands = commandMap = new SimpleCommandMap(Bukkit.getServer()); - Bukkit.getServer().getPluginManager().registerEvents(new FallbackRegistrationListener(fallbackCommands), plugin); - } - } - return commandMap; - } - - public boolean unregisterCommands() { - CommandMap commandMap = getCommandMap(); - List toRemove = new ArrayList(); - Map knownCommands = ReflectionUtil.getField(commandMap, "knownCommands"); - Set aliases = ReflectionUtil.getField(commandMap, "aliases"); - if (knownCommands == null || aliases == null) { - return false; - } - for (Iterator i = knownCommands.values().iterator(); i.hasNext();) { - org.bukkit.command.Command cmd = i.next(); - if (cmd instanceof DynamicPluginCommand && ((DynamicPluginCommand) cmd).getPlugin().equals(plugin)) { - i.remove(); - for (String alias : cmd.getAliases()) { - org.bukkit.command.Command aliasCmd = knownCommands.get(alias); - if (cmd.equals(aliasCmd)) { - aliases.remove(alias); - toRemove.add(alias); - } - } - } - } - for (String string : toRemove) { - knownCommands.remove(string); - } - return true; - } - - public static class DynamicPluginCommand extends org.bukkit.command.Command { - - protected final Plugin plugin; - - public DynamicPluginCommand(Command command, Plugin plugin) { - super(command.aliases()[0], command.desc(), command.usage(), Arrays.asList(command.aliases())); - this.plugin = plugin; - } - - @Override - public boolean execute(CommandSender sender, String label, String[] args) { - return plugin.onCommand(sender, this, label, args); - } - - public Plugin getPlugin() { - return plugin; - } - } - - public static class FallbackRegistrationListener implements Listener { - - private final CommandMap commandRegistration; - - public FallbackRegistrationListener(CommandMap commandRegistration) { - this.commandRegistration = commandRegistration; - } - - @EventHandler - public void onPlayerCommandPreprocess(PlayerCommandPreprocessEvent event) { - if (event.isCancelled()) { - return; - } - - if (commandRegistration.dispatch(event.getPlayer(), event.getMessage())) { - event.setCancelled(true); - } - } - } -}