diff --git a/pom.xml b/pom.xml index 6295a39..2c5df26 100644 --- a/pom.xml +++ b/pom.xml @@ -11,11 +11,11 @@ https://github.com/SimSonic/rscPermissions/ - - + + + methuselah-repo + https://maven.methuselah.ru/ + spigotmc-repo @@ -36,11 +36,11 @@ sk89q-repo http://maven.sk89q.com/repo/ - - - methuselah-repo - http://maven.methuselah.ru/ - + + @@ -55,21 +55,21 @@ mysql mysql-connector-java - 5.1.39 + 5.1.40 runtime com.google.code.gson gson - 2.7 + 2.8.0 compile org.bukkit bukkit - 1.10.2-R0.1-SNAPSHOT + 1.11.2-R0.1-SNAPSHOT provided @@ -83,7 +83,7 @@ ru.simsonic rscCommonsLibrary - 2.2.2 + 2.2.3 compile @@ -124,7 +124,7 @@ org.apache.maven.plugins maven-compiler-plugin - 3.5.1 + 3.6.1 1.7 1.7 diff --git a/src/main/java/ru/simsonic/rscPermissions/Engine/InternalCache.java b/src/main/java/ru/simsonic/rscPermissions/Engine/InternalCache.java index 4b524d2..e02b017 100644 --- a/src/main/java/ru/simsonic/rscPermissions/Engine/InternalCache.java +++ b/src/main/java/ru/simsonic/rscPermissions/Engine/InternalCache.java @@ -102,6 +102,7 @@ public class InternalCache extends InternalStorage params.parentEntity = row.entityParent; intermediateResults.add(resolveParent(params)); } + params.parentEntity = implicit_u; // Process all applicable prefixes using only entity id order ResolutionResult result = processPrefixesAndSuffixes(params, intermediateResults); for(RowEntity row : applicableEntities) diff --git a/src/main/java/ru/simsonic/rscPermissions/Engine/InternalStorage.java b/src/main/java/ru/simsonic/rscPermissions/Engine/InternalStorage.java index 6ce64f1..b3e8c35 100644 --- a/src/main/java/ru/simsonic/rscPermissions/Engine/InternalStorage.java +++ b/src/main/java/ru/simsonic/rscPermissions/Engine/InternalStorage.java @@ -17,23 +17,23 @@ class InternalStorage protected final HashMap entities_g = new HashMap<>(); protected final HashMap entities_u = new HashMap<>(); protected final RowInheritance defaultInheritance = new RowInheritance(); - protected String serverId; protected RowEntity implicit_g; protected RowEntity implicit_u; - private boolean freshRemoteData; + protected String serverId = "*"; + private boolean isFreshData = false; public synchronized void fill(DatabaseContents contents) { clear(); importEntities (contents); importPermissions(contents.permissions); importInheritance(contents.inheritance); - freshRemoteData = contents.cached; - implicit_g = entities_g.get(""); - implicit_u = entities_u.get(""); + isFreshData = contents.cached; + implicit_g = entities_g.get(""); + implicit_u = entities_u.get(""); } public synchronized boolean isFreshData() { - return freshRemoteData; + return isFreshData; } private void importEntities(DatabaseContents contents) { @@ -73,6 +73,7 @@ class InternalStorage entities_g.put(groupInternalName, dummy); } } + names_u.add(""); for(String name : names_u) if(!entities_u.containsKey(name)) { diff --git a/src/main/java/ru/simsonic/rscPermissions/IndependentMain.java b/src/main/java/ru/simsonic/rscPermissions/IndependentMain.java index 8e39194..4c63631 100644 --- a/src/main/java/ru/simsonic/rscPermissions/IndependentMain.java +++ b/src/main/java/ru/simsonic/rscPermissions/IndependentMain.java @@ -49,7 +49,7 @@ public class IndependentMain } intCache.setDefaultGroup("Default", true, true); intCache.fill(contents); - final ResolutionResult result = intCache.resolvePlayer("87f946d8212440539d685eab07f8e266"); + final ResolutionResult result = intCache.resolvePlayer(""); // Sorted output for(Map.Entry entry : result.getPermissions().entrySet()) System.out.println("Permission: " + entry.getKey() + " = " + entry.getValue());