/
DenizenCommandSender.java
182 lines (148 loc) · 5.06 KB
/
DenizenCommandSender.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
package com.denizenscript.denizen.utilities.command.scripted;
import org.bukkit.Bukkit;
import org.bukkit.Server;
import org.bukkit.command.ConsoleCommandSender;
import org.bukkit.conversations.Conversation;
import org.bukkit.conversations.ConversationAbandonedEvent;
import org.bukkit.permissions.Permission;
import org.bukkit.permissions.PermissionAttachment;
import org.bukkit.permissions.PermissionAttachmentInfo;
import org.bukkit.plugin.Plugin;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Set;
import java.util.UUID;
/**
* Used to send commands and record their output.
*/
public class DenizenCommandSender implements ConsoleCommandSender {
private ArrayList<String> output = new ArrayList<>();
public boolean silent = false;
public ArrayList<String> getOutput() {
return output;
}
public void clearOutput() {
output.clear();
}
@Override
public void sendMessage(String s) {
output.add(s);
if (!silent) {
Bukkit.getServer().getConsoleSender().sendMessage(s);
}
}
@Override
public void sendMessage(String[] strings) {
for (String string : strings) {
sendMessage(string);
}
}
@Override
public void sendMessage(UUID uuid, String s) {
output.add(s);
if (!silent) {
Bukkit.getServer().getConsoleSender().sendMessage(uuid, s);
}
}
@Override
public void sendMessage(UUID uuid, String[] strings) {
output.addAll(Arrays.asList(strings));
if (!silent) {
Bukkit.getServer().getConsoleSender().sendMessage(uuid, strings);
}
}
@Override
public Server getServer() {
return Bukkit.getConsoleSender().getServer();
}
@Override
public String getName() {
return Bukkit.getConsoleSender().getName();
}
@Override
public Spigot spigot() {
return Bukkit.getServer().getConsoleSender().spigot();
}
@Override
public boolean isConversing() {
return Bukkit.getConsoleSender().isConversing();
}
@Override
public void acceptConversationInput(String s) {
Bukkit.getConsoleSender().acceptConversationInput(s);
}
@Override
public boolean beginConversation(Conversation conversation) {
return Bukkit.getConsoleSender().beginConversation(conversation);
}
@Override
public void abandonConversation(Conversation conversation) {
Bukkit.getConsoleSender().abandonConversation(conversation);
}
@Override
public void abandonConversation(Conversation conversation, ConversationAbandonedEvent conversationAbandonedEvent) {
Bukkit.getConsoleSender().abandonConversation(conversation, conversationAbandonedEvent);
}
@Override
public void sendRawMessage(String s) {
// TODO: Maybe handle this?
Bukkit.getConsoleSender().sendRawMessage(s);
}
@Override
public void sendRawMessage(UUID uuid, String s) {
// TODO: Maybe handle this?
Bukkit.getConsoleSender().sendRawMessage(uuid, s);
}
@Override
public boolean isPermissionSet(String s) {
return Bukkit.getConsoleSender().isPermissionSet(s);
}
@Override
public boolean isPermissionSet(Permission permission) {
return Bukkit.getConsoleSender().isPermissionSet(permission);
}
@Override
public boolean hasPermission(String s) {
return Bukkit.getConsoleSender().hasPermission(s);
}
@Override
public boolean hasPermission(Permission permission) {
return Bukkit.getConsoleSender().hasPermission(permission);
}
@Override
public PermissionAttachment addAttachment(Plugin plugin, String s, boolean b) {
return Bukkit.getConsoleSender().addAttachment(plugin, s, b);
}
@Override
public PermissionAttachment addAttachment(Plugin plugin) {
return Bukkit.getConsoleSender().addAttachment(plugin);
}
@Override
public PermissionAttachment addAttachment(Plugin plugin, String s, boolean b, int i) {
return Bukkit.getConsoleSender().addAttachment(plugin, s, b, i);
}
@Override
public PermissionAttachment addAttachment(Plugin plugin, int i) {
return Bukkit.getConsoleSender().addAttachment(plugin, i);
}
@Override
public void removeAttachment(PermissionAttachment permissionAttachment) {
Bukkit.getConsoleSender().removeAttachment(permissionAttachment);
}
@Override
public void recalculatePermissions() {
Bukkit.getConsoleSender().recalculatePermissions();
}
@Override
public Set<PermissionAttachmentInfo> getEffectivePermissions() {
return Bukkit.getConsoleSender().getEffectivePermissions();
}
@Override
public boolean isOp() {
return Bukkit.getConsoleSender().isOp();
}
@Override
public void setOp(boolean b) {
Bukkit.getConsoleSender().setOp(b);
}
}