Essentials/EssentialsGroupManager/src/org/anjocaido/groupmanager/events/GMUserEvent.java

88 lines
2.0 KiB
Java
Raw Normal View History

2011-12-13 18:32:39 +01:00
package org.anjocaido.groupmanager.events;
import org.anjocaido.groupmanager.GroupManager;
2011-12-13 18:32:39 +01:00
import org.anjocaido.groupmanager.data.User;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;
2011-12-13 18:32:39 +01:00
/**
* @author ElgarL
*/
public class GMUserEvent extends Event {
2011-12-13 18:32:39 +01:00
2015-04-15 06:06:16 +02:00
/**
*
*/
private static final HandlerList handlers = new HandlerList();
2015-04-15 06:06:16 +02:00
@Override
public HandlerList getHandlers() {
2015-04-15 06:06:16 +02:00
return handlers;
}
2015-04-15 06:06:16 +02:00
public static HandlerList getHandlerList() {
2015-04-15 06:06:16 +02:00
return handlers;
}
2015-04-15 06:06:16 +02:00
//////////////////////////////
2011-12-13 18:32:39 +01:00
2015-04-15 06:06:16 +02:00
protected User user;
2015-04-15 06:06:16 +02:00
protected String userName;
2015-04-15 06:06:16 +02:00
protected Action action;
2015-04-15 06:06:16 +02:00
public GMUserEvent(User user, Action action) {
2015-04-15 06:06:16 +02:00
super();
2015-04-15 06:06:16 +02:00
this.user = user;
this.action = action;
this.userName = user.getLastName();
}
2015-04-15 06:06:16 +02:00
public GMUserEvent(String userName, Action action) {
2015-04-15 06:06:16 +02:00
super();
2015-04-15 06:06:16 +02:00
this.userName = userName;
this.action = action;
}
2015-04-15 06:06:16 +02:00
public Action getAction() {
2015-04-15 06:06:16 +02:00
return this.action;
}
2015-04-15 06:06:16 +02:00
public User getUser() {
2015-04-15 06:06:16 +02:00
return user;
}
2015-04-15 06:06:16 +02:00
public String getUserName() {
2015-04-15 06:06:16 +02:00
return userName;
}
2015-04-15 06:06:16 +02:00
public enum Action {
USER_PERMISSIONS_CHANGED, USER_INHERITANCE_CHANGED, USER_INFO_CHANGED, USER_GROUP_CHANGED, USER_SUBGROUP_CHANGED, USER_ADDED, USER_REMOVED,
}
2015-04-15 06:06:16 +02:00
public void schedule(final GMUserEvent event) {
2015-04-15 06:06:16 +02:00
synchronized (GroupManager.getGMEventHandler().getServer()) {
if (GroupManager.getGMEventHandler().getServer().getScheduler().scheduleSyncDelayedTask(GroupManager.getGMEventHandler().getPlugin(), new Runnable() {
@Override
public void run() {
GroupManager.getGMEventHandler().getServer().getPluginManager().callEvent(event);
}
}, 1) == -1) {
GroupManager.logger.warning("Could not schedule GM Event.");
}
}
}
2011-12-13 18:32:39 +01:00
}