mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2024-11-25 14:46:46 +01:00
Move API checks into their own class
This commit is contained in:
parent
b5eb942682
commit
86b98368bc
@ -119,7 +119,7 @@ public class mcMMO extends JavaPlugin {
|
||||
databaseManager = DatabaseManagerFactory.getDatabaseManager();
|
||||
|
||||
//Check for the newer API and tell them what to do if its missing
|
||||
checkForOutdatedAPI();
|
||||
CompatibilityCheck.checkForOutdatedAPI(serverAPIOutdated, getServerSoftwareStr());
|
||||
|
||||
if (serverAPIOutdated) {
|
||||
Bukkit
|
||||
@ -247,21 +247,6 @@ public class mcMMO extends JavaPlugin {
|
||||
return playerLevelUtils;
|
||||
}
|
||||
|
||||
/**
|
||||
* Uses reflection to check for incompatible server software
|
||||
*/
|
||||
private void checkForOutdatedAPI() {
|
||||
try {
|
||||
Class<?> checkForClass = Class.forName("org.bukkit.event.block.BlockDropItemEvent");
|
||||
Method newerAPIMethod = checkForClass.getMethod("getItems");
|
||||
Class<?> checkForClassBaseComponent = Class.forName("net.md_5.bungee.api.chat.BaseComponent");
|
||||
} catch (ClassNotFoundException | NoSuchMethodException e) {
|
||||
serverAPIOutdated = true;
|
||||
String software = getServerSoftwareStr();
|
||||
getLogger().severe("You are running an older version of " + software + " that is not compatible with mcMMO, update your server software!");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns a ServerSoftwareType based on version strings
|
||||
* Custom software is returned as CRAFTBUKKIT
|
||||
|
21
src/main/java/com/gmail/nossr50/util/CompatibilityCheck.java
Normal file
21
src/main/java/com/gmail/nossr50/util/CompatibilityCheck.java
Normal file
@ -0,0 +1,21 @@
|
||||
package com.gmail.nossr50.util;
|
||||
|
||||
import com.gmail.nossr50.mcMMO;
|
||||
|
||||
import java.lang.reflect.Method;
|
||||
|
||||
public class CompatibilityCheck {
|
||||
/**
|
||||
* Uses reflection to check for incompatible server software
|
||||
*/
|
||||
public static void checkForOutdatedAPI(boolean serverAPIOutdated, String software) {
|
||||
try {
|
||||
Class<?> checkForClass = Class.forName("org.bukkit.event.block.BlockDropItemEvent");
|
||||
Method newerAPIMethod = checkForClass.getMethod("getItems");
|
||||
Class<?> checkForClassBaseComponent = Class.forName("net.md_5.bungee.api.chat.BaseComponent");
|
||||
} catch (ClassNotFoundException | NoSuchMethodException e) {
|
||||
serverAPIOutdated = true;
|
||||
mcMMO.p.getLogger().severe("You are running an older version of " + software + " that is not compatible with mcMMO, update your server software!");
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue
Block a user