diff --git a/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/BukkitLoginSession.java b/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/BukkitLoginSession.java index 017e99bd..b324ef4e 100644 --- a/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/BukkitLoginSession.java +++ b/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/BukkitLoginSession.java @@ -27,13 +27,12 @@ package com.github.games647.fastlogin.bukkit; import com.github.games647.craftapi.model.skin.SkinProperty; import com.github.games647.fastlogin.bukkit.listener.protocollib.packet.ClientPublicKey; -import com.github.games647.fastlogin.core.StoredProfile; import com.github.games647.fastlogin.core.shared.LoginSession; +import com.github.games647.fastlogin.core.storage.StoredProfile; +import org.jetbrains.annotations.Nullable; import java.util.Optional; -import org.jetbrains.annotations.Nullable; - /** * Represents a client connecting to the server. *
diff --git a/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/command/CrackedCommand.java b/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/command/CrackedCommand.java
index a048a11c..fbfd8b30 100644
--- a/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/command/CrackedCommand.java
+++ b/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/command/CrackedCommand.java
@@ -27,8 +27,7 @@ package com.github.games647.fastlogin.bukkit.command;
import com.github.games647.fastlogin.bukkit.FastLoginBukkit;
import com.github.games647.fastlogin.bukkit.event.BukkitFastLoginPremiumToggleEvent;
-import com.github.games647.fastlogin.core.StoredProfile;
-
+import com.github.games647.fastlogin.core.storage.StoredProfile;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.jetbrains.annotations.NotNull;
diff --git a/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/command/PremiumCommand.java b/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/command/PremiumCommand.java
index a7b3c09d..f0ed02c2 100644
--- a/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/command/PremiumCommand.java
+++ b/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/command/PremiumCommand.java
@@ -27,16 +27,15 @@ package com.github.games647.fastlogin.bukkit.command;
import com.github.games647.fastlogin.bukkit.FastLoginBukkit;
import com.github.games647.fastlogin.bukkit.event.BukkitFastLoginPremiumToggleEvent;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.shared.event.FastLoginPremiumToggleEvent.PremiumToggleReason;
-
-import java.util.UUID;
-
+import com.github.games647.fastlogin.core.storage.StoredProfile;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.jetbrains.annotations.NotNull;
+import java.util.UUID;
+
/**
* Let users activate fast login by command. This only be accessible if
* the user has access to its account. So we can make sure that not another
diff --git a/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/event/BukkitFastLoginAutoLoginEvent.java b/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/event/BukkitFastLoginAutoLoginEvent.java
index 50e8143a..ff8e6731 100644
--- a/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/event/BukkitFastLoginAutoLoginEvent.java
+++ b/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/event/BukkitFastLoginAutoLoginEvent.java
@@ -25,10 +25,9 @@
*/
package com.github.games647.fastlogin.bukkit.event;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.shared.LoginSession;
import com.github.games647.fastlogin.core.shared.event.FastLoginAutoLoginEvent;
-
+import com.github.games647.fastlogin.core.storage.StoredProfile;
import org.bukkit.event.Cancellable;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;
diff --git a/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/event/BukkitFastLoginPreLoginEvent.java b/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/event/BukkitFastLoginPreLoginEvent.java
index 0fa7c914..3f240991 100644
--- a/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/event/BukkitFastLoginPreLoginEvent.java
+++ b/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/event/BukkitFastLoginPreLoginEvent.java
@@ -25,10 +25,9 @@
*/
package com.github.games647.fastlogin.bukkit.event;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.shared.LoginSource;
import com.github.games647.fastlogin.core.shared.event.FastLoginPreLoginEvent;
-
+import com.github.games647.fastlogin.core.storage.StoredProfile;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;
import org.jetbrains.annotations.NotNull;
diff --git a/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/event/BukkitFastLoginPremiumToggleEvent.java b/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/event/BukkitFastLoginPremiumToggleEvent.java
index b5bf4428..577735f3 100644
--- a/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/event/BukkitFastLoginPremiumToggleEvent.java
+++ b/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/event/BukkitFastLoginPremiumToggleEvent.java
@@ -25,9 +25,8 @@
*/
package com.github.games647.fastlogin.bukkit.event;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.shared.event.FastLoginPremiumToggleEvent;
-
+import com.github.games647.fastlogin.core.storage.StoredProfile;
import org.bukkit.event.Event;
import org.bukkit.event.HandlerList;
import org.jetbrains.annotations.NotNull;
diff --git a/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/listener/protocollib/NameCheckTask.java b/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/listener/protocollib/NameCheckTask.java
index b210feae..3f181f23 100644
--- a/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/listener/protocollib/NameCheckTask.java
+++ b/bukkit/src/main/java/com/github/games647/fastlogin/bukkit/listener/protocollib/NameCheckTask.java
@@ -31,16 +31,15 @@ import com.github.games647.fastlogin.bukkit.BukkitLoginSession;
import com.github.games647.fastlogin.bukkit.FastLoginBukkit;
import com.github.games647.fastlogin.bukkit.event.BukkitFastLoginPreLoginEvent;
import com.github.games647.fastlogin.bukkit.listener.protocollib.packet.ClientPublicKey;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.shared.JoinManagement;
import com.github.games647.fastlogin.core.shared.event.FastLoginPreLoginEvent;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
+import org.bukkit.command.CommandSender;
+import org.bukkit.entity.Player;
import java.security.PublicKey;
import java.util.Random;
-import org.bukkit.command.CommandSender;
-import org.bukkit.entity.Player;
-
public class NameCheckTask extends JoinManagement > {
databaseConfig.setMaxLifetime(config.getInt("lifetime", 30) * 1_000L);
if (type.contains("sqlite")) {
- storage = new SQLiteStorage(this, database, databaseConfig);
+ storage = new SQLiteStorage(plugin, database, databaseConfig);
} else {
String host = config.get("host", "");
int port = config.get("port", 3306);
@@ -248,7 +247,7 @@ public class FastLoginCore > {
databaseConfig.setUsername(config.get("username", ""));
databaseConfig.setPassword(config.getString("password"));
- storage = new MySQLStorage(this, type, host, port, database, databaseConfig, useSSL);
+ storage = new MySQLStorage(plugin, type, host, port, database, databaseConfig, useSSL);
}
try {
diff --git a/core/src/main/java/com/github/games647/fastlogin/core/shared/FloodgateManagement.java b/core/src/main/java/com/github/games647/fastlogin/core/shared/FloodgateManagement.java
index a7d6d8c6..e856e1a7 100644
--- a/core/src/main/java/com/github/games647/fastlogin/core/shared/FloodgateManagement.java
+++ b/core/src/main/java/com/github/games647/fastlogin/core/shared/FloodgateManagement.java
@@ -27,16 +27,15 @@ package com.github.games647.fastlogin.core.shared;
import com.github.games647.craftapi.model.Profile;
import com.github.games647.craftapi.resolver.RateLimitException;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.hooks.AuthPlugin;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
+import org.geysermc.floodgate.api.player.FloodgatePlayer;
import java.io.IOException;
import java.net.InetSocketAddress;
import java.util.Optional;
import java.util.UUID;
-import org.geysermc.floodgate.api.player.FloodgatePlayer;
-
public abstract class FloodgateManagement >
implements Runnable {
diff --git a/core/src/main/java/com/github/games647/fastlogin/core/shared/ForceLoginManagement.java b/core/src/main/java/com/github/games647/fastlogin/core/shared/ForceLoginManagement.java
index 873a8552..f33bbb32 100644
--- a/core/src/main/java/com/github/games647/fastlogin/core/shared/ForceLoginManagement.java
+++ b/core/src/main/java/com/github/games647/fastlogin/core/shared/ForceLoginManagement.java
@@ -25,10 +25,10 @@
*/
package com.github.games647.fastlogin.core.shared;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.hooks.AuthPlugin;
import com.github.games647.fastlogin.core.shared.event.FastLoginAutoLoginEvent;
import com.github.games647.fastlogin.core.storage.SQLStorage;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
public abstract class ForceLoginManagement >
implements Runnable {
diff --git a/core/src/main/java/com/github/games647/fastlogin/core/shared/JoinManagement.java b/core/src/main/java/com/github/games647/fastlogin/core/shared/JoinManagement.java
index a467832f..eb7d4500 100644
--- a/core/src/main/java/com/github/games647/fastlogin/core/shared/JoinManagement.java
+++ b/core/src/main/java/com/github/games647/fastlogin/core/shared/JoinManagement.java
@@ -27,15 +27,14 @@ package com.github.games647.fastlogin.core.shared;
import com.github.games647.craftapi.model.Profile;
import com.github.games647.craftapi.resolver.RateLimitException;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.hooks.AuthPlugin;
import com.github.games647.fastlogin.core.hooks.bedrock.BedrockService;
import com.github.games647.fastlogin.core.shared.event.FastLoginPreLoginEvent;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
+import net.md_5.bungee.config.Configuration;
import java.util.Optional;
-import net.md_5.bungee.config.Configuration;
-
public abstract class JoinManagement {
protected final FastLoginCore core;
diff --git a/core/src/main/java/com/github/games647/fastlogin/core/shared/LoginSession.java b/core/src/main/java/com/github/games647/fastlogin/core/shared/LoginSession.java
index c4d35aa5..0903e633 100644
--- a/core/src/main/java/com/github/games647/fastlogin/core/shared/LoginSession.java
+++ b/core/src/main/java/com/github/games647/fastlogin/core/shared/LoginSession.java
@@ -25,7 +25,7 @@
*/
package com.github.games647.fastlogin.core.shared;
-import com.github.games647.fastlogin.core.StoredProfile;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
import java.util.StringJoiner;
import java.util.UUID;
diff --git a/core/src/main/java/com/github/games647/fastlogin/core/shared/event/FastLoginAutoLoginEvent.java b/core/src/main/java/com/github/games647/fastlogin/core/shared/event/FastLoginAutoLoginEvent.java
index 590f86e8..eed08192 100644
--- a/core/src/main/java/com/github/games647/fastlogin/core/shared/event/FastLoginAutoLoginEvent.java
+++ b/core/src/main/java/com/github/games647/fastlogin/core/shared/event/FastLoginAutoLoginEvent.java
@@ -25,8 +25,8 @@
*/
package com.github.games647.fastlogin.core.shared.event;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.shared.LoginSession;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
/**
* This event fires if the plugin performs an auto login on the platform where the login plugin is.
diff --git a/core/src/main/java/com/github/games647/fastlogin/core/shared/event/FastLoginPreLoginEvent.java b/core/src/main/java/com/github/games647/fastlogin/core/shared/event/FastLoginPreLoginEvent.java
index 229ec956..daec8283 100644
--- a/core/src/main/java/com/github/games647/fastlogin/core/shared/event/FastLoginPreLoginEvent.java
+++ b/core/src/main/java/com/github/games647/fastlogin/core/shared/event/FastLoginPreLoginEvent.java
@@ -25,8 +25,8 @@
*/
package com.github.games647.fastlogin.core.shared.event;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.shared.LoginSource;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
/**
* This action represents the login attempt of a player before the plugin makes any online mode actions.
diff --git a/core/src/main/java/com/github/games647/fastlogin/core/shared/event/FastLoginPremiumToggleEvent.java b/core/src/main/java/com/github/games647/fastlogin/core/shared/event/FastLoginPremiumToggleEvent.java
index e090328b..8de948e0 100644
--- a/core/src/main/java/com/github/games647/fastlogin/core/shared/event/FastLoginPremiumToggleEvent.java
+++ b/core/src/main/java/com/github/games647/fastlogin/core/shared/event/FastLoginPremiumToggleEvent.java
@@ -25,7 +25,7 @@
*/
package com.github.games647.fastlogin.core.shared.event;
-import com.github.games647.fastlogin.core.StoredProfile;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
/**
* This even represents the opt-in premium status change by request.
diff --git a/core/src/main/java/com/github/games647/fastlogin/core/storage/AuthStorage.java b/core/src/main/java/com/github/games647/fastlogin/core/storage/AuthStorage.java
index fd1f0872..9106465a 100644
--- a/core/src/main/java/com/github/games647/fastlogin/core/storage/AuthStorage.java
+++ b/core/src/main/java/com/github/games647/fastlogin/core/storage/AuthStorage.java
@@ -25,8 +25,6 @@
*/
package com.github.games647.fastlogin.core.storage;
-import com.github.games647.fastlogin.core.StoredProfile;
-
import java.util.UUID;
public interface AuthStorage {
diff --git a/core/src/main/java/com/github/games647/fastlogin/core/storage/MySQLStorage.java b/core/src/main/java/com/github/games647/fastlogin/core/storage/MySQLStorage.java
index 135046bf..f2efe2b3 100644
--- a/core/src/main/java/com/github/games647/fastlogin/core/storage/MySQLStorage.java
+++ b/core/src/main/java/com/github/games647/fastlogin/core/storage/MySQLStorage.java
@@ -25,7 +25,7 @@
*/
package com.github.games647.fastlogin.core.storage;
-import com.github.games647.fastlogin.core.shared.FastLoginCore;
+import com.github.games647.fastlogin.core.shared.PlatformPlugin;
import com.zaxxer.hikari.HikariConfig;
public class MySQLStorage extends SQLStorage {
@@ -34,9 +34,10 @@ public class MySQLStorage extends SQLStorage {
private static final String MYSQL_DRIVER = "com.mysql.cj.jdbc.Driver";
private static final String MARIADB_DRIVER = "fastlogin.mariadb.jdbc.Driver";
- public MySQLStorage(FastLoginCore, ?, ?> core, String driver, String host, int port, String database,
+ public MySQLStorage(PlatformPlugin> plugin, String driver, String host, int port, String database,
HikariConfig config, boolean useSSL) {
- super(core, setParams(config, driver, host, port, database, useSSL));
+ super(plugin.getLog(), plugin.getName(), plugin.getThreadFactory(),
+ setParams(config, driver, host, port, database, useSSL));
}
private static HikariConfig setParams(HikariConfig config,
diff --git a/core/src/main/java/com/github/games647/fastlogin/core/storage/SQLStorage.java b/core/src/main/java/com/github/games647/fastlogin/core/storage/SQLStorage.java
index dff841bf..c080ee9f 100644
--- a/core/src/main/java/com/github/games647/fastlogin/core/storage/SQLStorage.java
+++ b/core/src/main/java/com/github/games647/fastlogin/core/storage/SQLStorage.java
@@ -26,10 +26,9 @@
package com.github.games647.fastlogin.core.storage;
import com.github.games647.craftapi.UUIDAdapter;
-import com.github.games647.fastlogin.core.StoredProfile;
-import com.github.games647.fastlogin.core.shared.FastLoginCore;
import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;
+import org.slf4j.Logger;
import java.sql.Connection;
import java.sql.PreparedStatement;
@@ -65,16 +64,14 @@ public abstract class SQLStorage implements AuthStorage {
protected static final String UPDATE_PROFILE = "UPDATE `" + PREMIUM_TABLE
+ "` SET `UUID`=?, `Name`=?, `Premium`=?, `LastIp`=?, `LastLogin`=CURRENT_TIMESTAMP WHERE `UserID`=?";
- protected final FastLoginCore, ?, ?> core;
+ protected final Logger log;
protected final HikariDataSource dataSource;
- public SQLStorage(FastLoginCore, ?, ?> core, HikariConfig config) {
- this.core = core;
- config.setPoolName(core.getPlugin().getName());
-
- ThreadFactory platformThreadFactory = core.getPlugin().getThreadFactory();
- if (platformThreadFactory != null) {
- config.setThreadFactory(platformThreadFactory);
+ public SQLStorage(Logger log, String poolName, ThreadFactory threadFactory, HikariConfig config) {
+ this.log = log;
+ config.setPoolName(poolName);
+ if (threadFactory != null) {
+ config.setThreadFactory(threadFactory);
}
this.dataSource = new HikariDataSource(config);
@@ -103,7 +100,7 @@ public abstract class SQLStorage implements AuthStorage {
return parseResult(resultSet).orElseGet(() -> new StoredProfile(null, name, false, ""));
}
} catch (SQLException sqlEx) {
- core.getPlugin().getLog().error("Failed to query profile: {}", name, sqlEx);
+ log.error("Failed to query profile: {}", name, sqlEx);
}
return null;
@@ -119,7 +116,7 @@ public abstract class SQLStorage implements AuthStorage {
return parseResult(resultSet).orElse(null);
}
} catch (SQLException sqlEx) {
- core.getPlugin().getLog().error("Failed to query profile: {}", uuid, sqlEx);
+ log.error("Failed to query profile: {}", uuid, sqlEx);
}
return null;
@@ -178,7 +175,7 @@ public abstract class SQLStorage implements AuthStorage {
playerProfile.getSaveLock().unlock();
}
} catch (SQLException ex) {
- core.getPlugin().getLog().error("Failed to save playerProfile {}", playerProfile, ex);
+ log.error("Failed to save playerProfile {}", playerProfile, ex);
}
}
diff --git a/core/src/main/java/com/github/games647/fastlogin/core/storage/SQLiteStorage.java b/core/src/main/java/com/github/games647/fastlogin/core/storage/SQLiteStorage.java
index 85017049..aea192d0 100644
--- a/core/src/main/java/com/github/games647/fastlogin/core/storage/SQLiteStorage.java
+++ b/core/src/main/java/com/github/games647/fastlogin/core/storage/SQLiteStorage.java
@@ -25,11 +25,12 @@
*/
package com.github.games647.fastlogin.core.storage;
-import com.github.games647.fastlogin.core.StoredProfile;
-import com.github.games647.fastlogin.core.shared.FastLoginCore;
import com.github.games647.fastlogin.core.shared.PlatformPlugin;
import com.zaxxer.hikari.HikariConfig;
+import org.sqlite.JDBC;
+import org.sqlite.SQLiteConfig;
+import java.nio.file.Path;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;
@@ -37,16 +38,14 @@ import java.util.UUID;
import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;
-import org.sqlite.JDBC;
-import org.sqlite.SQLiteConfig;
-
public class SQLiteStorage extends SQLStorage {
private static final String SQLITE_DRIVER = "org.sqlite.SQLiteDataSource";
private final Lock lock = new ReentrantLock();
- public SQLiteStorage(FastLoginCore, ?, ?> core, String databasePath, HikariConfig config) {
- super(core, setParams(config, replacePathVariables(core.getPlugin(), databasePath)));
+ public SQLiteStorage(PlatformPlugin> plugin, String databasePath, HikariConfig config) {
+ super(plugin.getLog(), plugin.getName(), plugin.getThreadFactory(),
+ setParams(config, replacePathVariables(plugin.getPluginFolder(), databasePath)));
}
private static HikariConfig setParams(HikariConfig config, String path) {
@@ -112,8 +111,8 @@ public class SQLiteStorage extends SQLStorage {
}
}
- private static String replacePathVariables(PlatformPlugin> plugin, String input) {
- String pluginFolder = plugin.getPluginFolder().toAbsolutePath().toString();
+ private static String replacePathVariables(Path dataFolder, String input) {
+ String pluginFolder = dataFolder.toAbsolutePath().toString();
return input.replace("{pluginDir}", pluginFolder);
}
}
diff --git a/core/src/main/java/com/github/games647/fastlogin/core/StoredProfile.java b/core/src/main/java/com/github/games647/fastlogin/core/storage/StoredProfile.java
similarity index 98%
rename from core/src/main/java/com/github/games647/fastlogin/core/StoredProfile.java
rename to core/src/main/java/com/github/games647/fastlogin/core/storage/StoredProfile.java
index 26492d31..b6733fe1 100644
--- a/core/src/main/java/com/github/games647/fastlogin/core/StoredProfile.java
+++ b/core/src/main/java/com/github/games647/fastlogin/core/storage/StoredProfile.java
@@ -23,7 +23,7 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
* SOFTWARE.
*/
-package com.github.games647.fastlogin.core;
+package com.github.games647.fastlogin.core.storage;
import com.github.games647.craftapi.model.Profile;
diff --git a/velocity/src/main/java/com/github/games647/fastlogin/velocity/VelocityLoginSession.java b/velocity/src/main/java/com/github/games647/fastlogin/velocity/VelocityLoginSession.java
index 053c2ba2..c965db42 100644
--- a/velocity/src/main/java/com/github/games647/fastlogin/velocity/VelocityLoginSession.java
+++ b/velocity/src/main/java/com/github/games647/fastlogin/velocity/VelocityLoginSession.java
@@ -25,8 +25,8 @@
*/
package com.github.games647.fastlogin.velocity;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.shared.LoginSession;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
public class VelocityLoginSession extends LoginSession {
private boolean alreadySaved;
diff --git a/velocity/src/main/java/com/github/games647/fastlogin/velocity/event/VelocityFastLoginAutoLoginEvent.java b/velocity/src/main/java/com/github/games647/fastlogin/velocity/event/VelocityFastLoginAutoLoginEvent.java
index 6049b694..7932367d 100644
--- a/velocity/src/main/java/com/github/games647/fastlogin/velocity/event/VelocityFastLoginAutoLoginEvent.java
+++ b/velocity/src/main/java/com/github/games647/fastlogin/velocity/event/VelocityFastLoginAutoLoginEvent.java
@@ -25,9 +25,9 @@
*/
package com.github.games647.fastlogin.velocity.event;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.shared.LoginSession;
import com.github.games647.fastlogin.core.shared.event.FastLoginAutoLoginEvent;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
import com.velocitypowered.api.event.ResultedEvent;
import java.util.Objects;
diff --git a/velocity/src/main/java/com/github/games647/fastlogin/velocity/event/VelocityFastLoginPreLoginEvent.java b/velocity/src/main/java/com/github/games647/fastlogin/velocity/event/VelocityFastLoginPreLoginEvent.java
index e7362c1b..9b74ccb8 100644
--- a/velocity/src/main/java/com/github/games647/fastlogin/velocity/event/VelocityFastLoginPreLoginEvent.java
+++ b/velocity/src/main/java/com/github/games647/fastlogin/velocity/event/VelocityFastLoginPreLoginEvent.java
@@ -25,9 +25,9 @@
*/
package com.github.games647.fastlogin.velocity.event;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.shared.LoginSource;
import com.github.games647.fastlogin.core.shared.event.FastLoginPreLoginEvent;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
public class VelocityFastLoginPreLoginEvent implements FastLoginPreLoginEvent {
diff --git a/velocity/src/main/java/com/github/games647/fastlogin/velocity/event/VelocityFastLoginPremiumToggleEvent.java b/velocity/src/main/java/com/github/games647/fastlogin/velocity/event/VelocityFastLoginPremiumToggleEvent.java
index df2f4814..f0a1d31e 100644
--- a/velocity/src/main/java/com/github/games647/fastlogin/velocity/event/VelocityFastLoginPremiumToggleEvent.java
+++ b/velocity/src/main/java/com/github/games647/fastlogin/velocity/event/VelocityFastLoginPremiumToggleEvent.java
@@ -25,8 +25,8 @@
*/
package com.github.games647.fastlogin.velocity.event;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.shared.event.FastLoginPremiumToggleEvent;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
public class VelocityFastLoginPremiumToggleEvent implements FastLoginPremiumToggleEvent {
diff --git a/velocity/src/main/java/com/github/games647/fastlogin/velocity/listener/ConnectListener.java b/velocity/src/main/java/com/github/games647/fastlogin/velocity/listener/ConnectListener.java
index 1010871f..b18f7bfd 100644
--- a/velocity/src/main/java/com/github/games647/fastlogin/velocity/listener/ConnectListener.java
+++ b/velocity/src/main/java/com/github/games647/fastlogin/velocity/listener/ConnectListener.java
@@ -26,10 +26,10 @@
package com.github.games647.fastlogin.velocity.listener;
import com.github.games647.craftapi.UUIDAdapter;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.antibot.AntiBotService;
import com.github.games647.fastlogin.core.antibot.AntiBotService.Action;
import com.github.games647.fastlogin.core.shared.LoginSession;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
import com.github.games647.fastlogin.velocity.FastLoginVelocity;
import com.github.games647.fastlogin.velocity.VelocityLoginSession;
import com.github.games647.fastlogin.velocity.task.AsyncPremiumCheck;
@@ -46,6 +46,8 @@ import com.velocitypowered.api.proxy.Player;
import com.velocitypowered.api.proxy.server.RegisteredServer;
import com.velocitypowered.api.util.GameProfile;
import com.velocitypowered.api.util.GameProfile.Property;
+import net.kyori.adventure.text.TextComponent;
+import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
import java.net.InetSocketAddress;
import java.util.ArrayList;
@@ -54,9 +56,6 @@ import java.util.List;
import java.util.UUID;
import java.util.concurrent.TimeUnit;
-import net.kyori.adventure.text.TextComponent;
-import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
-
public class ConnectListener {
private final FastLoginVelocity plugin;
diff --git a/velocity/src/main/java/com/github/games647/fastlogin/velocity/listener/PluginMessageListener.java b/velocity/src/main/java/com/github/games647/fastlogin/velocity/listener/PluginMessageListener.java
index 4e6b1183..6831876f 100644
--- a/velocity/src/main/java/com/github/games647/fastlogin/velocity/listener/PluginMessageListener.java
+++ b/velocity/src/main/java/com/github/games647/fastlogin/velocity/listener/PluginMessageListener.java
@@ -25,10 +25,10 @@
*/
package com.github.games647.fastlogin.velocity.listener;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.message.ChangePremiumMessage;
import com.github.games647.fastlogin.core.message.SuccessMessage;
import com.github.games647.fastlogin.core.shared.FastLoginCore;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
import com.github.games647.fastlogin.velocity.FastLoginVelocity;
import com.github.games647.fastlogin.velocity.VelocityLoginSession;
import com.github.games647.fastlogin.velocity.task.AsyncToggleMessage;
@@ -40,11 +40,10 @@ import com.velocitypowered.api.event.connection.PluginMessageEvent;
import com.velocitypowered.api.proxy.Player;
import com.velocitypowered.api.proxy.ServerConnection;
import com.velocitypowered.api.proxy.messages.MinecraftChannelIdentifier;
+import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
import java.util.Arrays;
-import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
-
public class PluginMessageListener {
private final FastLoginVelocity plugin;
diff --git a/velocity/src/main/java/com/github/games647/fastlogin/velocity/task/AsyncPremiumCheck.java b/velocity/src/main/java/com/github/games647/fastlogin/velocity/task/AsyncPremiumCheck.java
index 46f64261..1aa76cb0 100644
--- a/velocity/src/main/java/com/github/games647/fastlogin/velocity/task/AsyncPremiumCheck.java
+++ b/velocity/src/main/java/com/github/games647/fastlogin/velocity/task/AsyncPremiumCheck.java
@@ -25,9 +25,9 @@
*/
package com.github.games647.fastlogin.velocity.task;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.shared.JoinManagement;
import com.github.games647.fastlogin.core.shared.event.FastLoginPreLoginEvent;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
import com.github.games647.fastlogin.velocity.FastLoginVelocity;
import com.github.games647.fastlogin.velocity.VelocityLoginSession;
import com.github.games647.fastlogin.velocity.VelocityLoginSource;
diff --git a/velocity/src/main/java/com/github/games647/fastlogin/velocity/task/AsyncToggleMessage.java b/velocity/src/main/java/com/github/games647/fastlogin/velocity/task/AsyncToggleMessage.java
index 537ce79c..a4946c36 100644
--- a/velocity/src/main/java/com/github/games647/fastlogin/velocity/task/AsyncToggleMessage.java
+++ b/velocity/src/main/java/com/github/games647/fastlogin/velocity/task/AsyncToggleMessage.java
@@ -25,15 +25,14 @@
*/
package com.github.games647.fastlogin.velocity.task;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.shared.FastLoginCore;
import com.github.games647.fastlogin.core.shared.event.FastLoginPremiumToggleEvent.PremiumToggleReason;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
import com.github.games647.fastlogin.velocity.FastLoginVelocity;
import com.github.games647.fastlogin.velocity.event.VelocityFastLoginPremiumToggleEvent;
import com.velocitypowered.api.command.CommandSource;
import com.velocitypowered.api.proxy.ConsoleCommandSource;
import com.velocitypowered.api.proxy.Player;
-
import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
public class AsyncToggleMessage implements Runnable {
diff --git a/velocity/src/main/java/com/github/games647/fastlogin/velocity/task/ForceLoginTask.java b/velocity/src/main/java/com/github/games647/fastlogin/velocity/task/ForceLoginTask.java
index f0af266a..d956951b 100644
--- a/velocity/src/main/java/com/github/games647/fastlogin/velocity/task/ForceLoginTask.java
+++ b/velocity/src/main/java/com/github/games647/fastlogin/velocity/task/ForceLoginTask.java
@@ -25,7 +25,6 @@
*/
package com.github.games647.fastlogin.velocity.task;
-import com.github.games647.fastlogin.core.StoredProfile;
import com.github.games647.fastlogin.core.message.ChannelMessage;
import com.github.games647.fastlogin.core.message.LoginActionMessage;
import com.github.games647.fastlogin.core.message.LoginActionMessage.Type;
@@ -33,6 +32,7 @@ import com.github.games647.fastlogin.core.shared.FastLoginCore;
import com.github.games647.fastlogin.core.shared.ForceLoginManagement;
import com.github.games647.fastlogin.core.shared.LoginSession;
import com.github.games647.fastlogin.core.shared.event.FastLoginAutoLoginEvent;
+import com.github.games647.fastlogin.core.storage.StoredProfile;
import com.github.games647.fastlogin.velocity.FastLoginVelocity;
import com.github.games647.fastlogin.velocity.VelocityLoginSession;
import com.github.games647.fastlogin.velocity.event.VelocityFastLoginAutoLoginEvent;