summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKHobbits <rob@khobbits.co.uk>2014-04-27 01:10:44 +0100
committerKHobbits <rob@khobbits.co.uk>2014-04-27 01:10:44 +0100
commit0557aa58b001815257f410040533d44ebde4017c (patch)
treef54c96efe78695aa04b9f0e195bc0687fa8119ab
parentb40aa438723395f9b56a820447fb74b8ddcb61c3 (diff)
downloadEssentials-0557aa58b001815257f410040533d44ebde4017c.tar
Essentials-0557aa58b001815257f410040533d44ebde4017c.tar.gz
Essentials-0557aa58b001815257f410040533d44ebde4017c.tar.lz
Essentials-0557aa58b001815257f410040533d44ebde4017c.tar.xz
Essentials-0557aa58b001815257f410040533d44ebde4017c.zip
Switch AFK check to use UUID.
-rw-r--r--Essentials/src/com/earth2me/essentials/EssentialsTimer.java7
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/EssentialsCommand.java22
2 files changed, 25 insertions, 4 deletions
diff --git a/Essentials/src/com/earth2me/essentials/EssentialsTimer.java b/Essentials/src/com/earth2me/essentials/EssentialsTimer.java
index ca205ef31..4c17fda37 100644
--- a/Essentials/src/com/earth2me/essentials/EssentialsTimer.java
+++ b/Essentials/src/com/earth2me/essentials/EssentialsTimer.java
@@ -4,6 +4,7 @@ import java.util.HashSet;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.Set;
+import java.util.UUID;
import java.util.logging.Level;
import net.ess3.api.IEssentials;
import org.bukkit.entity.Player;
@@ -12,7 +13,7 @@ import org.bukkit.entity.Player;
public class EssentialsTimer implements Runnable
{
private final transient IEssentials ess;
- private final transient Set<String> onlineUsers = new HashSet<String>();
+ private final transient Set<UUID> onlineUsers = new HashSet<UUID>();
private transient long lastPoll = System.nanoTime();
private final LinkedList<Double> history = new LinkedList<Double>();
private int skip1 = 0;
@@ -66,7 +67,7 @@ public class EssentialsTimer implements Runnable
try
{
final User user = ess.getUser(player);
- onlineUsers.add(user.getName());
+ onlineUsers.add(user.getBase().getUniqueId());
user.setLastOnlineActivity(currentTime);
user.checkActivity();
}
@@ -77,7 +78,7 @@ public class EssentialsTimer implements Runnable
}
count = 0;
- final Iterator<String> iterator = onlineUsers.iterator();
+ final Iterator<UUID> iterator = onlineUsers.iterator();
while (iterator.hasNext())
{
count++;
diff --git a/Essentials/src/com/earth2me/essentials/commands/EssentialsCommand.java b/Essentials/src/com/earth2me/essentials/commands/EssentialsCommand.java
index fd492ed6c..13fd2632c 100644
--- a/Essentials/src/com/earth2me/essentials/commands/EssentialsCommand.java
+++ b/Essentials/src/com/earth2me/essentials/commands/EssentialsCommand.java
@@ -5,6 +5,7 @@ import static com.earth2me.essentials.I18n.tl;
import com.earth2me.essentials.utils.FormatUtil;
import java.util.List;
import java.util.Locale;
+import java.util.UUID;
import java.util.logging.Logger;
import net.ess3.api.IEssentials;
import org.bukkit.Server;
@@ -86,8 +87,27 @@ public abstract class EssentialsCommand implements IEssentialsCommand
private User getPlayer(final Server server, final User sourceUser, final String searchTerm, boolean getHidden, final boolean getOffline) throws PlayerNotFoundException
{
+ final User user;
+ Player exPlayer;
+
+ try
+ {
+ exPlayer = server.getPlayer(UUID.fromString(searchTerm));
+ }
+ catch (IllegalArgumentException ex)
+ {
+ exPlayer = server.getPlayer(searchTerm);
+ }
+
+ if (exPlayer != null)
+ {
+ user = ess.getUser(exPlayer);
+ }
+ else
+ {
+ user = ess.getUser(searchTerm);
+ }
- final User user = ess.getUser(searchTerm);
if (user != null)
{
if (!getOffline && !user.getBase().isOnline())