From c0ff5b7c82fad02d7bbb229fd185c81a36108b13 Mon Sep 17 00:00:00 2001 From: potzplitz <127513690+potzplitz@users.noreply.github.com> Date: Fri, 22 Mar 2024 19:32:52 +0100 Subject: [PATCH] working on song media player added gd server api request working on player --- builds/classes/META-INF/MANIFEST.MF | 4 -- .../ExtremeDemonList/pom.properties | 7 ---- .../ExtremeDemonList/ExtremeDemonList/pom.xml | 39 ------------------- pom.xml | 5 +++ src/api/GetApiData.java | 20 ++++++++++ src/data/GuiData.java | 4 -- src/data/ManageFiles.java | 1 - src/filestructure/CreateFileStructure.java | 5 +++ src/gui/MainGUI.java | 2 +- src/gui/VerifyInfo.java | 11 +++++- src/main/Main.java | 3 +- src/media/PlaySong.java | 5 +++ src/module-info.java | 2 + 13 files changed, 50 insertions(+), 58 deletions(-) delete mode 100644 builds/classes/META-INF/MANIFEST.MF delete mode 100644 builds/classes/META-INF/maven/ExtremeDemonList/ExtremeDemonList/pom.properties delete mode 100644 builds/classes/META-INF/maven/ExtremeDemonList/ExtremeDemonList/pom.xml create mode 100644 src/api/GetApiData.java create mode 100644 src/media/PlaySong.java diff --git a/builds/classes/META-INF/MANIFEST.MF b/builds/classes/META-INF/MANIFEST.MF deleted file mode 100644 index b55046a..0000000 --- a/builds/classes/META-INF/MANIFEST.MF +++ /dev/null @@ -1,4 +0,0 @@ -Manifest-Version: 1.0 -Build-Jdk-Spec: 17 -Created-By: Maven Integration for Eclipse - diff --git a/builds/classes/META-INF/maven/ExtremeDemonList/ExtremeDemonList/pom.properties b/builds/classes/META-INF/maven/ExtremeDemonList/ExtremeDemonList/pom.properties deleted file mode 100644 index 5e042ce..0000000 --- a/builds/classes/META-INF/maven/ExtremeDemonList/ExtremeDemonList/pom.properties +++ /dev/null @@ -1,7 +0,0 @@ -#Generated by Maven Integration for Eclipse -#Sun Mar 03 02:06:38 CET 2024 -m2e.projectLocation=C\:\\Users\\jansc\\eclipse-workspace\\ExtremeDemonList -m2e.projectName=ExtremeDemonList -groupId=ExtremeDemonList -artifactId=ExtremeDemonList -version=0.0.1-SNAPSHOT diff --git a/builds/classes/META-INF/maven/ExtremeDemonList/ExtremeDemonList/pom.xml b/builds/classes/META-INF/maven/ExtremeDemonList/ExtremeDemonList/pom.xml deleted file mode 100644 index e75641c..0000000 --- a/builds/classes/META-INF/maven/ExtremeDemonList/ExtremeDemonList/pom.xml +++ /dev/null @@ -1,39 +0,0 @@ - - 4.0.0 - ExtremeDemonList - ExtremeDemonList - 0.0.1-SNAPSHOT - - - - org.json - json - 20140107 - - - com.google.code.gson - gson - 2.8.6 - - - - commons-io - commons-io - 2.6 - - - - ${project.basedir}/builds - src - - - org.apache.maven.plugins - maven-compiler-plugin - 3.10.1 - - 17 - - - - - diff --git a/pom.xml b/pom.xml index b165076..a477d63 100644 --- a/pom.xml +++ b/pom.xml @@ -31,6 +31,11 @@ com.formdev flatlaf 3.4 + + + com.alex1304.jdash + jdash-client + 4.0.5 diff --git a/src/api/GetApiData.java b/src/api/GetApiData.java new file mode 100644 index 0000000..82efd9d --- /dev/null +++ b/src/api/GetApiData.java @@ -0,0 +1,20 @@ +package api; + +import jdash.client.GDClient; +import jdash.common.entity.GDLevel; + +public class GetApiData { + + public String getGDSongID(int id) { + + GDClient client = GDClient.create(); + + GDLevel level = client.findLevelById(id).block(); + + String songID = level.song().get().downloadUrl() + ""; + songID = songID.substring(songID.indexOf("[") + 1, songID.length() - 1); + + return songID; + } + +} diff --git a/src/data/GuiData.java b/src/data/GuiData.java index e485b29..6d05b9a 100644 --- a/src/data/GuiData.java +++ b/src/data/GuiData.java @@ -25,10 +25,6 @@ public class GuiData { private FetchData data = new FetchData(); - public void setId(ArrayList id) { - this.id = id; - } - private int localLength; public int getLocalLength() { diff --git a/src/data/ManageFiles.java b/src/data/ManageFiles.java index 0199bdf..85dddcb 100644 --- a/src/data/ManageFiles.java +++ b/src/data/ManageFiles.java @@ -28,7 +28,6 @@ public class ManageFiles { fetch.getGithubString(); - for(int i = 0; i < fetch.allLevels().size(); i++) { File file = new File("C:\\ExtremeDemonList\\levels\\" + fetch.allLevels().get(i) + ".json"); diff --git a/src/filestructure/CreateFileStructure.java b/src/filestructure/CreateFileStructure.java index 9369459..b2ba0b4 100644 --- a/src/filestructure/CreateFileStructure.java +++ b/src/filestructure/CreateFileStructure.java @@ -8,6 +8,7 @@ public class CreateFileStructure { File file = new File("C:\\ExtremeDemonList\\levels"); File file2 = new File("C:\\ExtremeDemonList\\completed"); + File file3 = new File("C:\\ExtremeDemonList\\index"); if(!file.isDirectory()) { file.mkdirs(); @@ -17,6 +18,10 @@ public class CreateFileStructure { file2.mkdirs(); } + if(!file3.exists()) { + file3.mkdirs(); + } + } } diff --git a/src/gui/MainGUI.java b/src/gui/MainGUI.java index de9b6f3..b5fa262 100644 --- a/src/gui/MainGUI.java +++ b/src/gui/MainGUI.java @@ -204,7 +204,7 @@ public class MainGUI { public void actionPerformed(ActionEvent e) { String url = data.getYoutubeLink().get(index); VerifyInfo ver = VerifyInfo.getInstance(); - ver.showInfo(url); + ver.showInfo(url, Integer.parseInt(data.getId().get(index))); } }); diff --git a/src/gui/VerifyInfo.java b/src/gui/VerifyInfo.java index 2d8a33c..9bae0b6 100644 --- a/src/gui/VerifyInfo.java +++ b/src/gui/VerifyInfo.java @@ -1,5 +1,6 @@ package gui; +import java.awt.Button; import java.awt.Image; import java.awt.image.BufferedImage; import java.io.IOException; @@ -10,12 +11,15 @@ import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; +import api.GetApiData; + public class VerifyInfo { private static VerifyInfo instance = null; private JFrame frame; private JLabel ytthumbnail; + private Button playsong; private VerifyInfo() { frame = new JFrame("Verifikationsinfos"); @@ -34,7 +38,7 @@ public class VerifyInfo { return instance; } - public void showInfo(String url) { + public void showInfo(String url, int id) { frame.getContentPane().removeAll(); // Clear previous content ytthumbnail.setBounds(90, 70, 200, 110); @@ -70,5 +74,10 @@ public class VerifyInfo { frame.add(ytthumbnail); frame.setVisible(true); + + GetApiData data = new GetApiData(); + + System.out.println(data.getGDSongID(id)); + } } diff --git a/src/main/Main.java b/src/main/Main.java index aa2f439..1e1116a 100644 --- a/src/main/Main.java +++ b/src/main/Main.java @@ -4,6 +4,7 @@ import java.io.IOException; import javax.swing.UnsupportedLookAndFeelException; +import api.GetApiData; import data.FetchData; import data.ManageFiles; import filestructure.CreateFileStructure; @@ -29,7 +30,7 @@ public class Main { load.updateBar("Liste wird auf Updates geprüft..."); ManageFiles manager = new ManageFiles(); - manager.compareArrays(); + manager.compareArrays(); load.updateBar("Ladevorgang abgeschlossen"); load.close(); diff --git a/src/media/PlaySong.java b/src/media/PlaySong.java new file mode 100644 index 0000000..0f88215 --- /dev/null +++ b/src/media/PlaySong.java @@ -0,0 +1,5 @@ +package media; + +public class PlaySong { + +} diff --git a/src/module-info.java b/src/module-info.java index 137edb6..32ba37f 100644 --- a/src/module-info.java +++ b/src/module-info.java @@ -10,4 +10,6 @@ requires org.apache.commons.io; requires java.datatransfer; requires com.formdev.flatlaf; + requires jdash.client; + requires jdash.common; } \ No newline at end of file