Optimize UUID string parser

This commit is contained in:
Fabrizio La Rosa 2020-07-29 00:09:07 +02:00
parent 93ae6fd494
commit 838af07246
14 changed files with 73 additions and 59 deletions

View File

@ -1,5 +1,6 @@
package com.songoda.skyblock.ban;
import com.eatthepath.uuid.FastUUID;
import com.songoda.skyblock.SkyBlock;
import com.songoda.skyblock.api.event.island.IslandBanEvent;
import com.songoda.skyblock.api.event.island.IslandUnbanEvent;
@ -38,10 +39,10 @@ public class Ban {
for (String islandBanList : plugin.getFileManager()
.getConfig(new File(new File(plugin.getDataFolder().toString() + "/ban-data"),
islandOwnerUUID.toString() + ".yml"))
FastUUID.toString(islandOwnerUUID) + ".yml"))
.getFileConfiguration().getStringList("Bans")) {
UUID uuid = UUID.fromString(islandBanList);
UUID uuid = FastUUID.parseUUID(islandBanList);
if (!Bukkit.getOfflinePlayer(uuid).hasPlayedBefore())
continue;
@ -64,7 +65,7 @@ public class Ban {
List<String> islandBans = new ArrayList<>();
FileConfiguration configLoad = plugin.getFileManager()
.getConfig(new File(new File(plugin.getDataFolder().toString() + "/ban-data"),
islandOwnerUUID.toString() + ".yml"))
FastUUID.toString(islandOwnerUUID) + ".yml"))
.getFileConfiguration();
for (String islandBanList : configLoad.getStringList("Bans")) {
@ -86,7 +87,7 @@ public class Ban {
.getFileConfiguration();
for (String islandBanList : configLoad.getStringList("Bans")) {
if (!uuid.toString().equals(islandBanList)) {
if (!FastUUID.toString(uuid).equals(islandBanList)) {
islandBans.add(islandBanList);
}
}

View File

@ -1,5 +1,6 @@
package com.songoda.skyblock.ban;
import com.eatthepath.uuid.FastUUID;
import com.songoda.core.compatibility.CompatibleSound;
import com.songoda.skyblock.SkyBlock;
import com.songoda.skyblock.config.FileManager;
@ -45,7 +46,7 @@ public class BanManager {
if (configFile.exists()) {
for (File fileList : configFile.listFiles()) {
UUID islandOwnerUUID = UUID.fromString(fileList.getName().replaceFirst("[.][^.]+$", ""));
UUID islandOwnerUUID = FastUUID.parseUUID(fileList.getName().replaceFirst("[.][^.]+$", ""));
createIsland(islandOwnerUUID);
}
}
@ -59,9 +60,9 @@ public class BanManager {
ban.save();
File oldBanDataFile = new File(new File(plugin.getDataFolder().toString() + "/ban-data"),
uuid1.toString() + ".yml");
FastUUID.toString(uuid1) + ".yml");
File newBanDataFile = new File(new File(plugin.getDataFolder().toString() + "/ban-data"),
uuid2.toString() + ".yml");
FastUUID.toString(uuid2) + ".yml");
fileManager.unloadConfig(oldBanDataFile);
fileManager.unloadConfig(newBanDataFile);

View File

@ -1,5 +1,6 @@
package com.songoda.skyblock.challenge.player;
import com.eatthepath.uuid.FastUUID;
import com.songoda.skyblock.SkyBlock;
import com.songoda.skyblock.challenge.challenge.Challenge;
import com.songoda.skyblock.challenge.challenge.Challenge.Type;
@ -70,7 +71,7 @@ public class PlayerManager {
}
}
Config config = plugin.getFileManager().getConfig(new File(playersDirectory,
uuid.toString() + ".yml"));
FastUUID.toString(uuid) + ".yml"));
FileConfiguration fileConfig = config.getFileConfiguration();
HashMap<Challenge, Integer> challenges = new HashMap<>();
ConfigurationSection section = fileConfig.getConfigurationSection("challenges");
@ -120,7 +121,7 @@ public class PlayerManager {
}
islands.remove(uuid);
plugin.getFileManager().unloadConfig(new File(playersDirectory,
uuid.toString() + ".yml"));
FastUUID.toString(uuid) + ".yml"));
}
@ -212,7 +213,7 @@ public class PlayerManager {
}
}
Config config = plugin.getFileManager().getConfig(new File(playersDirectory,
uuid.toString() + ".yml"));
FastUUID.toString(uuid) + ".yml"));
FileConfiguration fileConfig = config.getFileConfiguration();
int ccId = c.getCategory().getId();
int cId = c.getId();
@ -223,7 +224,7 @@ public class PlayerManager {
fileConfig.set("challenges." + ccId + ".challenges." + cId + ".id", cId);
fileConfig.set("challenges." + ccId + ".challenges." + cId + ".count", count);
try {
fileConfig.save(new File(playersDirectory, uuid.toString() + ".yml"));
fileConfig.save(new File(playersDirectory, FastUUID.toString(uuid) + ".yml"));
} catch (IOException ex) {
ex.printStackTrace();
}
@ -253,7 +254,7 @@ public class PlayerManager {
// Not connected, check in file
Config config = plugin.getFileManager().getConfig(new File(playersDirectory,
uuid.toString() + ".yml"));
FastUUID.toString(uuid) + ".yml"));
FileConfiguration fileConfig = config.getFileConfiguration();
int ccId = c.getCategory().getId();
int cId = c.getId();

View File

@ -1,5 +1,6 @@
package com.songoda.skyblock.command.commands.admin;
import com.eatthepath.uuid.FastUUID;
import com.songoda.core.compatibility.CompatibleSound;
import com.songoda.skyblock.command.SubCommand;
import com.songoda.skyblock.config.FileManager;
@ -89,7 +90,7 @@ public class AddUpgradeCommand extends SubCommand {
island.setUpgrade(null, upgrade, true);
} else {
File islandDataFile = new File(plugin.getDataFolder().toString() + "/island-data",
islandOwnerUUID.toString() + ".yml");
FastUUID.toString(islandOwnerUUID) + ".yml");
if (!fileManager.isFileExist(islandDataFile)) {
messageManager.sendMessage(sender,

View File

@ -1,5 +1,6 @@
package com.songoda.skyblock.island;
import com.eatthepath.uuid.FastUUID;
import com.songoda.core.compatibility.CompatibleBiome;
import com.songoda.core.compatibility.CompatibleSound;
import com.songoda.core.utils.PlayerUtils;
@ -108,7 +109,7 @@ public class Island {
FileConfiguration configLoad = config.getFileConfiguration();
if (configLoad.getString("UUID") != null) {
islandUUID = UUID.fromString(configLoad.getString("UUID"));
islandUUID = FastUUID.parseUUID(configLoad.getString("UUID"));
} else {
configLoad.set("UUID", islandUUID.toString());
}
@ -203,7 +204,7 @@ public class Island {
if (configLoad.getString("Whitelist") != null) {
for (String whitelistedUUID : configLoad.getStringList("Whitelist")) {
whitelistedPlayers.add(UUID.fromString(whitelistedUUID));
whitelistedPlayers.add(FastUUID.parseUUID(whitelistedUUID));
}
}
@ -282,7 +283,7 @@ public class Island {
if (coopDataConfigLoad.getString("CoopPlayers") != null) {
for (String coopPlayerList : coopDataConfigLoad.getStringList("CoopPlayers")) {
coopPlayers.put(UUID.fromString(coopPlayerList), IslandCoop.NORMAL);
coopPlayers.put(FastUUID.parseUUID(coopPlayerList), IslandCoop.NORMAL);
}
}
}
@ -305,7 +306,7 @@ public class Island {
}
public UUID getOriginalOwnerUUID() {
return UUID.fromString(plugin.getFileManager().getConfig(new File(new File(plugin.getDataFolder().toString() + "/island-data"), ownerUUID.toString() + ".yml"))
return FastUUID.parseUUID(plugin.getFileManager().getConfig(new File(new File(plugin.getDataFolder().toString() + "/island-data"), ownerUUID.toString() + ".yml"))
.getFileConfiguration().getString("Ownership.Original"));
}
@ -592,7 +593,7 @@ public class Island {
if (configLoad.getString(role.name() + "s") != null) {
for (String playerList : configLoad.getStringList(role.name() + "s")) {
islandRoles.add(UUID.fromString(playerList));
islandRoles.add(FastUUID.parseUUID(playerList));
}
}
}
@ -642,7 +643,7 @@ public class Island {
islandMembers = configLoad.getStringList(role.name() + "s");
}
islandMembers.add(uuid.toString());
islandMembers.add(FastUUID.toString(uuid));
configLoad.set(role.name() + "s", islandMembers);
try {
@ -670,7 +671,7 @@ public class Island {
FileConfiguration configLoad = config.getFileConfiguration();
List<String> islandMembers = configLoad.getStringList(role.name() + "s");
islandMembers.remove(uuid.toString());
islandMembers.remove(FastUUID.toString(uuid));
configLoad.set(role.name() + "s", islandMembers);
try {
@ -883,7 +884,7 @@ public class Island {
List<String> tempWhitelist = new ArrayList<>();
for(UUID uuid : whitelistedPlayers) {
tempWhitelist.add(uuid.toString());
tempWhitelist.add(FastUUID.toString(uuid));
}
config.getFileConfiguration().set("Whitelist", tempWhitelist);
config.getFileConfiguration().set("Visitor.Status", status.toString());

View File

@ -3,6 +3,7 @@ package com.songoda.skyblock.island;
import com.bekvon.bukkit.residence.Residence;
import com.bekvon.bukkit.residence.containers.Flags;
import com.bekvon.bukkit.residence.protection.ClaimedResidence;
import com.eatthepath.uuid.FastUUID;
import com.google.common.base.Preconditions;
import com.songoda.core.compatibility.CompatibleBiome;
import com.songoda.core.compatibility.CompatibleMaterial;
@ -669,15 +670,15 @@ public class IslandManager {
public synchronized void deleteIslandData(UUID uuid) {
FileManager fileManager = plugin.getFileManager();
fileManager.deleteConfig(new File(plugin.getDataFolder().toString() + "/island-data", uuid.toString() + ".yml"));
fileManager.deleteConfig(new File(plugin.getDataFolder().toString() + "/ban-data", uuid.toString() + ".yml"));
fileManager.deleteConfig(new File(plugin.getDataFolder().toString() + "/coop-data", uuid.toString() + ".yml"));
fileManager.deleteConfig(new File(plugin.getDataFolder().toString() + "/level-data", uuid.toString() + ".yml"));
fileManager.deleteConfig(new File(plugin.getDataFolder().toString() + "/setting-data", uuid.toString() + ".yml"));
fileManager.deleteConfig(new File(plugin.getDataFolder().toString() + "/visit-data", uuid.toString() + ".yml"));
fileManager.deleteConfig(new File(plugin.getDataFolder().toString() + "/island-data", FastUUID.toString(uuid) + ".yml"));
fileManager.deleteConfig(new File(plugin.getDataFolder().toString() + "/ban-data", FastUUID.toString(uuid) + ".yml"));
fileManager.deleteConfig(new File(plugin.getDataFolder().toString() + "/coop-data", FastUUID.toString(uuid) + ".yml"));
fileManager.deleteConfig(new File(plugin.getDataFolder().toString() + "/level-data", FastUUID.toString(uuid) + ".yml"));
fileManager.deleteConfig(new File(plugin.getDataFolder().toString() + "/setting-data", FastUUID.toString(uuid) + ".yml"));
fileManager.deleteConfig(new File(plugin.getDataFolder().toString() + "/visit-data", FastUUID.toString(uuid) + ".yml"));
if (plugin.getFileManager().getConfig(new File(plugin.getDataFolder(), "config.yml")).getFileConfiguration()
.getBoolean("Island.Challenge.PerIsland", true)){
fileManager.deleteConfig(new File(plugin.getDataFolder().toString() + "/challenge-data", uuid.toString() + ".yml"));
fileManager.deleteConfig(new File(plugin.getDataFolder().toString() + "/challenge-data", FastUUID.toString(uuid) + ".yml"));
}
}
@ -702,7 +703,7 @@ public class IslandManager {
islandOwnerUUID = player.getUniqueId();
} else {
if (configLoad.getString("Island.Owner") != null) {
islandOwnerUUID = UUID.fromString(configLoad.getString("Island.Owner"));
islandOwnerUUID = FastUUID.parseUUID(configLoad.getString("Island.Owner"));
}
}
@ -1263,7 +1264,7 @@ public class IslandManager {
}
public boolean isIslandExist(UUID uuid) {
return plugin.getFileManager().isFileExist(new File(new File(plugin.getDataFolder().toString() + "/island-data"), uuid.toString() + ".yml"));
return plugin.getFileManager().isFileExist(new File(new File(plugin.getDataFolder().toString() + "/island-data"), FastUUID.toString(uuid) + ".yml"));
}
/*

View File

@ -647,12 +647,13 @@ public class Block implements Listener {
// Filter valid players on the island.
List<Player> possiblePlayers = new ArrayList<>();
Set<UUID> visitors = island.getVisit().getVisitors();
for (Player player : Bukkit.getOnlinePlayers()) {
boolean isMember = island.hasRole(IslandRole.Owner, player.getUniqueId()) ||
island.hasRole(IslandRole.Member, player.getUniqueId()) ||
island.hasRole(IslandRole.Coop, player.getUniqueId()) ||
island.hasRole(IslandRole.Operator, player.getUniqueId()) ||
(island.getVisit().getVisitors().contains(player.getUniqueId()) &&
(visitors.contains(player.getUniqueId()) &&
player.hasPermission("fabledskyblock.generator.anywhere") &&
!ignoreVisitors);

View File

@ -1,5 +1,6 @@
package com.songoda.skyblock.playerdata;
import com.eatthepath.uuid.FastUUID;
import com.songoda.skyblock.SkyBlock;
import com.songoda.skyblock.bank.BankManager;
import com.songoda.skyblock.bank.Transaction;
@ -63,7 +64,7 @@ public class PlayerData {
if (getConfig().getFileConfiguration().getString("ChatSpiedIslands") != null) {
for (String islandUUID : getConfig().getFileConfiguration().getStringList("ChatSpiedIslands")) {
spiedIslands.add(UUID.fromString(islandUUID));
spiedIslands.add(FastUUID.parseUUID(islandUUID));
}
}
@ -75,7 +76,7 @@ public class PlayerData {
Transaction t = new Transaction();
t.action = Transaction.Type.valueOf(configLoad.getString("Bank.Transactions."+i+".Action"));
t.amount = Float.parseFloat(Objects.requireNonNull(configLoad.getString("Bank.Transactions." + i + ".Amount")));
t.player = Bukkit.getOfflinePlayer(UUID.fromString(Objects.requireNonNull(configLoad.getString("Bank.Transactions." + i + ".Player"))));
t.player = Bukkit.getOfflinePlayer(FastUUID.parseUUID(Objects.requireNonNull(configLoad.getString("Bank.Transactions." + i + ".Player"))));
Date d = new Date();
d.setTime(configLoad.getLong("Bank.Transactions."+i+".Date"));
t.timestamp = d;
@ -202,7 +203,7 @@ public class PlayerData {
public UUID getOwner() {
String islandOwnerUUID = getConfig().getFileConfiguration().getString("Island.Owner");
return (islandOwnerUUID == null) ? null : UUID.fromString(islandOwnerUUID);
return (islandOwnerUUID == null) ? null : FastUUID.parseUUID(islandOwnerUUID);
}
public void setOwner(UUID islandOwnerUUID) {
@ -303,7 +304,7 @@ public class PlayerData {
configLoad.set("ChatSpy", chatSpy);
List<String> tempSpiedIslands = new ArrayList<>();
for(UUID uuid : spiedIslands){
tempSpiedIslands.add(uuid.toString());
tempSpiedIslands.add(FastUUID.toString(uuid));
}
configLoad.set("ChatSpiedIslands", tempSpiedIslands);
@ -316,7 +317,7 @@ public class PlayerData {
private Config getConfig() {
SkyBlock plugin = SkyBlock.getInstance();
return plugin.getFileManager().getConfig(new File(new File(plugin.getDataFolder().toString() + "/player-data"), uuid.toString() + ".yml"));
return plugin.getFileManager().getConfig(new File(new File(plugin.getDataFolder().toString() + "/player-data"), FastUUID.toString(uuid) + ".yml"));
}
public Player getPlayer() {

View File

@ -1,5 +1,6 @@
package com.songoda.skyblock.stackable;
import com.eatthepath.uuid.FastUUID;
import com.songoda.core.compatibility.CompatibleMaterial;
import com.songoda.skyblock.SkyBlock;
import com.songoda.skyblock.config.FileManager;
@ -56,7 +57,7 @@ public class StackableManager {
* section.get("Location"); org.bukkit.Material material =
* org.bukkit.Material.valueOf(section.getString("Material")); int size =
* section.getInt("Size"); if (size == 0) continue; this.addStack(new
* Stackable(UUID.fromString(uuid), location, material, size)); } } }
* Stackable(FastUUID.parseUUID(uuid), location, material, size)); } } }
*/
@SuppressWarnings("deprecation")
@ -89,7 +90,7 @@ public class StackableManager {
if (size == 0) continue;
this.addStack(new Stackable(UUID.fromString(key), loc, type, size));
this.addStack(new Stackable(FastUUID.parseUUID(key), loc, type, size));
}

View File

@ -1,5 +1,6 @@
package com.songoda.skyblock.usercache;
import com.eatthepath.uuid.FastUUID;
import com.songoda.skyblock.SkyBlock;
import com.songoda.skyblock.config.FileManager;
import com.songoda.skyblock.config.FileManager.Config;
@ -45,14 +46,14 @@ public final class UserCacheManager {
final String ownerUUIDString = fileName.substring(0, fileName.indexOf('.'));
Set<UUID> islandMembers = new HashSet<>();
islandMembers.add(UUID.fromString(ownerUUIDString));
islandMembers.add(FastUUID.parseUUID(ownerUUIDString));
for (String memberList : configLoad.getStringList("Members")) {
islandMembers.add(UUID.fromString(memberList));
islandMembers.add(FastUUID.parseUUID(memberList));
}
for (String operatorList : configLoad.getStringList("Operators")) {
islandMembers.add(UUID.fromString(operatorList));
islandMembers.add(FastUUID.parseUUID(operatorList));
}
for (UUID islandMemberList : islandMembers) {
@ -86,14 +87,14 @@ public final class UserCacheManager {
}
public void addUser(UUID uuid, String name) {
config.getFileConfiguration().set(uuid.toString(), name);
config.getFileConfiguration().set(FastUUID.toString(uuid), name);
}
public String getUser(UUID uuid) {
FileConfiguration configLoad = config.getFileConfiguration();
if (configLoad.getString(uuid.toString()) != null) {
return configLoad.getString(uuid.toString());
if (configLoad.getString(FastUUID.toString(uuid)) != null) {
return configLoad.getString(FastUUID.toString(uuid));
}
return null;
@ -104,7 +105,7 @@ public final class UserCacheManager {
for (String userList : configLoad.getConfigurationSection("").getKeys(false)) {
if (configLoad.getString(userList).equalsIgnoreCase(name)) {
return UUID.fromString(userList);
return FastUUID.parseUUID(userList);
}
}
@ -112,7 +113,7 @@ public final class UserCacheManager {
}
public boolean hasUser(UUID uuid) {
return config.getFileConfiguration().getString(uuid.toString()) != null;
return config.getFileConfiguration().getString(FastUUID.toString(uuid)) != null;
}
public boolean hasUser(String name) {

View File

@ -1,5 +1,6 @@
package com.songoda.skyblock.utils.player;
import com.eatthepath.uuid.FastUUID;
import com.google.gson.Gson;
import java.io.IOException;
@ -21,7 +22,7 @@ public final class NameFetcher {
Names[] names = null;
Scanner jsonScanner = new Scanner((new URL("https://api.mojang.com/user/profiles/" + uuid.toString().replaceAll("-", "") + "/names")).openConnection().getInputStream(), "UTF-8");
Scanner jsonScanner = new Scanner((new URL("https://api.mojang.com/user/profiles/" + FastUUID.toString(uuid).replaceAll("-", "") + "/names")).openConnection().getInputStream(), "UTF-8");
names = new Gson().fromJson(jsonScanner.next(), Names[].class);
jsonScanner.close();

View File

@ -1,5 +1,6 @@
package com.songoda.skyblock.utils.player;
import com.eatthepath.uuid.FastUUID;
import com.songoda.skyblock.SkyBlock;
import com.songoda.skyblock.usercache.UserCacheManager;
import org.bukkit.Bukkit;
@ -38,14 +39,14 @@ public class OfflinePlayer {
this.name = bukkitOfflinePlayer.getName();
FileConfiguration configLoad = YamlConfiguration.loadConfiguration(
new File(new File(plugin.getDataFolder().toString() + "/player-data"), uuid.toString() + ".yml"));
new File(new File(plugin.getDataFolder().toString() + "/player-data"), FastUUID.toString(uuid) + ".yml"));
texture = new String[]{configLoad.getString("Texture.Signature"), configLoad.getString("Texture.Value")};
playtime = configLoad.getInt("Statistics.Island.Playtime");
memberSince = configLoad.getString("Statistics.Island.Join");
lastOnline = configLoad.getString("Statistics.Island.LastOnline");
if (!(configLoad.getString("Island.Owner") == null || configLoad.getString("Island.Owner").isEmpty())) {
owner = UUID.fromString(configLoad.getString("Island.Owner"));
owner = FastUUID.parseUUID(configLoad.getString("Island.Owner"));
}
}
@ -67,14 +68,14 @@ public class OfflinePlayer {
}
FileConfiguration configLoad = YamlConfiguration.loadConfiguration(
new File(new File(plugin.getDataFolder().toString() + "/player-data"), uuid.toString() + ".yml"));
new File(new File(plugin.getDataFolder().toString() + "/player-data"), FastUUID.toString(uuid) + ".yml"));
texture = new String[]{configLoad.getString("Texture.Signature"), configLoad.getString("Texture.Value")};
playtime = configLoad.getInt("Statistics.Island.Playtime");
memberSince = configLoad.getString("Statistics.Island.Join");
lastOnline = configLoad.getString("Statistics.Island.LastOnline");
if (!(configLoad.getString("Island.Owner") == null || configLoad.getString("Island.Owner").isEmpty())) {
owner = UUID.fromString(configLoad.getString("Island.Owner"));
owner = FastUUID.parseUUID(configLoad.getString("Island.Owner"));
}
}

View File

@ -1,5 +1,6 @@
package com.songoda.skyblock.visit;
import com.eatthepath.uuid.FastUUID;
import com.songoda.skyblock.SkyBlock;
import com.songoda.skyblock.ban.Ban;
import com.songoda.skyblock.config.FileManager;
@ -114,7 +115,7 @@ public class Visit {
.getConfig(new File(new File(plugin.getDataFolder().toString() + "/visit-data"),
islandOwnerUUID.toString() + ".yml"))
.getFileConfiguration().getStringList("Visitors")) {
islandVisitors.add(UUID.fromString(islandVisitorList));
islandVisitors.add(FastUUID.parseUUID(islandVisitorList));
}
return islandVisitors;
@ -131,7 +132,7 @@ public class Visit {
islandVisitors.add(islandVisitorList);
}
islandVisitors.add(uuid.toString());
islandVisitors.add(FastUUID.toString(uuid));
configLoad.set("Visitors", islandVisitors);
}
@ -146,7 +147,7 @@ public class Visit {
islandVisitors.add(islandVisitorList);
}
islandVisitors.remove(uuid.toString());
islandVisitors.remove(FastUUID.toString(uuid));
configLoad.set("Visitors", islandVisitors);
}
@ -161,7 +162,7 @@ public class Visit {
.getConfig(new File(new File(plugin.getDataFolder().toString() + "/visit-data"),
islandOwnerUUID.toString() + ".yml"))
.getFileConfiguration().getStringList("Voters")) {
islandVoters.add(UUID.fromString(islandVisitorList));
islandVoters.add(FastUUID.parseUUID(islandVisitorList));
}
return islandVoters;
@ -176,7 +177,7 @@ public class Visit {
islandVoters.addAll(configLoad.getStringList("Voters"));
islandVoters.add(uuid.toString());
islandVoters.add(FastUUID.toString(uuid));
configLoad.set("Voters", islandVoters);
}
@ -188,7 +189,7 @@ public class Visit {
.getFileConfiguration();
for (String islandVoterList : configLoad.getStringList("Voters")) {
if (!uuid.toString().equals(islandVoterList)) {
if (!FastUUID.toString(uuid).equals(islandVoterList)) {
islandVoters.add(islandVoterList);
}
}

View File

@ -1,5 +1,6 @@
package com.songoda.skyblock.visit;
import com.eatthepath.uuid.FastUUID;
import com.songoda.core.compatibility.CompatibleSound;
import com.songoda.skyblock.SkyBlock;
import com.songoda.skyblock.config.FileManager;
@ -51,10 +52,10 @@ public class VisitManager {
FileManager.Config config = new FileManager.Config(fileManager, fileList);
FileConfiguration configLoad = config.getFileConfiguration();
UUID islandOwnerUUID = UUID.fromString(fileList.getName().replace(".yml", ""));
UUID islandOwnerUUID = FastUUID.parseUUID(fileList.getName().replace(".yml", ""));
if (islandOwnerUUID == null) {
islandOwnerUUID = UUID.fromString(fileList.getName().replaceFirst("[.][^.]+$", ""));
islandOwnerUUID = FastUUID.parseUUID(fileList.getName().replaceFirst("[.][^.]+$", ""));
if (islandOwnerUUID == null) {
continue;