diff --git a/pom.xml b/pom.xml index 1d66620..d7348b1 100644 --- a/pom.xml +++ b/pom.xml @@ -37,11 +37,22 @@ jdash-client 4.0.5 + + org.xerial + sqlite-jdbc + 3.45.2.0 + javazoom jlayer 1.0.1 + + ch.qos.logback + logback-classic + 1.2.10 + + src diff --git a/src/data/FetchGDData.java b/src/data/FetchGDData.java deleted file mode 100644 index 0678552..0000000 --- a/src/data/FetchGDData.java +++ /dev/null @@ -1,9 +0,0 @@ -package data; - -public class FetchGDData { - - public void getSongData() { - - } - -} diff --git a/src/database/DatabaseManager.java b/src/database/DatabaseManager.java new file mode 100644 index 0000000..cfeb354 --- /dev/null +++ b/src/database/DatabaseManager.java @@ -0,0 +1,15 @@ +package database; + +public class DatabaseManager { + + public void manage() { + Sqlite sql = new Sqlite("test"); + if(sql.exists()) { + System.out.println(true); + } else { + System.out.println(false); + sql.createNewDatabase(); + } + } + +} diff --git a/src/database/Sqlite.java b/src/database/Sqlite.java new file mode 100644 index 0000000..5b344f0 --- /dev/null +++ b/src/database/Sqlite.java @@ -0,0 +1,38 @@ +package database; + +import java.io.File; +import java.sql.Connection; +import java.sql.DatabaseMetaData; +import java.sql.SQLException; +import java.sql.DriverManager; + +public class Sqlite { + + private static String url = "jdbc:sqlite:C:\\ExtremeDemonList\\database\\sqlite\\"; + private static String filename; + + public Sqlite(String dbname) { // setzt variablen + url += dbname + ".db"; + filename = dbname + ""; + + } + + public boolean exists() { // überprüft, ob datenbank existiert + + File file = new File("C:\\ExtremeDemonList\\database\\sqlite\\" + filename + ".db"); + if(file.exists()) { + return true; // ja + } else { + return false; // nein + } + } + + public void createNewDatabase() { // erstellt eine neue datenbank + try (Connection conn = DriverManager.getConnection(url)) { + DatabaseMetaData meta = conn.getMetaData(); + + } catch(SQLException e) { + e.printStackTrace(); + } + } +} diff --git a/src/firstlaunch/FirstlaunchMain.java b/src/firstlaunch/FirstlaunchMain.java index 973d307..0026e85 100644 --- a/src/firstlaunch/FirstlaunchMain.java +++ b/src/firstlaunch/FirstlaunchMain.java @@ -4,6 +4,7 @@ public class FirstlaunchMain { public void main() { + } } diff --git a/src/main/Main.java b/src/main/Main.java index 1e1116a..8b14bed 100644 --- a/src/main/Main.java +++ b/src/main/Main.java @@ -7,6 +7,7 @@ import javax.swing.UnsupportedLookAndFeelException; import api.GetApiData; import data.FetchData; import data.ManageFiles; +import database.DatabaseManager; import filestructure.CreateFileStructure; import gui.LoadMenu; @@ -27,10 +28,15 @@ public class Main { FetchData fetch = new FetchData(); fetch.getGithubString(); - load.updateBar("Liste wird auf Updates geprüft..."); + load.updateBar("Einträge werden Indexiert..."); ManageFiles manager = new ManageFiles(); - manager.compareArrays(); + manager.compareArrays(); + + load.updateBar("Datenbank wird geladen..."); + + DatabaseManager data = new DatabaseManager(); + data.manage(); load.updateBar("Ladevorgang abgeschlossen"); load.close(); diff --git a/src/media/PlaySong.java b/src/media/PlaySong.java index 55276a5..fd6a2f3 100644 --- a/src/media/PlaySong.java +++ b/src/media/PlaySong.java @@ -32,13 +32,13 @@ public class PlaySong { } private void playSong(String path) { - String filePath = path; // Passe den Pfad zu deiner MP3-Datei an + String filePath = path; try { FileInputStream fis = new FileInputStream(filePath); AdvancedPlayer player = new AdvancedPlayer(fis); - // Starte das Abspielen in einem neuen Thread, damit der Hauptthread nicht blockiert wird + Thread playerThread = new Thread(() -> { try { player.play(); @@ -49,16 +49,15 @@ public class PlaySong { playerThread.start(); - // Gib dem Player Zeit, die MP3-Datei abzuspielen - Thread.sleep(10000); // Zum Beispiel 10 Sekunden abwarten - // Beende den Player und schließe die FileInputStream + Thread.sleep(10000); + + player.close(); fis.close(); - } catch (FileNotFoundException | JavaLayerException | InterruptedException e) { + } catch (IOException | JavaLayerException | InterruptedException e) { e.printStackTrace(); - } catch (IOException e) { - // TODO Auto-generated catch block + e.printStackTrace(); } diff --git a/src/module-info.java b/src/module-info.java index b577c5f..67aea5f 100644 --- a/src/module-info.java +++ b/src/module-info.java @@ -13,4 +13,5 @@ requires jdash.client; requires jdash.common; requires jlayer; + requires java.sql; } \ No newline at end of file