mirror of
https://github.com/EngineHub/WorldGuard.git
synced 2024-11-17 08:05:20 +01:00
Added legacy console sender (à la CommandBook).
This commit is contained in:
parent
c028331ef9
commit
3441ae11f2
@ -0,0 +1,87 @@
|
||||
package com.sk89q.worldguard.bukkit;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
import org.bukkit.Server;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.permissions.Permission;
|
||||
import org.bukkit.permissions.PermissionAttachment;
|
||||
import org.bukkit.permissions.PermissionAttachmentInfo;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
|
||||
/**
|
||||
* Console sender.
|
||||
*
|
||||
* @author sk89q
|
||||
*/
|
||||
class LegacyConsoleSender implements CommandSender {
|
||||
private Server server;
|
||||
|
||||
public LegacyConsoleSender(Server server) {
|
||||
this.server = server;
|
||||
}
|
||||
|
||||
public void sendMessage(String message) {
|
||||
WorldGuardPlugin.logger.info(message);
|
||||
}
|
||||
|
||||
public Server getServer() {
|
||||
return server;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return "CONSOLE";
|
||||
}
|
||||
|
||||
public boolean isPermissionSet(String name) {
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean isPermissionSet(Permission perm) {
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean hasPermission(String name) {
|
||||
return true;
|
||||
}
|
||||
|
||||
public boolean hasPermission(Permission perm) {
|
||||
return true;
|
||||
}
|
||||
|
||||
public PermissionAttachment addAttachment(Plugin plugin, String name,
|
||||
boolean value) {
|
||||
throw new UnsupportedOperationException("Fake legacy console command sender does not support this");
|
||||
}
|
||||
|
||||
public PermissionAttachment addAttachment(Plugin plugin) {
|
||||
throw new UnsupportedOperationException("Fake legacy console command sender does not support this");
|
||||
}
|
||||
|
||||
public PermissionAttachment addAttachment(Plugin plugin, String name,
|
||||
boolean value, int ticks) {
|
||||
throw new UnsupportedOperationException("Fake legacy console command sender does not support this");
|
||||
}
|
||||
|
||||
public PermissionAttachment addAttachment(Plugin plugin, int ticks) {
|
||||
throw new UnsupportedOperationException("Fake legacy console command sender does not support this");
|
||||
}
|
||||
|
||||
public void removeAttachment(PermissionAttachment attachment) {
|
||||
throw new UnsupportedOperationException("Fake legacy console command sender does not support this");
|
||||
}
|
||||
|
||||
public void recalculatePermissions() {
|
||||
}
|
||||
|
||||
public Set<PermissionAttachmentInfo> getEffectivePermissions() {
|
||||
throw new UnsupportedOperationException("Fake legacy console command sender does not support this");
|
||||
}
|
||||
|
||||
public boolean isOp() {
|
||||
return true;
|
||||
}
|
||||
|
||||
public void setOp(boolean value) {
|
||||
}
|
||||
}
|
@ -37,7 +37,6 @@
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.command.Command;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.bukkit.command.ConsoleCommandSender;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.plugin.Plugin;
|
||||
import org.bukkit.plugin.java.JavaPlugin;
|
||||
@ -68,7 +67,7 @@ public class WorldGuardPlugin extends JavaPlugin {
|
||||
/**
|
||||
* Logger for messages.
|
||||
*/
|
||||
private static final Logger logger = Logger.getLogger("Minecraft.WorldGuard");
|
||||
static final Logger logger = Logger.getLogger("Minecraft.WorldGuard");
|
||||
|
||||
/**
|
||||
* Manager for commands. This automatically handles nested commands,
|
||||
@ -557,7 +556,12 @@ public CommandSender matchPlayerOrConsole(CommandSender sender, String filter)
|
||||
if (filter.equalsIgnoreCase("#console")
|
||||
|| filter.equalsIgnoreCase("*console*")
|
||||
|| filter.equalsIgnoreCase("!")) {
|
||||
return getServer().getConsoleSender();
|
||||
try {
|
||||
return getServer().getConsoleSender();
|
||||
} catch (Throwable t) {
|
||||
// Legacy support
|
||||
return new LegacyConsoleSender(getServer());
|
||||
}
|
||||
}
|
||||
|
||||
return matchSinglePlayer(sender, filter);
|
||||
|
Loading…
Reference in New Issue
Block a user