mirror of
https://github.com/TotalFreedomMC/TF-EssentialsX.git
synced 2025-02-11 11:49:12 +00:00
Fix cleanup to not hold Users in memory.
This commit is contained in:
parent
ebc6b14284
commit
555a300378
6 changed files with 22 additions and 15 deletions
|
@ -351,8 +351,10 @@ public class EssentialsConf extends YamlConfiguration
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
final OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream(configFile), UTF8);
|
||||
final FileOutputStream fos = new FileOutputStream(configFile);
|
||||
try
|
||||
{
|
||||
final OutputStreamWriter writer = new OutputStreamWriter(fos, UTF8);
|
||||
|
||||
try
|
||||
{
|
||||
|
@ -363,6 +365,11 @@ public class EssentialsConf extends YamlConfiguration
|
|||
writer.close();
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
fos.close();
|
||||
}
|
||||
}
|
||||
catch (IOException e)
|
||||
{
|
||||
LOGGER.log(Level.SEVERE, e.getMessage(), e);
|
||||
|
@ -753,4 +760,5 @@ public class EssentialsConf extends YamlConfiguration
|
|||
{
|
||||
super.set(path, value);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -19,7 +19,7 @@ import org.bukkit.potion.PotionEffectType;
|
|||
public class User extends UserData implements Comparable<User>, IReplyTo, IUser
|
||||
{
|
||||
private CommandSender replyTo = null;
|
||||
private transient User teleportRequester;
|
||||
private transient String teleportRequester;
|
||||
private transient boolean teleportRequestHere;
|
||||
private transient boolean vanished;
|
||||
private transient final Teleport teleport;
|
||||
|
@ -263,11 +263,11 @@ public class User extends UserData implements Comparable<User>, IReplyTo, IUser
|
|||
public void requestTeleport(final User player, final boolean here)
|
||||
{
|
||||
teleportRequestTime = System.currentTimeMillis();
|
||||
teleportRequester = player;
|
||||
teleportRequester = player.getName();
|
||||
teleportRequestHere = here;
|
||||
}
|
||||
|
||||
public User getTeleportRequest()
|
||||
public String getTeleportRequest()
|
||||
{
|
||||
return teleportRequester;
|
||||
}
|
||||
|
|
|
@ -12,7 +12,7 @@ import org.bukkit.inventory.ItemStack;
|
|||
public abstract class UserData extends PlayerExtension implements IConf
|
||||
{
|
||||
protected final transient IEssentials ess;
|
||||
private EssentialsConf config;
|
||||
private final EssentialsConf config;
|
||||
private final File folder;
|
||||
|
||||
protected UserData(Player base, IEssentials ess)
|
||||
|
@ -31,8 +31,7 @@ public abstract class UserData extends PlayerExtension implements IConf
|
|||
public final void reset()
|
||||
{
|
||||
config.getFile().delete();
|
||||
config = new EssentialsConf(new File(folder, Util.sanitizeFileName(base.getName()) + ".yml"));
|
||||
reloadConfig();
|
||||
ess.getUserMap().removeUser(this.getName());
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -19,7 +19,7 @@ public class Commandtpaccept extends EssentialsCommand
|
|||
public void run(final Server server, final User user, final String commandLabel, final String[] args) throws Exception
|
||||
{
|
||||
|
||||
final User target = user.getTeleportRequest();
|
||||
final User target = ess.getUser(user.getTeleportRequest());
|
||||
|
||||
if (target == null || !target.isOnline())
|
||||
{
|
||||
|
|
|
@ -15,7 +15,7 @@ public class Commandtpdeny extends EssentialsCommand
|
|||
@Override
|
||||
public void run(final Server server, final User user, final String commandLabel, final String[] args) throws Exception
|
||||
{
|
||||
final User player = user.getTeleportRequest();
|
||||
final User player = ess.getUser(user.getTeleportRequest());
|
||||
if (player == null)
|
||||
{
|
||||
throw new Exception(_("noPendingRequest"));
|
||||
|
|
|
@ -29,7 +29,7 @@ public class EssentialsGeoIPPlayerListener implements Listener, IConf
|
|||
private static final Logger logger = Logger.getLogger("Minecraft");
|
||||
File databaseFile;
|
||||
File dataFolder;
|
||||
EssentialsConf config;
|
||||
final EssentialsConf config;
|
||||
private final transient IEssentials ess;
|
||||
|
||||
public EssentialsGeoIPPlayerListener(File dataFolder, IEssentials ess)
|
||||
|
|
Loading…
Reference in a new issue