Add extra check to ensure RedisBungee is loaded (#2981)

This commit is contained in:
Luck 2021-04-18 13:48:45 +01:00
parent 0808392353
commit a68a5d91c4
No known key found for this signature in database
GPG Key ID: EFA9B3EC5FD90F8B

View File

@ -150,7 +150,7 @@ public class LPBungeePlugin extends AbstractLuckPermsPlugin {
this.contextManager.registerCalculator(playerCalculator);
}
if (!disabledContexts.contains("proxy") && this.bootstrap.getProxy().getPluginManager().getPlugin("RedisBungee") != null) {
if (!disabledContexts.contains("proxy") && this.bootstrap.getProxy().getPluginManager().getPlugin("RedisBungee") != null && isRedisBungeeLoaded()) {
this.contextManager.registerCalculator(new RedisBungeeCalculator());
}
}
@ -199,6 +199,19 @@ public class LPBungeePlugin extends AbstractLuckPermsPlugin {
return this.senderFactory.wrap(this.bootstrap.getProxy().getConsole());
}
private static boolean classExists(String className) {
try {
Class.forName(className);
return true;
} catch (ClassNotFoundException var1) {
return false;
}
}
private static boolean isRedisBungeeLoaded() {
return classExists("com.imaginarycode.minecraft.redisbungee.RedisBungee");
}
public BungeeSenderFactory getSenderFactory() {
return this.senderFactory;
}