diff --git a/.gitignore b/.gitignore
index 4b6f3bf4..8c554caa 100644
--- a/.gitignore
+++ b/.gitignore
@@ -164,3 +164,7 @@ release.properties
dependency-reduced-pom.xml
buildNumber.properties
.mvn/timing.properties
+
+.idea/
+
+*.iml
diff --git a/namelayer-all/pom.xml b/namelayer-all/pom.xml
index b7808c62..eb14b712 100644
--- a/namelayer-all/pom.xml
+++ b/namelayer-all/pom.xml
@@ -12,7 +12,7 @@
NameLayer
- 2.12.0
+ 2.13.0
diff --git a/namelayer-spigot/pom.xml b/namelayer-spigot/pom.xml
index ec96d758..eabebab7 100644
--- a/namelayer-spigot/pom.xml
+++ b/namelayer-spigot/pom.xml
@@ -17,7 +17,7 @@
vg.civcraft.mc.namelayer
- namelayer-nms-v1_13_R2
+ namelayer-nms-v1_14_R1
1.0.1
@@ -25,13 +25,13 @@
org.spigotmc
spigot-api
- 1.13.2-R0.1-SNAPSHOT
+ 1.14.4-R0.1-SNAPSHOT
provided
vg.civcraft.mc.civmodcore
CivModCore
- 1.7.0
+ 1.7.5
provided
@@ -121,6 +121,16 @@
namelayer-nms-v1_12_R1
1.0.1
+
+ vg.civcraft.mc.namelayer
+ namelayer-nms-v1_13_R2
+ 1.0.1
+
+
+ vg.civcraft.mc.namelayer
+ namelayer-nms-v1_14_R1
+ 1.0.1
+
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/GroupManager.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/GroupManager.java
index ef88f87d..a13bba9a 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/GroupManager.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/GroupManager.java
@@ -1,12 +1,9 @@
package vg.civcraft.mc.namelayer;
-import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.HashMap;
-import java.util.LinkedList;
import java.util.List;
import java.util.Map;
-import java.util.Map.Entry;
import java.util.UUID;
import java.util.concurrent.ConcurrentHashMap;
import java.util.logging.Level;
@@ -32,8 +29,8 @@ public class GroupManager{
private static GroupManagerDao groupManagerDao;
private PermissionHandler permhandle;
- private static Map groupsByName = new ConcurrentHashMap();
- private static Map groupsById = new ConcurrentHashMap();
+ private static Map groupsByName = new ConcurrentHashMap<>();
+ private static Map groupsById = new ConcurrentHashMap<>();
public GroupManager(){
groupManagerDao = NameLayerPlugin.getGroupManagerDao();
@@ -42,7 +39,8 @@ public GroupManager(){
/**
* Saves the group into caching and saves it into the db. Also fires the GroupCreateEvent.
- * @param The group to create to db.
+ * @param group the group to create to db.
+ * @return the internal ID of the group created.
*/
public int createGroup(Group group){
return createGroup(group,true);
@@ -232,6 +230,9 @@ public void transferGroup(Group g, UUID uuid, boolean savetodb){
* _for now_ simply invalidating the cache on servers.
*
* Eventually, we'll need to go line-by-line through the db code and just replicate in cache. That day is not today.
+ *
+ * @param group the origin group
+ * @param toMerge the group to merge in
*/
public void doneMergeGroup(Group group, Group toMerge) {
if (group == null || toMerge == null) {
@@ -410,6 +411,9 @@ public static Group getSpecialCircumstanceGroup(String name){
/**
* DO NOT WORK WITH THE PERMISSION OBJECT ITSELF TO DETERMINE ACCESS. Use the methods provided in this class instead, as they
* respect all the permission inheritation stuff
+ *
+ * @param group the group to retrieve permissions from
+ * @return the actual permissions for this object or null
*/
public GroupPermission getPermissionforGroup(Group group){
if (group == null) {
@@ -432,7 +436,7 @@ public boolean hasAccess(Group group, UUID player, PermissionType perm) {
if (p != null && (p.isOp() || p.hasPermission("namelayer.admin"))) {
return true;
}
- if (group == null || player == null || perm == null) {
+ if (group == null || perm == null) {
NameLayerPlugin.getInstance().getLogger().log(Level.INFO, "hasAccess failed, caller passed in null", new Exception());
return false;
}
@@ -443,26 +447,25 @@ public boolean hasAccess(Group group, UUID player, PermissionType perm) {
return false;
}
}
- GroupPermission perms = getPermissionforGroup(group);
- for(PlayerType rank : getRecursivePlayerTypes(group, player)) {
- if (perms.hasPermission(rank, perm)) {
- //player has right rank in the group itself or at least one super group
+ return hasPlayerInheritsPerms(group, player, perm);
+ }
+
+ /**
+ * Checks if a player has a permission in a group or one of its parent groups
+ * @param group the group, and its parents etc to check
+ * @param player the player
+ * @param perm the permission to check
+ * @return if the player has the specified permission in a group or one of its parents
+ */
+ private boolean hasPlayerInheritsPerms(Group group, UUID player, PermissionType perm) {
+ while (group != null) {
+ PlayerType type = group.getPlayerType(player);
+ if (type != null && getPermissionforGroup(group).hasPermission(type, perm)) {
return true;
}
- }
- return false;
- }
-
- private List getRecursivePlayerTypes(Group group, UUID player) {
- List perms = new LinkedList();
- PlayerType type = group.getPlayerType(player);
- if (type != null) {
- perms.add(type);
+ group = group.getSuperGroup();
}
- if (group.hasSuperGroup()) {
- perms.addAll(getRecursivePlayerTypes(group.getSuperGroup(), player));
- }
- return perms;
+ return false;
}
// == PERMISSION HANDLING ============================================================= //
@@ -478,7 +481,7 @@ private void deleteGroupPerms(Group group){
public List getAllGroupNames(UUID uuid){
if (uuid == null) {
NameLayerPlugin.getInstance().getLogger().log(Level.INFO, "getAllGroupNames failed, caller passed in null", new Exception());
- return new ArrayList();
+ return new ArrayList<>();
}
return groupManagerDao.getGroupNames(uuid);
}
@@ -491,11 +494,7 @@ private void initiateDefaultPerms(Integer groupId){
Map > defaultPermMapping = new HashMap>();
for(PermissionType perm : PermissionType.getAllPermissions()) {
for(PlayerType type : perm.getDefaultPermLevels()) {
- List perms = defaultPermMapping.get(type);
- if (perms == null) {
- perms = new LinkedList();
- defaultPermMapping.put(type, perms);
- }
+ List perms = defaultPermMapping.computeIfAbsent(type, k -> new ArrayList<>());
perms.add(perm);
}
}
@@ -512,7 +511,7 @@ public String getDefaultGroup(UUID uuid){
/**
* Invalidates a group from cache.
- * @param group
+ * @param group the group to invalidate cache for
*/
public static void invalidateCache(String group){
if (group == null) {
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/NameLayerPlugin.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/NameLayerPlugin.java
index cb794929..a37cb373 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/NameLayerPlugin.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/NameLayerPlugin.java
@@ -67,12 +67,6 @@ public void onEnable() {
}
}
- // Calling this for ACivMod
- @Override
- public void onLoad(){
- super.onLoad();
- }
-
public void registerListeners(){
getServer().getPluginManager().registerEvents(new AssociationListener(), this);
getServer().getPluginManager().registerEvents(new PlayerListener(), this);
@@ -215,26 +209,6 @@ else if (level == Level.SEVERE)
message +
"\n --------------------------------------");
}
- /**
- * Updates the version number for a plugin. You must specify what
- * the current version number is.
- * @param currentVersion- The current version of the plugin.
- * @param pluginName- The plugin name.
- * @return Returns the new version of the db.
- */
- @Deprecated
- public static void insertVersionNum(int currentVersion, String pluginName){
- throw new UnsupportedOperationException("insertVersionNum is no longer supported. Extend CivModCore and use ManagedDatasource");
- }
- /**
- * Checks the version of a specific plugin's db.
- * @param name- The name of the plugin.
- * @return Returns the version of the plugin or 0 if none was found.
- */
- @Deprecated
- public static int getVersionNum(String pluginName){
- throw new UnsupportedOperationException("getVersionNum is no longer supported. Extend CivModCore and use ManagedDatasource");
- }
public static String getSpecialAdminGroup(){
return "Name_Layer_Special";
@@ -244,11 +218,6 @@ public static boolean createGroupOnFirstJoin() {
return createGroupOnFirstJoin;
}
- @Override
- protected String getPluginName() {
- return "NameLayerPlugin";
- }
-
public int getGroupLimit(){
return groupLimit;
}
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/CommandHandler.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/CommandHandler.java
index 50bec952..4cd0585b 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/CommandHandler.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/CommandHandler.java
@@ -10,48 +10,42 @@
import vg.civcraft.mc.civmodcore.command.Command;
import vg.civcraft.mc.namelayer.command.commands.AcceptInvite;
import vg.civcraft.mc.namelayer.command.commands.AddBlacklist;
-import vg.civcraft.mc.namelayer.command.commands.LinkGroups;
import vg.civcraft.mc.namelayer.command.commands.ChangePlayerName;
import vg.civcraft.mc.namelayer.command.commands.CreateGroup;
import vg.civcraft.mc.namelayer.command.commands.DeleteGroup;
import vg.civcraft.mc.namelayer.command.commands.DisciplineGroup;
+import vg.civcraft.mc.namelayer.command.commands.GetDefaultGroup;
import vg.civcraft.mc.namelayer.command.commands.GlobalStats;
import vg.civcraft.mc.namelayer.command.commands.GroupStats;
import vg.civcraft.mc.namelayer.command.commands.InfoDump;
import vg.civcraft.mc.namelayer.command.commands.InvitePlayer;
import vg.civcraft.mc.namelayer.command.commands.JoinGroup;
import vg.civcraft.mc.namelayer.command.commands.LeaveGroup;
-import vg.civcraft.mc.namelayer.command.commands.NameLayerGroupGui;
-import vg.civcraft.mc.namelayer.command.commands.ShowBlacklist;
import vg.civcraft.mc.namelayer.command.commands.ListCurrentInvites;
import vg.civcraft.mc.namelayer.command.commands.ListGroups;
import vg.civcraft.mc.namelayer.command.commands.ListMembers;
import vg.civcraft.mc.namelayer.command.commands.ListPermissions;
import vg.civcraft.mc.namelayer.command.commands.ListPlayerTypes;
-import vg.civcraft.mc.namelayer.command.commands.ListSubGroups;
import vg.civcraft.mc.namelayer.command.commands.MergeGroups;
import vg.civcraft.mc.namelayer.command.commands.ModifyPermissions;
+import vg.civcraft.mc.namelayer.command.commands.NameLayerGroupGui;
+import vg.civcraft.mc.namelayer.command.commands.PromotePlayer;
+import vg.civcraft.mc.namelayer.command.commands.RejectInvite;
import vg.civcraft.mc.namelayer.command.commands.RemoveBlacklist;
import vg.civcraft.mc.namelayer.command.commands.RemoveMember;
-import vg.civcraft.mc.namelayer.command.commands.UnlinkGroups;
+import vg.civcraft.mc.namelayer.command.commands.RevokeInvite;
+import vg.civcraft.mc.namelayer.command.commands.SetDefaultGroup;
import vg.civcraft.mc.namelayer.command.commands.SetPassword;
+import vg.civcraft.mc.namelayer.command.commands.ShowBlacklist;
import vg.civcraft.mc.namelayer.command.commands.ToggleAutoAcceptInvites;
import vg.civcraft.mc.namelayer.command.commands.TransferGroup;
-import vg.civcraft.mc.namelayer.command.commands.PromotePlayer;
-import vg.civcraft.mc.namelayer.command.commands.RejectInvite;
-import vg.civcraft.mc.namelayer.command.commands.RevokeInvite;
-import vg.civcraft.mc.namelayer.command.commands.SetDefaultGroup;
-import vg.civcraft.mc.namelayer.command.commands.GetDefaultGroup;
import vg.civcraft.mc.namelayer.command.commands.UpdateName;
public class CommandHandler {
- public Map commands = new HashMap();
+ private Map commands = new HashMap<>();
public void registerCommands(){
addCommands(new AcceptInvite("AcceptInvite"));
- //addCommands(new LinkGroups("LinkGroups"));
- //addCommands(new UnlinkGroups("UnlinkGroups"));
- //addCommands(new ListSubGroups("ListSubGroups"));
addCommands(new CreateGroup("CreateGroup"));
addCommands(new DeleteGroup("DeleteGroup"));
addCommands(new DisciplineGroup("DisiplineGroup"));
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/GroupTabCompleter.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/GroupTabCompleter.java
index 5bc10fda..1ee8622d 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/GroupTabCompleter.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/GroupTabCompleter.java
@@ -1,12 +1,17 @@
package vg.civcraft.mc.namelayer.command.TabCompleters;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.UUID;
+
import org.bukkit.entity.Player;
+
import vg.civcraft.mc.namelayer.GroupManager;
import vg.civcraft.mc.namelayer.NameAPI;
import vg.civcraft.mc.namelayer.group.Group;
import vg.civcraft.mc.namelayer.permission.PermissionType;
-import java.util.LinkedList;
+import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
@@ -18,30 +23,31 @@ public static List complete(String lastArg, PermissionType accessLevel,
UUID uuid = NameAPI.getUUID(sender.getName());
GroupManager gm = NameAPI.getGroupManager();
List groups = gm.getAllGroupNames(uuid);
- List fitting_groups = new LinkedList<>();
- List result = new LinkedList<>();
+ List fittingGroups = new ArrayList<>();
+ List result = new ArrayList<>();
if (lastArg != null){
for (String group : groups){
if (group.toLowerCase().startsWith(lastArg.toLowerCase())){
- fitting_groups.add(group);
- } else {
+ fittingGroups.add(group);
}
- }
+ }
} else {
- fitting_groups = groups;
+ fittingGroups = groups;
}
if (accessLevel == null) {
- for (String group_name: fitting_groups){
- Group group = gm.getGroup(group_name);
- if (group.isMember(uuid))
- result.add(group_name);
+ for (String groupName : fittingGroups){
+ Group group = GroupManager.getGroup(groupName);
+ if (group != null && group.isMember(uuid)) {
+ result.add(groupName);
+ }
}
} else {
- for (String group_name : fitting_groups) {
- if (gm.hasAccess(group_name, uuid, accessLevel))
- result.add(group_name);
+ for (String groupName : fittingGroups) {
+ if (gm.hasAccess(groupName, uuid, accessLevel)) {
+ result.add(groupName);
+ }
}
}
return result;
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/InviteTabCompleter.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/InviteTabCompleter.java
index 11ef8656..b2078a2a 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/InviteTabCompleter.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/InviteTabCompleter.java
@@ -1,35 +1,38 @@
package vg.civcraft.mc.namelayer.command.TabCompleters;
import org.bukkit.entity.Player;
-import vg.civcraft.mc.namelayer.GroupManager;
+import org.bukkit.util.StringUtil;
import vg.civcraft.mc.namelayer.NameAPI;
import vg.civcraft.mc.namelayer.group.Group;
import vg.civcraft.mc.namelayer.listeners.PlayerListener;
-import vg.civcraft.mc.namelayer.permission.PermissionType;
import java.util.ArrayList;
-import java.util.LinkedList;
+import java.util.Collections;
import java.util.List;
import java.util.UUID;
+import java.util.stream.Collectors;
+
+import org.bukkit.entity.Player;
+
+import vg.civcraft.mc.namelayer.NameAPI;
+import vg.civcraft.mc.namelayer.group.Group;
+import vg.civcraft.mc.namelayer.listeners.PlayerListener;
/**
* Created by isaac on 2/2/2015.
*/
public class InviteTabCompleter {
- public static List complete(String lastArg, Player sender) {
- UUID uuid = NameAPI.getUUID(sender.getName());
- List groups = PlayerListener.getNotifications(uuid);
- List result = new LinkedList<>();
-
- if (groups == null)
- return new ArrayList<>();
-
- for (Group group : groups){
- if (lastArg == null || group.getName().toLowerCase().startsWith(lastArg.toLowerCase())){
- result.add(group.getName());
- }
- }
+ public static List complete(String lastArg, Player sender) {
+ UUID uuid = NameAPI.getUUID(sender.getName());
+ List groups = PlayerListener.getNotifications(uuid);
+ if (groups == null) {
+ return Collections.emptyList();
+ }
+ List groupsString = groups.stream().map(Group::getName).collect(Collectors.toList());
+ if (lastArg == null) {
+ return groupsString;
+ }
- return result;
- }
+ return StringUtil.copyPartialMatches(lastArg, groupsString, new ArrayList<>());
+ }
}
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/MemberTypeCompleter.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/MemberTypeCompleter.java
index 52c40cd4..b28c93eb 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/MemberTypeCompleter.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/MemberTypeCompleter.java
@@ -1,36 +1,30 @@
package vg.civcraft.mc.namelayer.command.TabCompleters;
+import org.bukkit.util.StringUtil;
import vg.civcraft.mc.namelayer.GroupManager;
-import java.util.LinkedList;
+import java.util.ArrayList;
import java.util.List;
+import vg.civcraft.mc.namelayer.GroupManager;
+
/**
* Created by isaac on 2/2/2015.
*
* Used by tab completers to get a list of user types
*/
public class MemberTypeCompleter {
-
-
public static List complete(String lastArg) {
GroupManager.PlayerType[] types = GroupManager.PlayerType.values();
- List type_strings = new LinkedList<>();
- List result = new LinkedList<>();
-
- for (GroupManager.PlayerType type: types){
- type_strings.add(type.toString());
+ List typeStrings = new ArrayList<>(types.length);
+ for (GroupManager.PlayerType type : types){
+ typeStrings.add(type.toString());
}
- if (lastArg != null) {
- for(String type: type_strings){
- if (type.toLowerCase().startsWith(lastArg.toLowerCase()))
- result.add(type);
- }
- } else {
- result = type_strings;
+ if (lastArg == null) {
+ return typeStrings;
}
- return result;
+ return StringUtil.copyPartialMatches(lastArg, typeStrings, new ArrayList<>());
}
}
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/PermissionCompleter.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/PermissionCompleter.java
index 3f2ff1cf..8ef57997 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/PermissionCompleter.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/TabCompleters/PermissionCompleter.java
@@ -1,35 +1,30 @@
package vg.civcraft.mc.namelayer.command.TabCompleters;
+import org.bukkit.util.StringUtil;
import vg.civcraft.mc.namelayer.permission.PermissionType;
-import java.util.LinkedList;
+import java.util.ArrayList;
import java.util.List;
+import vg.civcraft.mc.namelayer.permission.PermissionType;
+
/**
* Created by isaac on 2/2/2015.
*
* Used by tab completers to get a list of user types
*/
public class PermissionCompleter {
-
-
public static List complete(String lastArg) {
- List type_strings = new LinkedList<>();
- List result = new LinkedList<>();
+ List typeStrings = new ArrayList<>();
- for (PermissionType type: PermissionType.getAllPermissions()){
- type_strings.add(type.getName());
+ for (PermissionType type : PermissionType.getAllPermissions()) {
+ typeStrings.add(type.getName());
}
- if (lastArg != null) {
- for(String type: type_strings){
- if (type.toLowerCase().startsWith(lastArg.toLowerCase()))
- result.add(type);
- }
+ if (lastArg == null) {
+ return typeStrings;
} else {
- result = type_strings;
+ return StringUtil.copyPartialMatches(lastArg, typeStrings, new ArrayList<>());
}
-
- return result;
}
}
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/AddBlacklist.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/AddBlacklist.java
index 45cc242c..4f3af24e 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/AddBlacklist.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/AddBlacklist.java
@@ -2,7 +2,6 @@
import java.util.ArrayList;
import java.util.List;
-import java.util.Set;
import java.util.UUID;
import org.bukkit.Bukkit;
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ChangePlayerName.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ChangePlayerName.java
index 03df16b1..25c1f22b 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ChangePlayerName.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ChangePlayerName.java
@@ -1,14 +1,13 @@
package vg.civcraft.mc.namelayer.command.commands;
-import org.bukkit.Bukkit;
+import java.util.List;
+import java.util.UUID;
+
import org.bukkit.command.CommandSender;
import vg.civcraft.mc.namelayer.NameAPI;
import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
-import java.util.List;
-import java.util.UUID;
-
/**
* Created by isaac on 2/6/15.
*/
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/DeleteGroup.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/DeleteGroup.java
index fe5238d7..69c4eb67 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/DeleteGroup.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/DeleteGroup.java
@@ -5,6 +5,7 @@
import java.util.List;
import java.util.Map;
import java.util.UUID;
+
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@@ -14,7 +15,6 @@
import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
import vg.civcraft.mc.namelayer.command.TabCompleters.GroupTabCompleter;
import vg.civcraft.mc.namelayer.group.Group;
-import vg.civcraft.mc.namelayer.permission.GroupPermission;
import vg.civcraft.mc.namelayer.permission.PermissionType;
public class DeleteGroup extends PlayerCommandMiddle{
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/DisciplineGroup.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/DisciplineGroup.java
index 2091b7a9..82f77038 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/DisciplineGroup.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/DisciplineGroup.java
@@ -1,5 +1,7 @@
package vg.civcraft.mc.namelayer.command.commands;
+import java.util.List;
+
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@@ -7,8 +9,6 @@
import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
import vg.civcraft.mc.namelayer.group.Group;
-import java.util.List;
-
public class DisciplineGroup extends PlayerCommandMiddle{
public DisciplineGroup(String name) {
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/GlobalStats.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/GlobalStats.java
index d4e0bb46..ee66e609 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/GlobalStats.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/GlobalStats.java
@@ -1,5 +1,7 @@
package vg.civcraft.mc.namelayer.command.commands;
+import java.util.List;
+
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
@@ -7,8 +9,6 @@
import vg.civcraft.mc.namelayer.NameLayerPlugin;
import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
-import java.util.List;
-
public class GlobalStats extends PlayerCommandMiddle{
public GlobalStats(String name) {
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/GroupStats.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/GroupStats.java
index 0115b7cf..5d1d7c8e 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/GroupStats.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/GroupStats.java
@@ -14,7 +14,6 @@
import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
import vg.civcraft.mc.namelayer.command.TabCompleters.GroupTabCompleter;
import vg.civcraft.mc.namelayer.group.Group;
-import vg.civcraft.mc.namelayer.permission.GroupPermission;
import vg.civcraft.mc.namelayer.permission.PermissionType;
public class GroupStats extends PlayerCommandMiddle {
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/InfoDump.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/InfoDump.java
index 7ac2d8ce..9a8fb4aa 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/InfoDump.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/InfoDump.java
@@ -3,7 +3,6 @@
import java.util.List;
import java.util.UUID;
-import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/InvitePlayer.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/InvitePlayer.java
index 19c33d24..af8d21fb 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/InvitePlayer.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/InvitePlayer.java
@@ -2,19 +2,17 @@
import java.util.ArrayList;
import java.util.List;
-import java.util.Set;
import java.util.UUID;
-import net.md_5.bungee.api.chat.ClickEvent;
-import net.md_5.bungee.api.chat.ComponentBuilder;
-import net.md_5.bungee.api.chat.HoverEvent;
-import net.md_5.bungee.api.chat.TextComponent;
-
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
+import net.md_5.bungee.api.chat.ClickEvent;
+import net.md_5.bungee.api.chat.ComponentBuilder;
+import net.md_5.bungee.api.chat.HoverEvent;
+import net.md_5.bungee.api.chat.TextComponent;
import vg.civcraft.mc.namelayer.GroupManager;
import vg.civcraft.mc.namelayer.GroupManager.PlayerType;
import vg.civcraft.mc.namelayer.NameAPI;
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListCurrentInvites.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListCurrentInvites.java
index 4b45d628..902f4baf 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListCurrentInvites.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListCurrentInvites.java
@@ -1,5 +1,7 @@
package vg.civcraft.mc.namelayer.command.commands;
+import java.util.List;
+
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@@ -7,8 +9,6 @@
import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
import vg.civcraft.mc.namelayer.listeners.PlayerListener;
-import java.util.List;
-
public class ListCurrentInvites extends PlayerCommandMiddle{
public ListCurrentInvites(String name) {
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListMembers.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListMembers.java
index b7e0ace5..a901545c 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListMembers.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListMembers.java
@@ -9,7 +9,6 @@
import com.google.common.collect.Lists;
-import vg.civcraft.mc.namelayer.GroupManager;
import vg.civcraft.mc.namelayer.GroupManager.PlayerType;
import vg.civcraft.mc.namelayer.NameAPI;
import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListPlayerTypes.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListPlayerTypes.java
index dcd7b5c9..98bb5287 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListPlayerTypes.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListPlayerTypes.java
@@ -1,13 +1,13 @@
package vg.civcraft.mc.namelayer.command.commands;
+import java.util.List;
+
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import vg.civcraft.mc.namelayer.GroupManager.PlayerType;
import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
-import java.util.List;
-
public class ListPlayerTypes extends PlayerCommandMiddle{
public ListPlayerTypes(String name) {
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListSubGroups.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListSubGroups.java
index d74dde02..6eeb60f6 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListSubGroups.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/ListSubGroups.java
@@ -3,7 +3,6 @@
import java.util.List;
import java.util.Set;
import java.util.UUID;
-import java.util.logging.Level;
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
@@ -13,7 +12,6 @@
import vg.civcraft.mc.namelayer.GroupManager;
import vg.civcraft.mc.namelayer.NameAPI;
-import vg.civcraft.mc.namelayer.NameLayerPlugin;
import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
import vg.civcraft.mc.namelayer.group.Group;
import vg.civcraft.mc.namelayer.permission.PermissionType;
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/PromotePlayer.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/PromotePlayer.java
index da393970..d84ec75a 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/PromotePlayer.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/PromotePlayer.java
@@ -11,17 +11,13 @@
import vg.civcraft.mc.namelayer.GroupManager.PlayerType;
import vg.civcraft.mc.namelayer.NameAPI;
-import vg.civcraft.mc.namelayer.NameLayerPlugin;
import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
import vg.civcraft.mc.namelayer.command.TabCompleters.GroupMemberTabCompleter;
import vg.civcraft.mc.namelayer.command.TabCompleters.GroupTabCompleter;
-import vg.civcraft.mc.namelayer.command.TabCompleters.InviteTabCompleter;
import vg.civcraft.mc.namelayer.command.TabCompleters.MemberTypeCompleter;
+import vg.civcraft.mc.namelayer.events.PromotePlayerEvent;
import vg.civcraft.mc.namelayer.group.Group;
-import vg.civcraft.mc.namelayer.listeners.PlayerListener;
-import vg.civcraft.mc.namelayer.permission.GroupPermission;
import vg.civcraft.mc.namelayer.permission.PermissionType;
-import vg.civcraft.mc.namelayer.events.PromotePlayerEvent;
public class PromotePlayer extends PlayerCommandMiddle{
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RejectInvite.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RejectInvite.java
index 8bdfe65c..99445588 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RejectInvite.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RejectInvite.java
@@ -1,12 +1,5 @@
package vg.civcraft.mc.namelayer.command.commands;
-import vg.civcraft.mc.namelayer.GroupManager;
-import vg.civcraft.mc.namelayer.NameAPI;
-import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
-import vg.civcraft.mc.namelayer.command.TabCompleters.InviteTabCompleter;
-import vg.civcraft.mc.namelayer.group.Group;
-import vg.civcraft.mc.namelayer.listeners.PlayerListener;
-
import java.util.List;
import java.util.UUID;
@@ -14,6 +7,13 @@
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
+import vg.civcraft.mc.namelayer.GroupManager;
+import vg.civcraft.mc.namelayer.NameAPI;
+import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
+import vg.civcraft.mc.namelayer.command.TabCompleters.InviteTabCompleter;
+import vg.civcraft.mc.namelayer.group.Group;
+import vg.civcraft.mc.namelayer.listeners.PlayerListener;
+
public class RejectInvite extends PlayerCommandMiddle {
public RejectInvite(String name) {
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RemoveBlacklist.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RemoveBlacklist.java
index a68101ef..e8ad0e1b 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RemoveBlacklist.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RemoveBlacklist.java
@@ -2,7 +2,6 @@
import java.util.ArrayList;
import java.util.List;
-import java.util.Set;
import java.util.UUID;
import org.bukkit.Bukkit;
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RemoveMember.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RemoveMember.java
index ada6c36e..0abe52ff 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RemoveMember.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RemoveMember.java
@@ -7,14 +7,12 @@
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
-import vg.civcraft.mc.namelayer.GroupManager;
import vg.civcraft.mc.namelayer.GroupManager.PlayerType;
import vg.civcraft.mc.namelayer.NameAPI;
import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
import vg.civcraft.mc.namelayer.command.TabCompleters.GroupMemberTabCompleter;
import vg.civcraft.mc.namelayer.command.TabCompleters.GroupTabCompleter;
import vg.civcraft.mc.namelayer.group.Group;
-import vg.civcraft.mc.namelayer.permission.GroupPermission;
import vg.civcraft.mc.namelayer.permission.PermissionType;
public class RemoveMember extends PlayerCommandMiddle {
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RevokeInvite.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RevokeInvite.java
index 3f76eb1c..c857220e 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RevokeInvite.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/RevokeInvite.java
@@ -7,10 +7,9 @@
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
-import vg.civcraft.mc.namelayer.GroupManager.PlayerType;
import vg.civcraft.mc.namelayer.GroupManager;
+import vg.civcraft.mc.namelayer.GroupManager.PlayerType;
import vg.civcraft.mc.namelayer.NameAPI;
-import vg.civcraft.mc.namelayer.NameLayerPlugin;
import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
import vg.civcraft.mc.namelayer.command.TabCompleters.GroupTabCompleter;
import vg.civcraft.mc.namelayer.group.Group;
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/SetPassword.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/SetPassword.java
index 0f76fbf5..f9858e14 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/SetPassword.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/SetPassword.java
@@ -12,7 +12,6 @@
import vg.civcraft.mc.namelayer.command.PlayerCommandMiddle;
import vg.civcraft.mc.namelayer.command.TabCompleters.GroupTabCompleter;
import vg.civcraft.mc.namelayer.group.Group;
-import vg.civcraft.mc.namelayer.permission.GroupPermission;
import vg.civcraft.mc.namelayer.permission.PermissionType;
public class SetPassword extends PlayerCommandMiddle{
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/TransferGroup.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/TransferGroup.java
index 5516a4d4..7c0bc64d 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/TransferGroup.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/TransferGroup.java
@@ -2,6 +2,7 @@
import java.util.List;
import java.util.UUID;
+
import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
@@ -31,7 +32,7 @@ public boolean execute(CommandSender sender, String[] args) {
return true;
}
Player p = (Player) sender;
- Group g = gm.getGroup(args[0]);
+ Group g = GroupManager.getGroup(args[0]);
if (groupIsNull(sender, args[0], g)) {
return true;
}
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/UpdateName.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/UpdateName.java
index 4a3bfa3c..6f9ed392 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/UpdateName.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/command/commands/UpdateName.java
@@ -1,7 +1,6 @@
package vg.civcraft.mc.namelayer.command.commands;
import java.util.Collections;
-import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
@@ -51,9 +50,7 @@ public boolean execute(CommandSender sender, String[] args) {
NameLayerPlugin.getInstance(), new Runnable() {
@Override
public void run() {
- List uuids = new LinkedList();
- uuids.add(uuid);
- NameFetcher fetcher = new NameFetcher(uuids);
+ NameFetcher fetcher = new NameFetcher(Collections.singletonList(uuid));
Map fetchedNames = null;
try {
fetchedNames = fetcher.call();
@@ -129,9 +126,7 @@ public List tabComplete(CommandSender sender, String[] args) {
return null;
}
if (newNames.get(((Player) sender).getUniqueId()) != null) {
- List conf = new LinkedList();
- conf.add("CONFIRM");
- return conf;
+ return Collections.singletonList("CONFIRM");
}
return null;
}
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/database/AssociationList.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/database/AssociationList.java
index 65589e59..002b40e5 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/database/AssociationList.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/database/AssociationList.java
@@ -89,8 +89,8 @@ public void registerMigrations(){
/**
* returns null if no uuid was found
- * @param playername
- * @return
+ * @param playername the player's name
+ * @return the UUID of the player, or null
*/
public UUID getUUID(String playername){
try (Connection connection = db.getConnection();
@@ -111,8 +111,8 @@ public UUID getUUID(String playername){
/**
* returns null if no playername was found
- * @param uuid
- * @return
+ * @param uuid get the current server's name for this UUId
+ * @return the player's name if found
*/
public String getCurrentName(UUID uuid){
try (Connection connection = db.getConnection();
@@ -161,8 +161,10 @@ public void changePlayer(String newName, UUID uuid) {
/**
* This method returns all player info in the table. It is used mainly
* by NameAPI class to prepopulate the maps.
- * As such PlayerMappingInfo.nameMapping will return Map
- * while PlayerMappingInfo.uuidMapping will return Map
+ * As such PlayerMappingInfo.nameMapping will return Map<String, UUID>
+ * while PlayerMappingInfo.uuidMapping will return Map<UUID, String>
+ *
+ * @return the player mapping info is possible
*/
public PlayerMappingInfo getAllPlayerInfo(){
Map nameMapping = new HashMap();
diff --git a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/database/GroupManagerDao.java b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/database/GroupManagerDao.java
index 8df599f2..95df7d86 100644
--- a/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/database/GroupManagerDao.java
+++ b/namelayer-spigot/src/main/java/vg/civcraft/mc/namelayer/database/GroupManagerDao.java
@@ -1,6 +1,5 @@
package vg.civcraft.mc.namelayer.database;
-import java.util.concurrent.Callable;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
@@ -10,13 +9,13 @@
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
-import java.util.LinkedList;
import java.util.List;
import java.util.Map;
+import java.util.Map.Entry;
import java.util.Set;
import java.util.TreeMap;
import java.util.UUID;
-import java.util.Map.Entry;
+import java.util.concurrent.Callable;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -24,13 +23,13 @@
import com.google.common.collect.Lists;
+import vg.civcraft.mc.civmodcore.dao.ManagedDatasource;
import vg.civcraft.mc.namelayer.GroupManager;
import vg.civcraft.mc.namelayer.GroupManager.PlayerType;
import vg.civcraft.mc.namelayer.NameLayerPlugin;
import vg.civcraft.mc.namelayer.group.Group;
import vg.civcraft.mc.namelayer.listeners.PlayerListener;
import vg.civcraft.mc.namelayer.permission.PermissionType;
-import vg.civcraft.mc.civmodcore.dao.ManagedDatasource;
/**
* First guinea pig of conversion to ManagedDatasource.
*
@@ -341,12 +340,12 @@ public Boolean call() {
try (Connection connection = db.getConnection();
PreparedStatement permInit = connection.prepareStatement(addPermissionById);
PreparedStatement permReg = connection.prepareStatement(registerPermission); ) {
- Map permIds = new HashMap();
+ Map permIds = new HashMap<>();
- LinkedList