From 4a5c431163098bd64cfe227eeaf2bb12906c6840 Mon Sep 17 00:00:00 2001 From: ElgarL Date: Tue, 14 Feb 2012 13:01:39 +0000 Subject: Depreciate PlayerTeleportEvent as it's all handled in PlayerChangedWorldEvent. --- EssentialsGroupManager/src/Changelog.txt | 3 ++- .../anjocaido/groupmanager/permissions/BukkitPermissions.java | 10 +--------- 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/EssentialsGroupManager/src/Changelog.txt b/EssentialsGroupManager/src/Changelog.txt index b79d56d07..fc64363d1 100644 --- a/EssentialsGroupManager/src/Changelog.txt +++ b/EssentialsGroupManager/src/Changelog.txt @@ -138,4 +138,5 @@ v 1.9: - Prevent getAllPlayersPermissions() processing a group more than once. Improves performance when using complex inheritance structures. - Fix world mirroring so it correctly creates data files and data sources for partially mirrored worlds. - Fixed world mirroring so it returns the correct data for the requested world. - - Change Service registration to register WorldsHolder instead of AnjoPermissionsHandler. This is the correct entry point for all data. \ No newline at end of file + - Change Service registration to register WorldsHolder instead of AnjoPermissionsHandler. This is the correct entry point for all data. + - Depreciate PlayerTeleportEvent as it's all handled in PlayerChangedWorldEvent. \ No newline at end of file diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java index 1409f774d..053adc9ed 100644 --- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java +++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java @@ -40,7 +40,6 @@ import org.bukkit.event.player.PlayerKickEvent; import org.bukkit.event.player.PlayerPortalEvent; import org.bukkit.event.player.PlayerQuitEvent; import org.bukkit.event.player.PlayerRespawnEvent; -import org.bukkit.event.player.PlayerTeleportEvent; import org.bukkit.event.server.PluginDisableEvent; import org.bukkit.event.server.PluginEnableEvent; import org.bukkit.permissions.Permission; @@ -361,7 +360,7 @@ public class BukkitPermissions { } @EventHandler(priority = EventPriority.LOWEST) - public void onPlayerChangeWorld(PlayerChangedWorldEvent event) { // will portal into another world + public void onPlayerChangeWorld(PlayerChangedWorldEvent event) { // has changed worlds updatePermissions(event.getPlayer(), event.getPlayer().getWorld().getName()); } @@ -377,13 +376,6 @@ public class BukkitPermissions { updatePermissions(event.getPlayer(), event.getRespawnLocation().getWorld().getName()); } - @EventHandler(priority = EventPriority.LOWEST) - public void onPlayerTeleport(PlayerTeleportEvent event) { // can be teleported into another world - if ((event.getTo() != null) && (event.getPlayer() != null) && (!event.getFrom().getWorld().equals(event.getTo().getWorld()))) { // only if world actually changed - updatePermissions(event.getPlayer(), event.getTo().getWorld().getName()); - } - } - @EventHandler(priority = EventPriority.LOWEST) public void onPlayerQuit(PlayerQuitEvent event) { if (!GroupManager.isLoaded()) -- cgit v1.2.3 From 59679e04232e59a65655d34b7ac47afd4d1651ac Mon Sep 17 00:00:00 2001 From: ElgarL Date: Wed, 15 Feb 2012 06:15:31 +0000 Subject: Depreciate PlayerTeleportEvent, PlayerRespawnEvent and PlayerPortalEvent as it's all handled in PlayerChangedWorldEvent. This also means we no longer update permissions before we change worlds. --- EssentialsGroupManager/src/Changelog.txt | 3 ++- .../groupmanager/permissions/BukkitPermissions.java | 20 ++++++-------------- 2 files changed, 8 insertions(+), 15 deletions(-) diff --git a/EssentialsGroupManager/src/Changelog.txt b/EssentialsGroupManager/src/Changelog.txt index fc64363d1..4cfc241c4 100644 --- a/EssentialsGroupManager/src/Changelog.txt +++ b/EssentialsGroupManager/src/Changelog.txt @@ -139,4 +139,5 @@ v 1.9: - Fix world mirroring so it correctly creates data files and data sources for partially mirrored worlds. - Fixed world mirroring so it returns the correct data for the requested world. - Change Service registration to register WorldsHolder instead of AnjoPermissionsHandler. This is the correct entry point for all data. - - Depreciate PlayerTeleportEvent as it's all handled in PlayerChangedWorldEvent. \ No newline at end of file + - Depreciate PlayerTeleportEvent, PlayerRespawnEvent and PlayerPortalEvent as it's all handled in PlayerChangedWorldEvent. + This also means we no longer update permissions before we change worlds. \ No newline at end of file diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java index 053adc9ed..ba4a22f12 100644 --- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java +++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java @@ -37,9 +37,7 @@ import org.bukkit.event.Listener; import org.bukkit.event.player.PlayerChangedWorldEvent; import org.bukkit.event.player.PlayerJoinEvent; import org.bukkit.event.player.PlayerKickEvent; -import org.bukkit.event.player.PlayerPortalEvent; import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.event.player.PlayerRespawnEvent; import org.bukkit.event.server.PluginDisableEvent; import org.bukkit.event.server.PluginEnableEvent; import org.bukkit.permissions.Permission; @@ -345,6 +343,12 @@ public class BukkitPermissions { this.updatePermissions(player, null); } + /** + * Player events tracked to cause Superperms updates + * + * @author Steve + * + */ protected class PlayerEvents implements Listener { @EventHandler(priority = EventPriority.LOWEST) @@ -364,18 +368,6 @@ public class BukkitPermissions { updatePermissions(event.getPlayer(), event.getPlayer().getWorld().getName()); } - @EventHandler(priority = EventPriority.LOWEST) - public void onPlayerPortal(PlayerPortalEvent event) { // will portal into another world - if ((event.getTo() != null) && (!event.getFrom().getWorld().equals(event.getTo().getWorld()))) { // only if world actually changed - updatePermissions(event.getPlayer(), event.getTo().getWorld().getName()); - } - } - - @EventHandler(priority = EventPriority.LOWEST) - public void onPlayerRespawn(PlayerRespawnEvent event) { // can be respawned in another world - updatePermissions(event.getPlayer(), event.getRespawnLocation().getWorld().getName()); - } - @EventHandler(priority = EventPriority.LOWEST) public void onPlayerQuit(PlayerQuitEvent event) { if (!GroupManager.isLoaded()) -- cgit v1.2.3 From 3fc6bb4e4ff070713b1f48fb70e57c3d97c73490 Mon Sep 17 00:00:00 2001 From: ElgarL Date: Wed, 15 Feb 2012 06:16:33 +0000 Subject: comment name change --- .../src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java index ba4a22f12..0b6148900 100644 --- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java +++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/permissions/BukkitPermissions.java @@ -346,7 +346,7 @@ public class BukkitPermissions { /** * Player events tracked to cause Superperms updates * - * @author Steve + * @author ElgarL * */ protected class PlayerEvents implements Listener { -- cgit v1.2.3 From 3d1c0fd1578f0ee72cc7f65500f49f30f379ac54 Mon Sep 17 00:00:00 2001 From: ElgarL Date: Sat, 18 Feb 2012 09:05:28 +0000 Subject: A command of '/manload' with no world arguments now performs a full reload of GM. --- EssentialsGroupManager/src/Changelog.txt | 3 +- .../org/anjocaido/groupmanager/GroupManager.java | 54 +++++++++------------- 2 files changed, 23 insertions(+), 34 deletions(-) diff --git a/EssentialsGroupManager/src/Changelog.txt b/EssentialsGroupManager/src/Changelog.txt index 4cfc241c4..31d40413f 100644 --- a/EssentialsGroupManager/src/Changelog.txt +++ b/EssentialsGroupManager/src/Changelog.txt @@ -140,4 +140,5 @@ v 1.9: - Fixed world mirroring so it returns the correct data for the requested world. - Change Service registration to register WorldsHolder instead of AnjoPermissionsHandler. This is the correct entry point for all data. - Depreciate PlayerTeleportEvent, PlayerRespawnEvent and PlayerPortalEvent as it's all handled in PlayerChangedWorldEvent. - This also means we no longer update permissions before we change worlds. \ No newline at end of file + This also means we no longer update permissions before we change worlds. + - A command of '/manload' with no world arguments now performs a full reload of GM. \ No newline at end of file diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java index b87d1de8c..d8d151200 100644 --- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java +++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java @@ -25,7 +25,10 @@ import java.util.concurrent.TimeUnit; import java.util.logging.Level; import java.util.logging.Logger; import org.anjocaido.groupmanager.dataholder.worlds.WorldsHolder; +import org.anjocaido.groupmanager.events.GMSystemEvent; import org.anjocaido.groupmanager.events.GMWorldListener; +import org.anjocaido.groupmanager.events.GroupManagerEventHandler; +import org.anjocaido.groupmanager.events.GMGroupEvent.Action; import org.anjocaido.groupmanager.utils.GMLoggerHandler; import org.anjocaido.groupmanager.utils.PermissionCheckResult; import org.anjocaido.groupmanager.utils.Tasks; @@ -1492,7 +1495,9 @@ public class GroupManager extends JavaPlugin { return true; case manload: - // THIS CASE DONT NEED SENDER + /** + * Attempt to reload a specific world + */ if (args.length > 0) { auxString = ""; for (int i = 0; i < args.length; i++) { @@ -1502,51 +1507,34 @@ public class GroupManager extends JavaPlugin { } } - isLoaded = false; // Disable Bukkit Perms update + isLoaded = false; // Disable Bukkit Perms update and event triggers globalGroups.load(); worldsHolder.loadWorld(auxString); - sender.sendMessage("The request to world '" + auxString + "' was sent."); + sender.sendMessage("The request to reload world '" + auxString + "' was attempted."); isLoaded = true; BukkitPermissions.updateAllPlayers(); - return true; - } - // VALIDANDO ESTADO DO SENDER - if (dataHolder == null || permissionHandler == null) { - if (!setDefaultWorldHandler(sender)) - return true; - } - // WORKING - config.load(); - globalGroups.load(); - worldsHolder.mirrorSetUp(); - - isLoaded = false; - - if (args.length > 0) { - auxString = ""; - for (int i = 0; i < args.length; i++) { - auxString += args[i]; - if ((i + 1) < args.length) { - auxString += " "; - } - } - worldsHolder.loadWorld(auxString); - sender.sendMessage("The request to world '" + auxString + "' was sent."); } else { - worldsHolder.reloadAll(); - sender.sendMessage(ChatColor.YELLOW + " All worlds were reloaded."); + + /** + * Reload all settings and data as no world was specified. + */ + onDisable(); + onEnable(); } - - isLoaded = true; - - BukkitPermissions.updateAllPlayers(); + + /** + * Fire an event as none will have been triggered in the reload. + */ + if (GroupManager.isLoaded()) + GroupManagerEventHandler.callEvent(GMSystemEvent.Action.RELOADED); return true; + case listgroups: // VALIDANDO ESTADO DO SENDER if (dataHolder == null || permissionHandler == null) { -- cgit v1.2.3