From 0863e0723b82d8c60284329a159cdf5270f44577 Mon Sep 17 00:00:00 2001 From: anthorob Date: Wed, 28 Oct 2026 16:55:58 -0400 Subject: [PATCH] **Add playlist identifier to `LoadPlaylistTask`** Introduced a new `playlistIdentifier` field in `LoadPlaylistTask` to enhance playlist tracking. Updated relevant method calls to include and utilize the identifier, ensuring more robust metadata management and consistency across the codebase. --- .../bobert/netneutrality/music/TrackLoadingHandler.java | 4 ++-- .../netneutrality/tasks/music/LoadPlaylistTask.java | 8 +++++--- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/main/java/me/bobert/netneutrality/music/TrackLoadingHandler.java b/src/main/java/me/bobert/netneutrality/music/TrackLoadingHandler.java index 09d6bb8..9e1753d 100644 --- a/src/main/java/me/bobert/netneutrality/music/TrackLoadingHandler.java +++ b/src/main/java/me/bobert/netneutrality/music/TrackLoadingHandler.java @@ -67,7 +67,7 @@ public class TrackLoadingHandler extends AbstractAudioLoadResultHandler { public void onPlaylistLoaded(PlaylistLoaded result) { logger.debug("Guild {}: playlist loaded: {}", guild.getId(), identifier); - new LoadPlaylistTask(result.getInfo().getName(), result.getTracks(), false, type, manager).insert(context); + new LoadPlaylistTask(identifier, result.getInfo().getName(), result.getTracks(), false, type, manager).insert(context); } /** @@ -84,7 +84,7 @@ public class TrackLoadingHandler extends AbstractAudioLoadResultHandler { return; } - new LoadPlaylistTask("Search results", tracks, true, type, manager).insert(context); + new LoadPlaylistTask(identifier, "Search results", tracks, true, type, manager).insert(context); } @Override diff --git a/src/main/java/me/bobert/netneutrality/tasks/music/LoadPlaylistTask.java b/src/main/java/me/bobert/netneutrality/tasks/music/LoadPlaylistTask.java index 5c3c10e..800212b 100644 --- a/src/main/java/me/bobert/netneutrality/tasks/music/LoadPlaylistTask.java +++ b/src/main/java/me/bobert/netneutrality/tasks/music/LoadPlaylistTask.java @@ -28,15 +28,17 @@ import java.util.List; public class LoadPlaylistTask extends ButtonTask implements WithChildren, Deletable { private final List childrens = new ArrayList<>(); + private final String playlistIdentifier; private final String playlistName; private final List playlistTracks; private final boolean searchResult; private final SourceFinder.AudioSourceType sourceType; private final MusicManager musicManager; - public LoadPlaylistTask(String playlistName, List playlistTracks, boolean searchResult, + public LoadPlaylistTask(String playlistIdentifier, String playlistName, List playlistTracks, boolean searchResult, SourceFinder.AudioSourceType sourceType, MusicManager musicManager) { super(musicManager.getTaskManager(), null, null); + this.playlistIdentifier = playlistIdentifier; this.playlistName = playlistName; this.playlistTracks = playlistTracks; this.searchResult = searchResult; @@ -95,7 +97,7 @@ public class LoadPlaylistTask extends ButtonTask implements WithChildren, Deleta // Load playlist normally if (MusicUtils.connect(context, musicManager)) { musicManager.getQueueManager().queue(tracks, context.getGuildUser(), - new PlaylistInfo(null, playlistName, tracks.size())); + new PlaylistInfo(playlistIdentifier, playlistName, tracks.size())); context.edit(MessageFunction.buildAddingPlaylistMessage(tracks, playlistName, context.getGuildUser(), sourceType)); } @@ -106,7 +108,7 @@ public class LoadPlaylistTask extends ButtonTask implements WithChildren, Deleta Member member = context.getGuildUser(); if (MusicUtils.connect(context, musicManager)) { - musicManager.getQueueManager().queue(tracks, member, new PlaylistInfo(null, playlistName, tracks.size())); + musicManager.getQueueManager().queue(tracks, member, new PlaylistInfo(playlistIdentifier, playlistName, tracks.size())); context.reply(MessageFunction.buildAddingPlaylistMessage(tracks, playlistName, member, SourceFinder.AudioSourceType.Youtube)); return Lifecycle.REMOVE_SELF_AND_CHILDREN;