diff --git a/pom.xml b/pom.xml
index b872eb4c..251ee9bc 100644
--- a/pom.xml
+++ b/pom.xml
@@ -61,7 +61,7 @@
Xephi, sgdc3, DNx5, timvisee, games647, ljacqu, Gnat008
- 1.12-R0.1-SNAPSHOT
+ 1.12.1-R0.1-SNAPSHOT
@@ -119,7 +119,7 @@
org.apache.maven.plugins
maven-compiler-plugin
- 3.6.1
+ 3.6.2
${project.jdkVersion}
${project.jdkVersion}
@@ -142,7 +142,7 @@
org.apache.maven.plugins
maven-shade-plugin
- 3.0.0
+ 3.1.0
@@ -254,12 +254,6 @@
http://repo.ess3.net/content/groups/essentials
-
-
- minelink-repo
- http://repo.minelink.net/content/repositories/public
-
-
dmulloy2-repo
@@ -325,7 +319,7 @@
com.google.guava
guava
- 22.0
+ 23.0
compile
true
@@ -343,7 +337,7 @@
org.apache.commons
commons-email
- 1.4
+ 1.5
compile
true
@@ -422,14 +416,14 @@
org.bstats
bstats-bukkit
- 1.0
+ 1.2
com.comphenix.protocol
ProtocolLib-API
- 4.2.1
+ 4.4.0-SNAPSHOT
provided
@@ -483,25 +477,11 @@
-
-
- com.platymuus
- bukkit-permissions
- 2.5
- provided
-
-
- org.bukkit
- bukkit
-
-
-
-
org.tyrannyofheaven.bukkit
zPermissions
- 1.3.1-SNAPSHOT
+ 1.4-SNAPSHOT
provided
@@ -528,6 +508,30 @@
ToHPluginUtils
org.tyrannyofheaven.bukkit
+
+ Residence
+ com.bekvon.bukkit
+
+
+ Factions
+ com.massivecraft
+
+
+ mcore
+ com.massivecraft
+
+
+ Factoid
+ me.tabinol.factoid
+
+
+ ebean
+ org.avaje
+
+
+ persistence-api
+ javax.persistence
+
@@ -553,7 +557,7 @@
com.onarandombox.multiversecore
Multiverse-Core
- 2.5.0-SNAPSHOT
+ 2.6.0-SNAPSHOT
jar
provided
@@ -630,98 +634,6 @@
-
-
- net.minelink
- CombatTagPlus
- 1.3.0-SNAPSHOT
- provided
-
-
- org.bukkit
- bukkit
-
-
- org.bukkit
- craftbukkit
-
-
- CombatTagPlusHook
- net.minelink
-
-
- CombatTagPlusFactions-v1_6
- net.minelink
-
-
- CombatTagPlusCompat-v1_7_R3
- net.minelink
-
-
- CombatTagPlusFactions-v1_8
- net.minelink
-
-
- CombatTagPlusCompat-v1_7_R4
- net.minelink
-
-
- CombatTagPlusWG-v5
- net.minelink
-
-
- CombatTagPlusWG-v6
- net.minelink
-
-
- CombatTagPlusCompat-API
- net.minelink
-
-
- CombatTagPlusFactions-v2_6
- net.minelink
-
-
- CombatTagPlusCompat-v1_8_R3
- net.minelink
-
-
- CombatTagPlusFactions-v2_7
- net.minelink
-
-
- CombatTagPlusCompat-v1_8_R2
- net.minelink
-
-
- CombatTagPlusCompat-v1_8_R1
- net.minelink
-
-
- metrics-lite
- org.mcstats.bukkit
-
-
- net.minelink
- CombatTagPlusCompat-v1_9_R1
-
-
- net.minelink
- CombatTagPlusCompat-v1_9_R2
-
-
- net.minelink
-
- CombatTagPlusCompat-v1_10_R1
-
-
-
- com.google.code.findbugs
- jsr305
-
-
-
-
de.luricos.bukkit
@@ -799,7 +711,7 @@
org.mockito
mockito-core
test
- 2.8.47
+ 2.9.0
hamcrest-core
@@ -812,7 +724,7 @@
org.xerial
sqlite-jdbc
- 3.19.3
+ 3.20.0
test
diff --git a/src/main/java/fr/xephi/authme/AuthMe.java b/src/main/java/fr/xephi/authme/AuthMe.java
index d747e7ef..beeb3766 100644
--- a/src/main/java/fr/xephi/authme/AuthMe.java
+++ b/src/main/java/fr/xephi/authme/AuthMe.java
@@ -147,12 +147,6 @@ public class AuthMe extends JavaPlugin {
// Show settings warnings
showSettingsWarnings();
- // If server is using PermissionsBukkit, print a warning that some features may not be supported
- if (PermissionsSystemType.PERMISSIONS_BUKKIT.equals(permsMan.getPermissionSystem())) {
- ConsoleLogger.warning("Warning! This server uses PermissionsBukkit for permissions. Some permissions "
- + "features may not be supported!");
- }
-
// Do a backup on start
backupService.doBackup(BackupService.BackupCause.START);
diff --git a/src/main/java/fr/xephi/authme/initialization/OnStartupTasks.java b/src/main/java/fr/xephi/authme/initialization/OnStartupTasks.java
index 947777f8..4180d69e 100644
--- a/src/main/java/fr/xephi/authme/initialization/OnStartupTasks.java
+++ b/src/main/java/fr/xephi/authme/initialization/OnStartupTasks.java
@@ -17,7 +17,7 @@ import fr.xephi.authme.settings.properties.EmailSettings;
import fr.xephi.authme.settings.properties.PluginSettings;
import fr.xephi.authme.settings.properties.SecuritySettings;
import org.apache.logging.log4j.LogManager;
-import org.bstats.Metrics;
+import org.bstats.bukkit.Metrics;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
@@ -53,19 +53,8 @@ public class OnStartupTasks {
public static void sendMetrics(AuthMe plugin, Settings settings) {
final Metrics metrics = new Metrics(plugin);
- metrics.addCustomChart(new Metrics.SimplePie("messages_language") {
- @Override
- public String getValue() {
- return settings.getProperty(PluginSettings.MESSAGES_LANGUAGE);
- }
- });
-
- metrics.addCustomChart(new Metrics.SimplePie("database_backend") {
- @Override
- public String getValue() {
- return settings.getProperty(DatabaseSettings.BACKEND).toString();
- }
- });
+ metrics.addCustomChart(new Metrics.SimplePie("messages_language", () -> settings.getProperty(PluginSettings.MESSAGES_LANGUAGE)));
+ metrics.addCustomChart(new Metrics.SimplePie("database_backend", () -> settings.getProperty(DatabaseSettings.BACKEND).toString()));
}
/**
@@ -103,14 +92,11 @@ public class OnStartupTasks {
if (!settings.getProperty(RECALL_PLAYERS)) {
return;
}
- bukkitService.runTaskTimerAsynchronously(new Runnable() {
- @Override
- public void run() {
- for (String playerWithoutMail : dataSource.getLoggedPlayersWithEmptyMail()) {
- Player player = bukkitService.getPlayerExact(playerWithoutMail);
- if (player != null) {
- messages.send(player, MessageKey.ADD_EMAIL_MESSAGE);
- }
+ bukkitService.runTaskTimerAsynchronously(() -> {
+ for (String playerWithoutMail : dataSource.getLoggedPlayersWithEmptyMail()) {
+ Player player = bukkitService.getPlayerExact(playerWithoutMail);
+ if (player != null) {
+ messages.send(player, MessageKey.ADD_EMAIL_MESSAGE);
}
}
}, 1, TICKS_PER_MINUTE * settings.getProperty(EmailSettings.DELAY_RECALL));
diff --git a/src/main/java/fr/xephi/authme/listener/ServerListener.java b/src/main/java/fr/xephi/authme/listener/ServerListener.java
index 909ab4f2..055e72af 100644
--- a/src/main/java/fr/xephi/authme/listener/ServerListener.java
+++ b/src/main/java/fr/xephi/authme/listener/ServerListener.java
@@ -43,9 +43,6 @@ public class ServerListener implements Listener {
} else if ("Multiverse-Core".equalsIgnoreCase(pluginName)) {
pluginHookService.unhookMultiverse();
ConsoleLogger.info("Multiverse-Core has been disabled: unhooking");
- } else if ("CombatTagPlus".equalsIgnoreCase(pluginName)) {
- pluginHookService.unhookCombatPlus();
- ConsoleLogger.info("CombatTagPlus has been disabled: unhooking");
} else if ("EssentialsSpawn".equalsIgnoreCase(pluginName)) {
spawnLoader.unloadEssentialsSpawn();
ConsoleLogger.info("EssentialsSpawn has been disabled: unhooking");
@@ -71,8 +68,6 @@ public class ServerListener implements Listener {
pluginHookService.tryHookToEssentials();
} else if ("Multiverse-Core".equalsIgnoreCase(pluginName)) {
pluginHookService.tryHookToMultiverse();
- } else if ("CombatTagPlus".equalsIgnoreCase(pluginName)) {
- pluginHookService.tryHookToCombatPlus();
} else if ("EssentialsSpawn".equalsIgnoreCase(pluginName)) {
spawnLoader.loadEssentialsSpawn();
} else if ("ProtocolLib".equalsIgnoreCase(pluginName)) {
diff --git a/src/main/java/fr/xephi/authme/permission/PermissionsManager.java b/src/main/java/fr/xephi/authme/permission/PermissionsManager.java
index 61aeac0e..8cfaf907 100644
--- a/src/main/java/fr/xephi/authme/permission/PermissionsManager.java
+++ b/src/main/java/fr/xephi/authme/permission/PermissionsManager.java
@@ -5,7 +5,6 @@ import fr.xephi.authme.initialization.Reloadable;
import fr.xephi.authme.permission.handlers.BPermissionsHandler;
import fr.xephi.authme.permission.handlers.PermissionHandler;
import fr.xephi.authme.permission.handlers.PermissionHandlerException;
-import fr.xephi.authme.permission.handlers.PermissionsBukkitHandler;
import fr.xephi.authme.permission.handlers.PermissionsExHandler;
import fr.xephi.authme.permission.handlers.VaultHandler;
import fr.xephi.authme.permission.handlers.ZPermissionsHandler;
@@ -120,8 +119,6 @@ public class PermissionsManager implements Reloadable {
return new VaultHandler(server);
case B_PERMISSIONS:
return new BPermissionsHandler();
- case PERMISSIONS_BUKKIT:
- return new PermissionsBukkitHandler(pluginManager);
default:
throw new IllegalStateException("Unhandled permission type '" + type + "'");
}
diff --git a/src/main/java/fr/xephi/authme/permission/PermissionsSystemType.java b/src/main/java/fr/xephi/authme/permission/PermissionsSystemType.java
index 72a0753c..bfa8fa11 100644
--- a/src/main/java/fr/xephi/authme/permission/PermissionsSystemType.java
+++ b/src/main/java/fr/xephi/authme/permission/PermissionsSystemType.java
@@ -10,11 +10,6 @@ public enum PermissionsSystemType {
*/
PERMISSIONS_EX("PermissionsEx", "PermissionsEx"),
- /**
- * Permissions Bukkit.
- */
- PERMISSIONS_BUKKIT("Permissions Bukkit", "PermissionsBukkit"),
-
/**
* bPermissions.
*/
diff --git a/src/main/java/fr/xephi/authme/permission/handlers/PermissionsBukkitHandler.java b/src/main/java/fr/xephi/authme/permission/handlers/PermissionsBukkitHandler.java
deleted file mode 100644
index acae466c..00000000
--- a/src/main/java/fr/xephi/authme/permission/handlers/PermissionsBukkitHandler.java
+++ /dev/null
@@ -1,73 +0,0 @@
-package fr.xephi.authme.permission.handlers;
-
-import com.platymuus.bukkit.permissions.Group;
-import com.platymuus.bukkit.permissions.PermissionsPlugin;
-import fr.xephi.authme.permission.PermissionNode;
-import fr.xephi.authme.permission.PermissionsSystemType;
-import org.bukkit.Bukkit;
-import org.bukkit.entity.Player;
-import org.bukkit.plugin.Plugin;
-import org.bukkit.plugin.PluginManager;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Handler for PermissionsBukkit.
- *
- * @see PermissionsBukkit Bukkit page
- */
-public class PermissionsBukkitHandler implements PermissionHandler {
-
- private PermissionsPlugin permissionsBukkitInstance;
-
- public PermissionsBukkitHandler(PluginManager pluginManager) throws PermissionHandlerException {
- Plugin plugin = pluginManager.getPlugin("PermissionsBukkit");
- if (plugin == null) {
- throw new PermissionHandlerException("Could not get instance of PermissionsBukkit");
- }
- permissionsBukkitInstance = (PermissionsPlugin) plugin;
- }
-
- @Override
- public boolean addToGroup(Player player, String group) {
- return Bukkit.dispatchCommand(Bukkit.getConsoleSender(),
- "permissions player addgroup " + player.getName() + " " + group);
- }
-
- @Override
- public boolean hasGroupSupport() {
- return true;
- }
-
- @Override
- public boolean hasPermissionOffline(String name, PermissionNode node) {
- return false;
- }
-
- @Override
- public boolean removeFromGroup(Player player, String group) {
- return Bukkit.dispatchCommand(Bukkit.getConsoleSender(),
- "permissions player removegroup " + player.getName() + " " + group);
- }
-
- @Override
- public boolean setGroup(Player player, String group) {
- return Bukkit.dispatchCommand(Bukkit.getConsoleSender(),
- "permissions player setgroup " + player.getName() + " " + group);
- }
-
- @Override
- public List getGroups(Player player) {
- List groups = new ArrayList<>();
- for (Group group : permissionsBukkitInstance.getGroups(player.getUniqueId())) {
- groups.add(group.getName());
- }
- return groups;
- }
-
- @Override
- public PermissionsSystemType getPermissionSystem() {
- return PermissionsSystemType.PERMISSIONS_BUKKIT;
- }
-}
diff --git a/src/main/java/fr/xephi/authme/service/PluginHookService.java b/src/main/java/fr/xephi/authme/service/PluginHookService.java
index 26d0e6f8..98e31e13 100644
--- a/src/main/java/fr/xephi/authme/service/PluginHookService.java
+++ b/src/main/java/fr/xephi/authme/service/PluginHookService.java
@@ -5,7 +5,6 @@ import com.earth2me.essentials.Essentials;
import com.onarandombox.MultiverseCore.MultiverseCore;
import com.onarandombox.MultiverseCore.api.MVWorldManager;
import fr.xephi.authme.ConsoleLogger;
-import net.minelink.ctplus.CombatTagPlus;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.entity.Player;
@@ -24,7 +23,6 @@ public class PluginHookService {
private final PluginManager pluginManager;
private Essentials essentials;
private MultiverseCore multiverse;
- private CombatTagPlus combatTagPlus;
/**
* Constructor.
@@ -34,7 +32,6 @@ public class PluginHookService {
@Inject
public PluginHookService(PluginManager pluginManager) {
this.pluginManager = pluginManager;
- tryHookToCombatPlus();
tryHookToEssentials();
tryHookToMultiverse();
}
@@ -86,17 +83,7 @@ public class PluginHookService {
* @return True if player is NPC, false otherwise
*/
public boolean isNpc(Player player) {
- return player.hasMetadata("NPC") || isNpcInCombatTagPlus(player);
- }
-
- /**
- * Queries the CombatTagPlus plugin whether the given player is an NPC.
- *
- * @param player The player to verify
- * @return True if the player is an NPC according to CombatTagPlus, false if not or if the plugin is unavailable
- */
- private boolean isNpcInCombatTagPlus(Player player) {
- return combatTagPlus != null && combatTagPlus.getNpcPlayerHelper().isNpc(player);
+ return player.hasMetadata("NPC");
}
@@ -117,13 +104,6 @@ public class PluginHookService {
return multiverse != null;
}
- /**
- * @return true if we have a hook to CombatTagPlus, false otherwise
- */
- public boolean isCombatTagPlusAvailable() {
- return combatTagPlus != null;
- }
-
// ------
// Hook methods
// ------
@@ -139,17 +119,6 @@ public class PluginHookService {
}
}
- /**
- * Attempts to create a hook into CombatTagPlus.
- */
- public void tryHookToCombatPlus() {
- try {
- combatTagPlus = getPlugin(pluginManager, "CombatTagPlus", CombatTagPlus.class);
- } catch (Exception | NoClassDefFoundError ignored) {
- combatTagPlus = null;
- }
- }
-
/**
* Attempts to create a hook into Multiverse.
*/
@@ -171,13 +140,6 @@ public class PluginHookService {
essentials = null;
}
- /**
- * Unhooks from CombatTagPlus.
- */
- public void unhookCombatPlus() {
- combatTagPlus = null;
- }
-
/**
* Unhooks from Multiverse.
*/
diff --git a/src/main/resources/plugin.yml b/src/main/resources/plugin.yml
index 05f718c3..1ed7c678 100644
--- a/src/main/resources/plugin.yml
+++ b/src/main/resources/plugin.yml
@@ -6,8 +6,7 @@ main: ${bukkitplugin.main}
version: ${bukkitplugin.version}
softdepend:
- Vault
- - PermissionsBukkit
- - PermissionsEX
+ - PermissionsEx
- bPermissions
- zPermissions
- Multiverse-Core
diff --git a/src/test/java/fr/xephi/authme/AuthMeInitializationTest.java b/src/test/java/fr/xephi/authme/AuthMeInitializationTest.java
index f11d7311..4d8c115d 100644
--- a/src/test/java/fr/xephi/authme/AuthMeInitializationTest.java
+++ b/src/test/java/fr/xephi/authme/AuthMeInitializationTest.java
@@ -5,6 +5,7 @@ import ch.jalu.injector.Injector;
import ch.jalu.injector.InjectorBuilder;
import com.google.common.io.Files;
import fr.xephi.authme.api.NewAPI;
+import fr.xephi.authme.api.v3.AuthMeApi;
import fr.xephi.authme.command.CommandHandler;
import fr.xephi.authme.datasource.DataSource;
import fr.xephi.authme.initialization.DataFolder;
@@ -115,7 +116,7 @@ public class AuthMeInitializationTest {
assertThat(injector.getIfAvailable(BlockListener.class), not(nullValue()));
assertThat(injector.getIfAvailable(CommandHandler.class), not(nullValue()));
assertThat(injector.getIfAvailable(Management.class), not(nullValue()));
- assertThat(injector.getIfAvailable(NewAPI.class), not(nullValue()));
+ assertThat(injector.getIfAvailable(AuthMeApi.class), not(nullValue()));
assertThat(injector.getIfAvailable(PasswordSecurity.class), not(nullValue()));
assertThat(injector.getIfAvailable(PermissionsManager.class), not(nullValue()));
assertThat(injector.getIfAvailable(ProcessSyncPlayerLogin.class), not(nullValue()));
diff --git a/src/test/java/fr/xephi/authme/listener/ServerListenerTest.java b/src/test/java/fr/xephi/authme/listener/ServerListenerTest.java
index a2a326b6..2ffe57f5 100644
--- a/src/test/java/fr/xephi/authme/listener/ServerListenerTest.java
+++ b/src/test/java/fr/xephi/authme/listener/ServerListenerTest.java
@@ -32,7 +32,6 @@ public class ServerListenerTest {
private static final String ESSENTIALS = "Essentials";
private static final String ESSENTIALS_SPAWN = "EssentialsSpawn";
private static final String MULTIVERSE = "Multiverse-Core";
- private static final String COMBAT_TAG = "CombatTagPlus";
private static final String PROTOCOL_LIB = "ProtocolLib";
@InjectMocks
@@ -60,7 +59,6 @@ public class ServerListenerTest {
checkEnableHandling(ESSENTIALS, () -> verify(pluginHookService).tryHookToEssentials());
checkEnableHandling(ESSENTIALS_SPAWN, () -> verify(spawnLoader).loadEssentialsSpawn());
checkEnableHandling(MULTIVERSE, () -> verify(pluginHookService).tryHookToMultiverse());
- checkEnableHandling(COMBAT_TAG, () -> verify(pluginHookService).tryHookToCombatPlus());
checkEnableHandling(PROTOCOL_LIB, () -> verify(protocolLibService).setup());
checkEnableHandling("UnknownPlugin", () -> verifyZeroInteractions(pluginHookService, spawnLoader));
}
@@ -70,7 +68,6 @@ public class ServerListenerTest {
checkDisableHandling(ESSENTIALS, () -> verify(pluginHookService).unhookEssentials());
checkDisableHandling(ESSENTIALS_SPAWN, () -> verify(spawnLoader).unloadEssentialsSpawn());
checkDisableHandling(MULTIVERSE, () -> verify(pluginHookService).unhookMultiverse());
- checkDisableHandling(COMBAT_TAG, () -> verify(pluginHookService).unhookCombatPlus());
checkDisableHandling(PROTOCOL_LIB, () -> verify(protocolLibService).disable());
checkDisableHandling("UnknownPlugin", () -> verifyZeroInteractions(pluginHookService, spawnLoader));
}
diff --git a/src/test/java/fr/xephi/authme/permission/PermissionsSystemTypeTest.java b/src/test/java/fr/xephi/authme/permission/PermissionsSystemTypeTest.java
index ec63c588..79b513a1 100644
--- a/src/test/java/fr/xephi/authme/permission/PermissionsSystemTypeTest.java
+++ b/src/test/java/fr/xephi/authme/permission/PermissionsSystemTypeTest.java
@@ -39,7 +39,7 @@ public class PermissionsSystemTypeTest {
@Test
public void shouldRecognizePermissionSystemType() {
assertThat(PermissionsSystemType.isPermissionSystem("bogus"), equalTo(false));
- assertThat(PermissionsSystemType.isPermissionSystem("PermissionsBukkit"), equalTo(true));
+ assertThat(PermissionsSystemType.isPermissionSystem("PermissionsEx"), equalTo(true));
}
}
diff --git a/src/test/java/fr/xephi/authme/service/PluginHookServiceTest.java b/src/test/java/fr/xephi/authme/service/PluginHookServiceTest.java
index e07ea1c2..7889f8ba 100644
--- a/src/test/java/fr/xephi/authme/service/PluginHookServiceTest.java
+++ b/src/test/java/fr/xephi/authme/service/PluginHookServiceTest.java
@@ -178,7 +178,6 @@ public class PluginHookServiceTest {
// then
assertThat(pluginHookService.isEssentialsAvailable(), equalTo(false));
assertThat(pluginHookService.isMultiverseAvailable(), equalTo(false));
- assertThat(pluginHookService.isCombatTagPlusAvailable(), equalTo(false));
}
@Test