Fork of Poseidon providing Bukkit #1060 to older Beta versions (b1.0-b1.7.3)
at develop 91 lines 2.4 kB view raw
1package org.bukkit.command; 2 3import org.bukkit.ChatColor; 4import org.bukkit.Server; 5import org.bukkit.permissions.PermissibleBase; 6import org.bukkit.permissions.Permission; 7import org.bukkit.permissions.PermissionAttachment; 8import org.bukkit.permissions.PermissionAttachmentInfo; 9import org.bukkit.plugin.Plugin; 10 11import java.util.Set; 12 13/** 14 * Represents CLI input from a console 15 */ 16public class ConsoleCommandSender implements CommandSender { 17 private final Server server; 18 private final PermissibleBase perm = new PermissibleBase(this); 19 20 public ConsoleCommandSender(Server server) { 21 this.server = server; 22 } 23 24 public void sendMessage(String message) { 25 System.out.println(ChatColor.stripColor(message)); 26 } 27 28 public boolean isOp() { 29 return true; 30 } 31 32 public void setOp(boolean value) { 33 throw new UnsupportedOperationException("Cannot change operator status of server console"); 34 } 35 36 public boolean isPlayer() { 37 return false; 38 } 39 40 public Server getServer() { 41 return server; 42 } 43 44 public boolean isPermissionSet(String name) { 45 return perm.isPermissionSet(name); 46 } 47 48 public boolean isPermissionSet(Permission perm) { 49 return this.perm.isPermissionSet(perm); 50 } 51 52 public boolean hasPermission(String name) { 53 return perm.hasPermission(name); 54 } 55 56 public boolean hasPermission(Permission perm) { 57 return this.perm.hasPermission(perm); 58 } 59 60 public PermissionAttachment addAttachment(Plugin plugin, String name, boolean value) { 61 return perm.addAttachment(plugin, name, value); 62 } 63 64 public PermissionAttachment addAttachment(Plugin plugin) { 65 return perm.addAttachment(plugin); 66 } 67 68 public PermissionAttachment addAttachment(Plugin plugin, String name, boolean value, int ticks) { 69 return perm.addAttachment(plugin, name, value, ticks); 70 } 71 72 public PermissionAttachment addAttachment(Plugin plugin, int ticks) { 73 return perm.addAttachment(plugin, ticks); 74 } 75 76 public void removeAttachment(PermissionAttachment attachment) { 77 perm.removeAttachment(attachment); 78 } 79 80 public void recalculatePermissions() { 81 perm.recalculatePermissions(); 82 } 83 84 public Set<PermissionAttachmentInfo> getEffectivePermissions() { 85 return perm.getEffectivePermissions(); 86 } 87 88 public String getName() { 89 return "CONSOLE"; 90 } 91}