53 lines
1.6 KiB
Java
53 lines
1.6 KiB
Java
package eu.oskar3123.spigot2fa.config;
|
|
|
|
import eu.oskar3123.spigot2fa.config.yaml.Config;
|
|
import eu.oskar3123.spigot2fa.config.yaml.ConfigHandler;
|
|
import org.bukkit.configuration.Configuration;
|
|
|
|
import java.util.UUID;
|
|
|
|
public class YAMLPlayersConfiguration implements PlayersConfiguration
|
|
{
|
|
|
|
private ConfigHandler configHandler;
|
|
private Config config;
|
|
|
|
public YAMLPlayersConfiguration(ConfigHandler configHandler, String name)
|
|
{
|
|
this.configHandler = configHandler;
|
|
this.configHandler.addConfig(this.config = new Config(name));
|
|
}
|
|
|
|
@Override
|
|
public boolean hasData(UUID uuid)
|
|
{
|
|
return this.configHandler.getConfig(this.config).isSet(uuid.toString());
|
|
}
|
|
|
|
@Override
|
|
public PlayersData getData(UUID uuid)
|
|
{
|
|
if (!hasData(uuid))
|
|
{
|
|
return null;
|
|
}
|
|
Configuration c = this.configHandler.getConfig(this.config);
|
|
String secret = c.getString(uuid.toString() + ".secret");
|
|
String lastIp = c.getString(uuid.toString() + ".lastip");
|
|
long lastLogin = c.getLong(uuid.toString() + ".lastlogin");
|
|
return new PlayersData(uuid, secret, lastIp, lastLogin);
|
|
}
|
|
|
|
@Override
|
|
public boolean setData(UUID uuid, PlayersData data)
|
|
{
|
|
Configuration c = this.configHandler.getConfig(this.config);
|
|
c.set(uuid.toString() + ".secret", data.getSecret());
|
|
c.set(uuid.toString() + ".lastip", data.getLastIP());
|
|
c.set(uuid.toString() + ".lastlogin", data.getLastLogin());
|
|
this.configHandler.saveConfig(this.config, true);
|
|
return true;
|
|
}
|
|
|
|
}
|