diff --git a/src/main/java/com/jagrosh/vortex/Listener.java b/src/main/java/com/jagrosh/vortex/Listener.java index 7255b9b..dae951e 100644 --- a/src/main/java/com/jagrosh/vortex/Listener.java +++ b/src/main/java/com/jagrosh/vortex/Listener.java @@ -211,7 +211,7 @@ { // Log the shard that has finished loading ShardInfo si = event.getJDA().getShardInfo(); - String shardinfo = si==null ? "1/1" : (si.getShardId()+1)+"/"+si.getShardTotal(); + String shardinfo = (si.getShardId()+1)+"/"+si.getShardTotal(); LOG.info("Shard "+shardinfo+" is ready."); vortex.getLogWebhook().send("\uD83C\uDF00 Shard `"+shardinfo+"` has connected. Guilds: `" // 🌀 +event.getJDA().getGuildCache().size()+"` Users: `"+event.getJDA().getUserCache().size()+"`"); diff --git a/src/main/java/com/jagrosh/vortex/Vortex.java b/src/main/java/com/jagrosh/vortex/Vortex.java index fa73dcc..98760e6 100644 --- a/src/main/java/com/jagrosh/vortex/Vortex.java +++ b/src/main/java/com/jagrosh/vortex/Vortex.java @@ -41,7 +41,6 @@ import com.jagrosh.vortex.logging.TextUploader; import com.jagrosh.vortex.utils.FormatUtil; import com.jagrosh.vortex.utils.MultiBotManager; -import com.jagrosh.vortex.utils.MultiBotManager.MultiBotManagerBuilder; import com.jagrosh.vortex.utils.OtherUtil; import com.typesafe.config.Config; import com.typesafe.config.ConfigFactory; @@ -52,7 +51,6 @@ import net.dv8tion.jda.api.entities.Message; import net.dv8tion.jda.api.exceptions.PermissionException; import net.dv8tion.jda.api.requests.restaction.MessageAction; -import net.dv8tion.jda.api.sharding.ShardManager; import net.dv8tion.jda.api.utils.MemberCachePolicy; import net.dv8tion.jda.api.utils.cache.CacheFlag; @@ -79,8 +77,8 @@ { System.setProperty("config.file", System.getProperty("config.file", "application.conf")); Config config = ConfigFactory.load(); - waiter = new EventWaiter(Executors.newSingleThreadScheduledExecutor(), false); - threadpool = Executors.newScheduledThreadPool(100); + waiter = new EventWaiter(Executors.newSingleThreadScheduledExecutor(r -> new Thread(r, "eventwaiter")), false); + threadpool = Executors.newScheduledThreadPool(100, r -> new Thread(r, "vortex")); database = new Database(config.getString("database.host"), config.getString("database.username"), config.getString("database.password")); @@ -289,6 +287,7 @@ public void leavePointlessGuilds() { + //shards.getGuilds().stream().filter(g -> shards.getShardManagers().stream().flatMap(s -> s.getGuilds().stream()).filter(g -> { if(!g.isLoaded()) diff --git a/src/main/java/com/jagrosh/vortex/database/managers/TempBanManager.java b/src/main/java/com/jagrosh/vortex/database/managers/TempBanManager.java index d0ad637..5b1c5b6 100644 --- a/src/main/java/com/jagrosh/vortex/database/managers/TempBanManager.java +++ b/src/main/java/com/jagrosh/vortex/database/managers/TempBanManager.java @@ -117,7 +117,7 @@ while(rs.next()) { Guild g = jda.getGuildById(GUILD_ID.getValue(rs)); - if(g==null || !g.isAvailable() || !g.getSelfMember().hasPermission(Permission.BAN_MEMBERS)) + if(g==null || g.getMemberCache().isEmpty() || !g.getSelfMember().hasPermission(Permission.BAN_MEMBERS)) continue; g.unban(Long.toString(USER_ID.getValue(rs))).reason("Temporary Ban Completed").queue(s->{}, f->{}); rs.deleteRow(); diff --git a/src/main/java/com/jagrosh/vortex/database/managers/TempMuteManager.java b/src/main/java/com/jagrosh/vortex/database/managers/TempMuteManager.java index 73d527c..7e96dd7 100644 --- a/src/main/java/com/jagrosh/vortex/database/managers/TempMuteManager.java +++ b/src/main/java/com/jagrosh/vortex/database/managers/TempMuteManager.java @@ -148,7 +148,7 @@ while(rs.next()) { Guild g = jda.getGuildById(GUILD_ID.getValue(rs)); - if(g==null || !g.isAvailable() || !g.getSelfMember().hasPermission(Permission.MANAGE_ROLES)) + if(g==null || g.getMemberCache().isEmpty() || !g.getSelfMember().hasPermission(Permission.MANAGE_ROLES)) continue; Role mRole = data.getSettings(g).getMutedRole(g); if(mRole==null || !g.getSelfMember().canInteract(mRole))