diff --git a/pom.xml b/pom.xml
index bfe2c10..207c412 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,22 +3,27 @@
4.0.0
com.xtremcommunity.discord
netneutrality
- 0.0.1
- MusicBot
- Music bot
+ 1.0.0
+ netneutrality-discord-bot
+ Discord bot
+ jar
- 1.8
- 1.8
+ 1.11
+ 1.11
-
- https://gitlab.xtremcommunity.com/nn.jar
-
+
- jcenter
- http://jcenter.bintray.com
+ central
+ https://repo1.maven.org/maven2/
+
+
+
+ dv8tion
+ m2-dv8tion
+ https://m2.dv8tion.net/releases
@@ -27,27 +32,27 @@
net.dv8tion
JDA
- 4.1.0_81
+ 4.3.0_277
com.squareup.okhttp3
okhttp
- 3.13.0
+ 4.9.1
org.json
json
- 20180813
+ 20210307
org.reflections
reflections
- 0.9.11
+ 0.9.12
@@ -58,33 +63,33 @@
org.apache.logging.log4j
log4j-api
- 2.10.0
+ 2.14.1
org.apache.logging.log4j
log4j-core
- 2.10.0
+ 2.14.1
org.apache.logging.log4j
log4j-slf4j-impl
- 2.10.0
+ 2.14.1
org.fusesource.jansi
jansi
- 1.17
+ 2.3.4
runtime
com.sedmelluq
lavaplayer
- 1.3.33
+ 1.3.77
junit
junit
- RELEASE
+ 4.13.2
diff --git a/src/main/java/netneutrality/MusicBot.java b/src/main/java/netneutrality/MusicBot.java
index b69c9ba..af727d1 100644
--- a/src/main/java/netneutrality/MusicBot.java
+++ b/src/main/java/netneutrality/MusicBot.java
@@ -26,10 +26,11 @@ public class MusicBot {
public static void main(String[] args) {
System.setProperty("log4j.skipJansi", "false");
+ Settings.init();
DBController.init();
try {
- jda = new JDABuilder(AccountType.BOT).setToken(Settings.TOKEN).build();
+ jda = JDABuilder.createDefault(Settings.TOKEN).build();
jda.awaitReady();
} catch (LoginException | IllegalArgumentException e) {
LogHandler.log(e);
@@ -42,8 +43,7 @@ public class MusicBot {
jda.addEventListener(new NewCommandListener(), new EditHandler());
// WebApi webserver = new WebApi();
-
- jda.getPresence().setActivity(Activity.watching("rape"));
+ jda.getPresence().setActivity(Activity.watching("you"));
ConsoleHandler consoleInput = new ConsoleHandler();
@@ -61,9 +61,9 @@ public class MusicBot {
public static void shutdown() {
LOGGER.info("[Net Neutrality] Shutting down...");
MusicManager.disconnectPlayers();
+ ThreadManager.shutdownExecutor();
disconnect();
DBController.shutdown();
- ThreadManager.shutdownExecutor();
LOGGER.info("[Net Neutrality] Shutdown complete");
System.exit(0);
}
@@ -73,8 +73,10 @@ public class MusicBot {
}
public static void disconnect() {
- if (jda != null)
- jda.shutdown();
+ if (jda != null) {
+ jda.shutdownNow();
+ }
+
}
diff --git a/src/main/java/netneutrality/ThreadManager.java b/src/main/java/netneutrality/ThreadManager.java
index 4a4239c..379fcba 100644
--- a/src/main/java/netneutrality/ThreadManager.java
+++ b/src/main/java/netneutrality/ThreadManager.java
@@ -17,10 +17,13 @@ public class ThreadManager {
public static ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(2);
public static void shutdownExecutor() {
+ MusicBot.LOGGER.info("[Executor] Shutting down...");
+
try {
- MusicBot.LOGGER.info("[Executor] Shutting down...");
executor.shutdown();
+ scheduler.shutdown();
executor.awaitTermination(5, TimeUnit.SECONDS);
+ scheduler.awaitTermination(5, TimeUnit.SECONDS);
}
catch (InterruptedException e) {
MusicBot.LOGGER.warn("[Executor] Running tasks interrupted");
@@ -28,9 +31,18 @@ public class ThreadManager {
finally {
if (!executor.isTerminated()) {
MusicBot.LOGGER.warn("[Executor] Forcing shutdown of running tasks..");
+ executor.shutdownNow();
}
- executor.shutdownNow();
- MusicBot.LOGGER.info("[Executor] Shutdown finished!");
+
+ if (!scheduler.isTerminated()) {
+ MusicBot.LOGGER.warn("[Executor] Forcing shutdown of running tasks..");
+ scheduler.shutdownNow();
+ }
+
}
+
+ MusicBot.LOGGER.info("[Executor] Shutdown finished!");
}
+
+
}
diff --git a/src/main/java/netneutrality/db/MysqlDatabase.java b/src/main/java/netneutrality/db/MysqlDatabase.java
index 2de9858..3648e27 100644
--- a/src/main/java/netneutrality/db/MysqlDatabase.java
+++ b/src/main/java/netneutrality/db/MysqlDatabase.java
@@ -117,6 +117,7 @@ public class MysqlDatabase {
private int executeUpdate(String sql, Object[] params) {
+
try {
PreparedStatement query = connection.prepareStatement(sql);
resolveParameters(query, params);
@@ -142,7 +143,8 @@ public class MysqlDatabase {
try {
PreparedStatement query = connection.prepareStatement(sql);
resolveParameters(query, params);
- return query.executeQuery();
+ ResultSet rs = query.executeQuery();
+ return rs;
} catch (SQLException e) {
MusicBot.LOGGER.error(e.toString());
e.printStackTrace();
diff --git a/src/main/java/netneutrality/utils/Settings.java b/src/main/java/netneutrality/utils/Settings.java
index 281a608..036ddbf 100644
--- a/src/main/java/netneutrality/utils/Settings.java
+++ b/src/main/java/netneutrality/utils/Settings.java
@@ -7,23 +7,40 @@ import netneutrality.MusicBot;
import netneutrality.db.DBController;
import netneutrality.db.controllers.DBSettings;
+import java.io.*;
+import java.util.Properties;
+
public class Settings {
- public static final String DATETIMEFORMAT = "yyyy-MM-dd HH:mm:ss";
- public static String PREFIX = ((DBSettings) DBController.get("settings")).getSettingsByKey("prefix");
- public static final String TOKEN = ((DBSettings) DBController.get("settings")).getSettingsByKey("token");
+ static Properties prop = new Properties();
+ static String configFile = "bot.config";
- public static User getCreator() {
- return MusicBot.getJDA().getUserById(((DBSettings) DBController.get("settings")).getSettingsByKey("owner"));
- }
+ public static void init() {
+ InputStream is = Settings.class.getClassLoader().getResourceAsStream(configFile);
+
+ try (FileInputStream fis = new FileInputStream(configFile)) {
+ prop.load(fis);
+ } catch (IOException ignored) {
+
+ }
+
+ }
+
+ public static final String DATETIMEFORMAT = "yyyy-MM-dd HH:mm:ss";
+ public static String PREFIX = prop.getProperty("bot.prefix");
+ public static final String TOKEN = prop.getProperty("bot.token");
+
+ public static User getCreator() {
+ return MusicBot.getJDA().getUserById(prop.getProperty("bot.owner"));
+ }
+
+ public static Guild getOwnerGuild() {
+ return MusicBot.getJDA().getGuildById(prop.getProperty("bot.ownerguild"));
+ }
+
+ public static TextChannel getLogChannel() {
+ return MusicBot.getJDA().getTextChannelById(prop.getProperty("bot.errorchannel"));
+ }
- public static Guild getOwnerGuild() {
- return MusicBot.getJDA().getGuildById(((DBSettings) DBController.get("settings")).getSettingsByKey("ownerguild"));
- }
- public static TextChannel getLogChannel() {
- return MusicBot.getJDA().getTextChannelById(((DBSettings) DBController.get("settings")).getSettingsByKey("errorchannel"));
- }
-
-
}
diff --git a/src/main/resources/bot.config b/src/main/resources/bot.config
new file mode 100644
index 0000000..e2460e0
--- /dev/null
+++ b/src/main/resources/bot.config
@@ -0,0 +1,5 @@
+bot.token=""
+bot.prefix="$"
+bot.owner=""
+bot.ownerguild=""
+bot.errorchannel=""
\ No newline at end of file