summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorementalo <ementalodev@gmx.co.uk>2012-07-03 13:44:55 +0100
committerementalo <ementalodev@gmx.co.uk>2012-07-03 13:44:55 +0100
commita4dea20292ae09c6b49348792c8e35721f944d7e (patch)
tree2eafc5e510d9e85037e421a22a886df65acbeec4
parent3deda1952dd7674301ce38fcc6f0729f346a4936 (diff)
downloadEssentials-a4dea20292ae09c6b49348792c8e35721f944d7e.tar
Essentials-a4dea20292ae09c6b49348792c8e35721f944d7e.tar.gz
Essentials-a4dea20292ae09c6b49348792c8e35721f944d7e.tar.lz
Essentials-a4dea20292ae09c6b49348792c8e35721f944d7e.tar.xz
Essentials-a4dea20292ae09c6b49348792c8e35721f944d7e.zip
Implement getHome(s)
-rw-r--r--Essentials/src/net/ess3/permissions/NoCommandCostPermissions.java2
-rw-r--r--Essentials/src/net/ess3/settings/SettingsHolder.java1
-rw-r--r--Essentials/src/net/ess3/user/User.java36
-rw-r--r--Essentials/src/net/ess3/user/UserBase.java47
4 files changed, 66 insertions, 20 deletions
diff --git a/Essentials/src/net/ess3/permissions/NoCommandCostPermissions.java b/Essentials/src/net/ess3/permissions/NoCommandCostPermissions.java
index 54cd18624..ab099e45f 100644
--- a/Essentials/src/net/ess3/permissions/NoCommandCostPermissions.java
+++ b/Essentials/src/net/ess3/permissions/NoCommandCostPermissions.java
@@ -1,9 +1,9 @@
package net.ess3.permissions;
-import net.ess3.api.IPermission;
import java.util.HashMap;
import java.util.Locale;
import java.util.Map;
+import net.ess3.api.IPermission;
public class NoCommandCostPermissions
diff --git a/Essentials/src/net/ess3/settings/SettingsHolder.java b/Essentials/src/net/ess3/settings/SettingsHolder.java
index b0c0a9121..0c0e07cd2 100644
--- a/Essentials/src/net/ess3/settings/SettingsHolder.java
+++ b/Essentials/src/net/ess3/settings/SettingsHolder.java
@@ -63,6 +63,7 @@ public class SettingsHolder extends AsyncStorageObjectHolder<Settings> implement
return debug.get();
}
+ @Override
public void setDebug(final boolean set)
{
debug.set(set);
diff --git a/Essentials/src/net/ess3/user/User.java b/Essentials/src/net/ess3/user/User.java
index 54f16f1cf..2341735da 100644
--- a/Essentials/src/net/ess3/user/User.java
+++ b/Essentials/src/net/ess3/user/User.java
@@ -1,14 +1,5 @@
package net.ess3.user;
-import net.ess3.Console;
-import static net.ess3.I18n._;
-import net.ess3.Teleport;
-import net.ess3.api.*;
-import net.ess3.craftbukkit.InventoryWorkaround;
-import net.ess3.economy.register.Method;
-import net.ess3.permissions.Permissions;
-import net.ess3.utils.DateUtil;
-import net.ess3.utils.Util;
import java.util.Calendar;
import java.util.GregorianCalendar;
import java.util.List;
@@ -18,6 +9,15 @@ import java.util.logging.Logger;
import lombok.Cleanup;
import lombok.Getter;
import lombok.Setter;
+import net.ess3.Console;
+import static net.ess3.I18n._;
+import net.ess3.Teleport;
+import net.ess3.api.*;
+import net.ess3.craftbukkit.InventoryWorkaround;
+import net.ess3.economy.register.Method;
+import net.ess3.permissions.Permissions;
+import net.ess3.utils.DateUtil;
+import net.ess3.utils.Util;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.Material;
@@ -255,6 +255,7 @@ public class User extends UserBase implements IUser
}
}
+ @Override
public void setDisplayNick()
{
String name = getNick(true);
@@ -366,6 +367,7 @@ public class User extends UserBase implements IUser
}
//Returns true if status expired during this check
+ @Override
public boolean checkJailTimeout(final long currentTime)
{
acquireReadLock();
@@ -534,13 +536,7 @@ public class User extends UserBase implements IUser
unlock();
}
}
-
- @Override
- public Location getHome(String name) throws Exception
- {
- throw new UnsupportedOperationException("Not supported yet.");
- }
-
+
@Override
public void updateCompass()
{
@@ -565,7 +561,7 @@ public class User extends UserBase implements IUser
@Override
public List<String> getHomes()
{
- throw new UnsupportedOperationException("Not supported yet.");
+ return super.getHomes();
}
@Override
@@ -775,4 +771,10 @@ public class User extends UserBase implements IUser
final boolean set = !vanished;
this.setVanished(set);
}
+
+ @Override
+ public Location getHome(String name) throws Exception
+ {
+ return super.getHome(name);
+ }
}
diff --git a/Essentials/src/net/ess3/user/UserBase.java b/Essentials/src/net/ess3/user/UserBase.java
index 73c151b00..70c7e6ed2 100644
--- a/Essentials/src/net/ess3/user/UserBase.java
+++ b/Essentials/src/net/ess3/user/UserBase.java
@@ -11,6 +11,8 @@ import net.ess3.storage.Location.WorldNotLoadedException;
import java.io.File;
import java.io.IOException;
import java.util.*;
+import java.util.logging.Level;
+import java.util.logging.Logger;
import lombok.Cleanup;
import lombok.Delegate;
import org.bukkit.Bukkit;
@@ -291,8 +293,8 @@ public abstract class UserBase extends AsyncStorageObjectHolder<UserData> implem
{
acquireWriteLock();
try
- {
- getData().setMuted(mute);
+ {
+ getData().setMuted(mute);
}
finally
{
@@ -404,6 +406,30 @@ public abstract class UserBase extends AsyncStorageObjectHolder<UserData> implem
}
}
+ public Location getHome(String name) throws Exception
+ {
+ acquireReadLock();
+ try
+ {
+ if (getData().getHomes() == null)
+ {
+ return null;
+ }
+ try
+ {
+ return getData().getHomes().get(Util.sanitizeFileName(name)).getBukkitLocation();
+ }
+ catch (WorldNotLoadedException ex)
+ {
+ return null;
+ }
+ }
+ finally
+ {
+ unlock();
+ }
+ }
+
public Location getHome(Location loc)
{
@@ -455,4 +481,21 @@ public abstract class UserBase extends AsyncStorageObjectHolder<UserData> implem
unlock();
}
}
+
+ public List<String> getHomes()
+ {
+ acquireReadLock();
+ try
+ {
+ if (getData().getHomes() == null)
+ {
+ return null;
+ }
+ return new ArrayList<String>(getData().getHomes().keySet());
+ }
+ finally
+ {
+ unlock();
+ }
+ }
}