Page MenuHomedesp's stash

Shutdown.java
No OneTemporary

Shutdown.java

package me.despawningbone.discordbot.command.admin;
import me.despawningbone.discordbot.DiscordBot;
import me.despawningbone.discordbot.command.Command;
import me.despawningbone.discordbot.command.CommandResult;
import me.despawningbone.discordbot.command.CommandResult.CommandResultType;
import me.despawningbone.discordbot.command.music.AudioTrackHandler;
import me.despawningbone.discordbot.command.music.Music;
import net.dv8tion.jda.api.entities.Message;
import net.dv8tion.jda.api.entities.TextChannel;
import net.dv8tion.jda.api.entities.User;
public class Shutdown extends Command {
public Shutdown() {
this.desc = "Shut down the bot";
this.usage = "";
this.botUserLevel = BotUserLevel.BOT_OWNER.ordinal();
}
@Override
public CommandResult execute(TextChannel channel, User author, Message msg, String[] args) {
channel.sendMessage("Bye!").queue();
System.out.println("\nShutting down the bot...\n");
//shut down audio system gracefully first if exists
AudioTrackHandler ap = ((Music) DiscordBot.commands.get("music")).getAudioTrackHandler();
if(ap != null) ap.shutdown();
new Thread(() -> DiscordBot.mainJDA.shutdown()).start(); //new thread needed to actually shutdown correctly since or else its stuck waiting for the event to finish
return new CommandResult(CommandResultType.SUCCESS);
}
}

File Metadata

Mime Type
text/x-java
Expires
Fri, Aug 1, 1:47 PM (16 h, 12 m)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
4d/fc/29778fdd323090bb8331c45a66e8

Event Timeline