summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorElgarL <ElgarL@palmergames.com>2011-12-20 17:21:55 +0000
committerElgarL <ElgarL@palmergames.com>2011-12-20 17:21:55 +0000
commitffb78ae31bd83a856e1906dc0224ff62393e58ef (patch)
tree041e09d184a88161c1813ed91bef68f464a1fcc1
parente7b90734e23cc91f6a4a0464c4f89138029deabf (diff)
downloadEssentials-ffb78ae31bd83a856e1906dc0224ff62393e58ef.tar
Essentials-ffb78ae31bd83a856e1906dc0224ff62393e58ef.tar.gz
Essentials-ffb78ae31bd83a856e1906dc0224ff62393e58ef.tar.lz
Essentials-ffb78ae31bd83a856e1906dc0224ff62393e58ef.tar.xz
Essentials-ffb78ae31bd83a856e1906dc0224ff62393e58ef.zip
Delayed GroupManager events so Superperms will be fully updated before
plugins receive the events.
-rw-r--r--EssentialsGroupManager/src/Changelog.txt3
-rw-r--r--EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java14
2 files changed, 14 insertions, 3 deletions
diff --git a/EssentialsGroupManager/src/Changelog.txt b/EssentialsGroupManager/src/Changelog.txt
index 6611c3e1b..dc661f7c3 100644
--- a/EssentialsGroupManager/src/Changelog.txt
+++ b/EssentialsGroupManager/src/Changelog.txt
@@ -91,4 +91,5 @@ v 1.8:
- Changed ServicesManager registration to lowest from normal.
- Fixed 'manucheckp' returning a null for the searched node when it's a group/subgroup.
- manpromote and mandemote now correctly send the notification to the console if the command was issued there.
- - Expanded GlobalGroups.yml and Groups.yml to include Towny permissions. \ No newline at end of file
+ - Expanded GlobalGroups.yml and Groups.yml to include Towny permissions.
+ - Delayed GroupManager events so Superperms will be fully updated before plugins receive the events. \ 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 9762a35a7..5ced1fb47 100644
--- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java
+++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/GroupManager.java
@@ -1840,11 +1840,21 @@ public class GroupManager extends JavaPlugin {
/**
* Triggers all GroupManager events for other plugins to see.
+ * Schedules events for 1 tick later to allow GM to finish populating super perms.
*
* @param event
*/
- public static void callEvent(GroupManagerEvent event) {
- Bukkit.getServer().getPluginManager().callEvent(event);
+ public static void callEvent(final GroupManagerEvent event) {
+
+ if (Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(Bukkit.getPluginManager().getPlugin("GroupManager"), new Runnable() {
+
+ @Override
+ public void run() {
+ Bukkit.getServer().getPluginManager().callEvent(event);
+ }
+ }) == -1)
+ GroupManager.logger.warning("Could not schedule GM Event.");
+
}
/**