From 5af9f50551454aef049418b2ae313da41d12dcb4 Mon Sep 17 00:00:00 2001 From: Pinapelz Date: Thu, 16 Oct 2025 21:11:26 -0700 Subject: bump to JDA v6 --- pom.xml | 11 ++++++++--- src/main/java/Main.java | 24 ++++++++++-------------- src/main/java/audio/Music.java | 7 +++---- src/main/java/commands/UIPusher.java | 12 +++++------- src/main/java/utility/SpotifyAPI.java | 9 +++++---- 5 files changed, 31 insertions(+), 32 deletions(-) diff --git a/pom.xml b/pom.xml index c1feb7b..f713a4d 100644 --- a/pom.xml +++ b/pom.xml @@ -35,12 +35,12 @@ dev.arbjerg lavaplayer - 2.0.1 + 2.2.4 net.dv8tion JDA - 5.0.0-beta.13 + 6.0.0 org.jsoup @@ -52,6 +52,11 @@ json-simple 1.1.1 + + io.github.cdimascio + dotenv-java + 3.0.0 + se.michaelthelin.spotify spotify-web-api-java @@ -60,7 +65,7 @@ org.json json - 20230227 + 20231013 diff --git a/src/main/java/Main.java b/src/main/java/Main.java index 636cd3b..a078bba 100644 --- a/src/main/java/Main.java +++ b/src/main/java/Main.java @@ -1,28 +1,24 @@ import audio.Music; import net.dv8tion.jda.api.events.session.ReadyEvent; import net.dv8tion.jda.api.hooks.ListenerAdapter; -import org.json.simple.JSONObject; -import org.json.simple.parser.JSONParser; -import java.io.FileReader; - +import io.github.cdimascio.dotenv.Dotenv; public class Main extends ListenerAdapter { + private static final Dotenv dotenv = Dotenv.load(); - - public static void main( String[] args) - { - new Music("$",readSetting("YOUTUBEAPIKEY"),readSetting("DISCORDTOKEN")); + public static void main(String[] args) { + new Music("$", + readSetting("YOUTUBEAPIKEY"), + readSetting("DISCORDTOKEN") + ); } - public static String readSetting(String parameter){ + public static String readSetting(String parameter) { String value = System.getenv(parameter); - if (value != null) { - return value; - } - throw new RuntimeException("Environment variable " + parameter + " not found"); + if (value != null) return value; + return dotenv.get(parameter); } - @Override public void onReady(ReadyEvent event) { System.out.println("Loading Complete"); diff --git a/src/main/java/audio/Music.java b/src/main/java/audio/Music.java index 9d5a47b..7d5389c 100644 --- a/src/main/java/audio/Music.java +++ b/src/main/java/audio/Music.java @@ -24,15 +24,14 @@ import net.dv8tion.jda.api.events.interaction.component.ButtonInteractionEvent; import net.dv8tion.jda.api.events.interaction.component.StringSelectInteractionEvent; import net.dv8tion.jda.api.events.message.MessageReceivedEvent; import net.dv8tion.jda.api.hooks.ListenerAdapter; -import net.dv8tion.jda.api.interactions.components.selections.SelectOption; +import net.dv8tion.jda.api.components.selections.StringSelectMenu; +import net.dv8tion.jda.api.components.selections.SelectOption; -import net.dv8tion.jda.api.interactions.components.selections.StringSelectMenu; import net.dv8tion.jda.api.managers.AudioManager; import net.dv8tion.jda.api.requests.GatewayIntent; import net.dv8tion.jda.api.utils.messages.MessageCreateBuilder; import se.michaelthelin.spotify.model_objects.specification.PlaylistTrack; import utility.*; -import javax.security.auth.login.LoginException; import java.awt.*; import java.io.*; import java.net.MalformedURLException; @@ -165,7 +164,7 @@ public class Music extends ListenerAdapter { .build(); event.reply(instruction) .setEphemeral(true) - .addActionRow(menu) + .addContent(String.valueOf(menu)) .queue(); } diff --git a/src/main/java/commands/UIPusher.java b/src/main/java/commands/UIPusher.java index 43d98a3..434ea41 100644 --- a/src/main/java/commands/UIPusher.java +++ b/src/main/java/commands/UIPusher.java @@ -1,23 +1,21 @@ package commands; - - +import net.dv8tion.jda.api.components.actionrow.ActionRow; import net.dv8tion.jda.api.entities.emoji.Emoji; import net.dv8tion.jda.api.events.interaction.command.SlashCommandInteractionEvent; -import net.dv8tion.jda.api.interactions.components.buttons.Button; +import net.dv8tion.jda.api.components.buttons.Button; public class UIPusher { - public void showControls(SlashCommandInteractionEvent event){ + public void showControls(SlashCommandInteractionEvent event) { event.reply("Controls for the player:") - .addActionRow( + .addComponents(ActionRow.of( Button.primary("action-volumedown", Emoji.fromUnicode("U+1F509")), Button.primary("action-skip", Emoji.fromUnicode("U+23E9")), Button.primary("action-pause", Emoji.fromUnicode("U+23EF")), Button.primary("action-stop", Emoji.fromUnicode("U+23F9")), Button.primary("action-volumeup", Emoji.fromUnicode("U+1F50A")) - ) + )) .queue(); } - } diff --git a/src/main/java/utility/SpotifyAPI.java b/src/main/java/utility/SpotifyAPI.java index 78db8dc..34f8500 100644 --- a/src/main/java/utility/SpotifyAPI.java +++ b/src/main/java/utility/SpotifyAPI.java @@ -9,7 +9,10 @@ import se.michaelthelin.spotify.requests.authorization.client_credentials.Client import se.michaelthelin.spotify.requests.data.playlists.GetPlaylistRequest; import se.michaelthelin.spotify.requests.data.tracks.GetTrackRequest; import java.time.Instant; +import io.github.cdimascio.dotenv.Dotenv; + public class SpotifyAPI { + private static final Dotenv dotenv = Dotenv.load(); private static final String clientId = readSetting("spotifyClientID"); private static final String clientSecret = readSetting("spotifyClientSecret"); public static long lastRefresh = 0; @@ -79,10 +82,8 @@ public class SpotifyAPI { } public static String readSetting(String parameter){ String value = System.getenv(parameter); - if (value != null) { - return value; - } - throw new RuntimeException("Environment variable " + parameter + " not found"); + if (value != null) return value; + return dotenv.get(parameter); } public static void checkRefreshToken(){ long unixTime = Instant.now().getEpochSecond(); -- cgit v1.2.3