diff options
Diffstat (limited to 'src/main/java/net/tylermurphy/hideAndSeek/database/Database.java')
-rw-r--r-- | src/main/java/net/tylermurphy/hideAndSeek/database/Database.java | 108 |
1 files changed, 0 insertions, 108 deletions
diff --git a/src/main/java/net/tylermurphy/hideAndSeek/database/Database.java b/src/main/java/net/tylermurphy/hideAndSeek/database/Database.java deleted file mode 100644 index 58c13cc..0000000 --- a/src/main/java/net/tylermurphy/hideAndSeek/database/Database.java +++ /dev/null @@ -1,108 +0,0 @@ -package net.tylermurphy.hideAndSeek.database; - -import static net.tylermurphy.hideAndSeek.configuration.Config.databaseType; - -import java.io.ByteArrayInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.nio.Buffer; -import java.nio.ByteBuffer; -import java.sql.Connection; -import java.sql.SQLException; -import java.util.UUID; - -import com.google.common.io.ByteStreams; - -import net.tylermurphy.hideAndSeek.Main; -import net.tylermurphy.hideAndSeek.database.connections.DatabaseConnection; -import net.tylermurphy.hideAndSeek.database.connections.MySQLConnection; -import net.tylermurphy.hideAndSeek.database.connections.SQLiteConnection; - -public class Database { - - private final GameDataTable playerInfo; - private final NameDataTable nameInfo; - private final InventoryTable inventoryInfo; - private final DatabaseConnection connection; - - public Database(){ - - if(databaseType.equalsIgnoreCase("SQLITE")) { - Main.getInstance().getLogger().info("SQLITE database chosen"); - connection = new SQLiteConnection(); - } else if(databaseType.equalsIgnoreCase("MYSQL")) { - Main.getInstance().getLogger().info("MYSQL database chosen"); - connection = new MySQLConnection(); - } else { - throw new IllegalArgumentException("Invalid database type: " + databaseType); - } - - playerInfo = new GameDataTable(this); - - nameInfo = new NameDataTable(this); - - inventoryInfo = new InventoryTable(this); - - LegacyTable legacyTable = new LegacyTable(this); - if(legacyTable.exists()){ - if(legacyTable.copyData()){ - if(!legacyTable.drop()){ - Main.getInstance().getLogger().severe("Failed to drop old legacy table: player_info. Some data may be duplicated!"); - } - } - } - } - - public GameDataTable getGameData(){ - return playerInfo; - } - - public NameDataTable getNameData() { return nameInfo; } - - public InventoryTable getInventoryData() { return inventoryInfo; } - - protected Connection connect() { - Connection conn = null; - try { - conn = connection.connect(); - } catch (SQLException e) { - Main.getInstance().getLogger().severe(e.getMessage()); - e.printStackTrace(); - } - return conn; - } - - protected byte[] encodeUUID(UUID uuid) { - try { - byte[] bytes = new byte[16]; - ByteBuffer.wrap(bytes) - .putLong(uuid.getMostSignificantBits()) - .putLong(uuid.getLeastSignificantBits()); - InputStream is = new ByteArrayInputStream(bytes); - byte[] result = new byte[is.available()]; - if (is.read(result) == -1) { - Main.getInstance().getLogger().severe("IO Error: Failed to read bytes from input stream"); - return new byte[0]; - } - return result; - } catch (IOException e) { - Main.getInstance().getLogger().severe("IO Error: " + e.getMessage()); - return new byte[0]; - } - } - - @SuppressWarnings("UnstableApiUsage") - protected UUID decodeUUID(byte[] bytes) { - InputStream is = new ByteArrayInputStream(bytes); - ByteBuffer buffer = ByteBuffer.allocate(16); - try { - buffer.put(ByteStreams.toByteArray(is)); - ((Buffer)buffer).flip(); - return new UUID(buffer.getLong(), buffer.getLong()); - } catch (IOException e) { - Main.getInstance().getLogger().severe("IO Error: " + e.getMessage()); - } - return null; - } - -} |