diff options
Diffstat (limited to 'EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/StringPermissionComparator.java')
-rw-r--r-- | EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/StringPermissionComparator.java | 35 |
1 files changed, 22 insertions, 13 deletions
diff --git a/EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/StringPermissionComparator.java b/EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/StringPermissionComparator.java index 5a56cd9fc..38cb15349 100644 --- a/EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/StringPermissionComparator.java +++ b/EssentialsGroupManager/src/org/anjocaido/groupmanager/utils/StringPermissionComparator.java @@ -6,45 +6,54 @@ package org.anjocaido.groupmanager.utils; import java.util.Comparator; + /** - * + * * @author gabrielcouto */ -public class StringPermissionComparator implements Comparator<String> { - +public class StringPermissionComparator implements Comparator<String> +{ @Override - public int compare(String permA, String permB) { + public int compare(String permA, String permB) + { boolean ap = permA.startsWith("+"); boolean bp = permB.startsWith("+"); boolean am = permA.startsWith("-"); boolean bm = permB.startsWith("-"); - if (ap && bp) { + if (ap && bp) + { return 0; } - if (ap && !bp) { + if (ap && !bp) + { return -1; } - if (!ap && bp) { + if (!ap && bp) + { return 1; } - if (am && bm) { + if (am && bm) + { return 0; } - if (am && !bm) { + if (am && !bm) + { return -1; } - if (!am && bm) { + if (!am && bm) + { return 1; } return permA.compareToIgnoreCase(permB); } - private static StringPermissionComparator instance; - public static StringPermissionComparator getInstance() { + public static StringPermissionComparator getInstance() + { - if (instance == null) { + if (instance == null) + { instance = new StringPermissionComparator(); } return instance; |