Skip to content

Commit cb1a86f

Browse files
Remove a ton of duplicate permission checks
1 parent 4907de4 commit cb1a86f

1 file changed

Lines changed: 15 additions & 16 deletions

File tree

src/main/java/net/pistonmaster/pistonqueue/shared/QueueListenerShared.java

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -89,17 +89,19 @@ protected void onKick(PQKickedFromServerEvent event) {
8989

9090
protected void onPreConnect(PQServerPreConnectEvent event) {
9191
PlayerWrapper player = event.getPlayer();
92+
QueueType type = QueueType.getQueueType(player::hasPermission);
9293

9394
if (Config.AUTH_FIRST) {
9495
if (Config.ALWAYS_QUEUE)
9596
return;
9697

97-
if (isAnyoneQueuedOfType(player))
98+
if (isAnyoneQueuedOfType(type))
9899
return;
99100

100101
Optional<String> optionalTarget = event.getTarget();
101-
if (!isPlayerMainFull(player) && optionalTarget.isPresent() && optionalTarget.get().equals(Config.QUEUE_SERVER))
102+
if (!isMainFull(type) && optionalTarget.isPresent() && optionalTarget.get().equals(Config.QUEUE_SERVER)) {
102103
event.setTarget(Config.MAIN_SERVER);
104+
}
103105
} else {
104106
if (player.getCurrentServer().isPresent())
105107
return;
@@ -109,7 +111,7 @@ protected void onPreConnect(PQServerPreConnectEvent event) {
109111
return;
110112
}
111113

112-
if (Config.ALWAYS_QUEUE || isServerFull(player)) {
114+
if (Config.ALWAYS_QUEUE || isServerFull(type)) {
113115
if (player.hasPermission(Config.QUEUE_BYPASS_PERMISSION)) {
114116
event.setTarget(Config.MAIN_SERVER);
115117
} else {
@@ -122,7 +124,7 @@ protected void onPreConnect(PQServerPreConnectEvent event) {
122124
private void putQueue(PlayerWrapper player, PQServerPreConnectEvent event) {
123125
QueueType type = QueueType.getQueueType(player::hasPermission);
124126

125-
preQueueAdding(player, type.getHeader(), type.getFooter());
127+
preQueueAdding(player, type);
126128

127129
// Redirect the player to the queue.
128130
Optional<String> originalTarget = event.getTarget();
@@ -162,25 +164,22 @@ protected void onConnected(PQServerConnectedEvent event) {
162164
public void putQueueAuthFirst(PlayerWrapper player) {
163165
QueueType type = QueueType.getQueueType(player::hasPermission);
164166

165-
preQueueAdding(player, type.getHeader(), type.getFooter());
167+
preQueueAdding(player, type);
166168

167169
// Store the data concerning the player's original destination
168170
type.getQueueMap().put(player.getUniqueId(), Config.MAIN_SERVER);
169171
}
170172

171-
private void preQueueAdding(PlayerWrapper player, List<String> header, List<String> footer) {
172-
player.sendPlayerListHeaderAndFooter(header, footer);
173+
private void preQueueAdding(PlayerWrapper player, QueueType type) {
174+
player.sendPlayerListHeaderAndFooter(type.getHeader(), type.getFooter());
173175

174-
if (isServerFull(player))
176+
if (isServerFull(type)) {
175177
player.sendMessage(Config.SERVER_IS_FULL_MESSAGE);
178+
}
176179
}
177180

178-
private boolean isServerFull(PlayerWrapper player) {
179-
return isPlayerMainFull(player) || isAnyoneQueuedOfType(player);
180-
}
181-
182-
private boolean isPlayerMainFull(PlayerWrapper player) {
183-
return isMainFull(QueueType.getQueueType(player::hasPermission));
181+
private boolean isServerFull(QueueType type) {
182+
return isMainFull(type) || isAnyoneQueuedOfType(type);
184183
}
185184

186185
private int getFreeSlots(QueueType type) {
@@ -191,8 +190,8 @@ private boolean isMainFull(QueueType type) {
191190
return getFreeSlots(type) <= 0;
192191
}
193192

194-
private boolean isAnyoneQueuedOfType(PlayerWrapper player) {
195-
return !QueueType.getQueueType(player::hasPermission).getQueueMap().isEmpty();
193+
private boolean isAnyoneQueuedOfType(QueueType type) {
194+
return !type.getQueueMap().isEmpty();
196195
}
197196

198197
private boolean isAuthToQueue(PQServerConnectedEvent event) {

0 commit comments

Comments
 (0)