fix: do not log useless stuff n dont crash when queue is too large

This commit is contained in:
ZtereoHYPE 2022-05-10 13:10:52 +02:00
parent 2bbc6b9f1d
commit e5f203cc0f
3 changed files with 9 additions and 11 deletions

View file

@ -31,8 +31,6 @@ public class Fart implements Command {
}
public void execute(MessageReceivedEvent messageEvent, String[] args) {
System.out.println("dsijfgajsdgu");
VoiceChannel voiceChannel = Objects.requireNonNull(messageEvent.getMember().getVoiceState()).getChannel();
TrackManager trackManager = TrackManagers.getOrCreateGuildTrackManager(messageEvent.getGuild(), messageEvent.getChannel(), voiceChannel);

View file

@ -24,9 +24,7 @@ public class Queue implements Command {
.aliases(new String[] { "q" })
.isNsfw(false)
.isHidden(false)
.checks(new VoiceChecks[] { VoiceChecks.BOT_CONNECTED,
VoiceChecks.USER_CONNECTED,
VoiceChecks.SAME_VC_IF_CONNECTED })
.checks(new VoiceChecks[] { VoiceChecks.BOT_CONNECTED, VoiceChecks.USER_CONNECTED, VoiceChecks.SAME_VC_IF_CONNECTED })
.build();
}
@ -36,15 +34,18 @@ public class Queue implements Command {
public void execute(MessageReceivedEvent messageEvent, String[] args) {
Guild guild = messageEvent.getGuild();
VoiceChannel voiceChannel = Objects.requireNonNull(Objects.requireNonNull(messageEvent.getMember())
.getVoiceState()).getChannel();
VoiceChannel voiceChannel = Objects.requireNonNull(Objects.requireNonNull(messageEvent.getMember()).getVoiceState()).getChannel();
MessageChannel messageChannel = messageEvent.getChannel();
TrackManager trackManager = TrackManagers.getOrCreateGuildTrackManager(guild, messageChannel, voiceChannel);
StringBuilder messageBuilder = new StringBuilder();
List<AudioTrack> trackList = trackManager.trackQueue;
List<AudioTrack> trackList = trackManager.getTrackQueue();
for (AudioTrack track : trackList) {
if (messageBuilder.length() > 1900) {
messageBuilder.append("...and " + (trackList.size() - trackList.indexOf(track)) + " more items.");
break;
}
messageBuilder.append(trackList.indexOf(track) + 1).append(". ");
messageBuilder.append(track.getInfo().title);
messageBuilder.append(System.getProperty("line.separator"));
@ -56,5 +57,4 @@ public class Queue implements Command {
messageChannel.sendMessage(messageBuilder.toString()).queue();
}
}

View file

@ -20,8 +20,8 @@ import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class SpotifyApiHelper {
private static final String CLIENT_ID = ZtereoMUSIC.getInstance().getConfig().getPropreties().get("spotify_client_id");
private static final String CLIENT_SECRET = ZtereoMUSIC.getInstance().getConfig().getPropreties().get("spotify_client_secret");
private static final String CLIENT_ID = ZtereoMUSIC.getInstance().getConfig().getPropreties().getProperty("spotify_client_id");
private static final String CLIENT_SECRET = ZtereoMUSIC.getInstance().getConfig().getPropreties().getProperty("spotify_client_secret");
private static final Pattern IDENTIFIER_PATTERN = Pattern.compile(
"(?:(?<=https://open\\.spotify\\.com/track/)|(?<=https://open\\.spotify\\.com/playlist/))(\\S+(?=\\?si=\\S))");
private static final Json JSON = Json.json();