Refactor permission processors, misc cleanup
This commit is contained in:
@@ -31,8 +31,6 @@ import me.lucko.luckperms.common.processors.PermissionProcessor;
|
||||
import me.lucko.luckperms.sponge.service.LuckPermsService;
|
||||
import me.lucko.luckperms.sponge.service.model.LPSubject;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
public abstract class DefaultsProcessor implements PermissionProcessor {
|
||||
private final LuckPermsService service;
|
||||
private final ImmutableContextSet contexts;
|
||||
@@ -58,9 +56,4 @@ public abstract class DefaultsProcessor implements PermissionProcessor {
|
||||
|
||||
return Tristate.UNDEFINED;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateBacking(Map<String, Boolean> map) {
|
||||
// Do nothing, this doesn't use the backing
|
||||
}
|
||||
}
|
||||
|
||||
+3
-11
@@ -27,12 +27,10 @@ package me.lucko.luckperms.sponge.processors;
|
||||
|
||||
import me.lucko.luckperms.api.Tristate;
|
||||
import me.lucko.luckperms.common.node.ImmutableNode;
|
||||
import me.lucko.luckperms.common.processors.AbstractPermissionProcessor;
|
||||
import me.lucko.luckperms.common.processors.PermissionProcessor;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
public class SpongeWildcardProcessor implements PermissionProcessor {
|
||||
private Map<String, Boolean> map = null;
|
||||
public class SpongeWildcardProcessor extends AbstractPermissionProcessor implements PermissionProcessor {
|
||||
|
||||
@Override
|
||||
public Tristate hasPermission(String permission) {
|
||||
@@ -46,7 +44,7 @@ public class SpongeWildcardProcessor implements PermissionProcessor {
|
||||
|
||||
node = node.substring(0, endIndex);
|
||||
if (!node.isEmpty()) {
|
||||
Tristate t = Tristate.fromNullableBoolean(this.map.get(node));
|
||||
Tristate t = Tristate.fromNullableBoolean(this.sourceMap.get(node));
|
||||
if (t != Tristate.UNDEFINED) {
|
||||
return t;
|
||||
}
|
||||
@@ -56,10 +54,4 @@ public class SpongeWildcardProcessor implements PermissionProcessor {
|
||||
return Tristate.UNDEFINED;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateBacking(Map<String, Boolean> map) {
|
||||
if (this.map == null) {
|
||||
this.map = map;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -330,13 +330,13 @@ public class CalculatedSubjectData implements LPSubjectData {
|
||||
public CalculatorHolder(PermissionCalculator calculator) {
|
||||
this.calculator = calculator;
|
||||
this.permissions = new ConcurrentHashMap<>();
|
||||
this.calculator.updateBacking(this.permissions);
|
||||
this.calculator.setSourcePermissions(this.permissions);
|
||||
}
|
||||
|
||||
public void setPermissions(Map<String, Boolean> permissions) {
|
||||
this.permissions.clear();
|
||||
this.permissions.putAll(permissions);
|
||||
this.calculator.updateBacking(this.permissions);
|
||||
this.calculator.setSourcePermissions(this.permissions);
|
||||
this.calculator.invalidateCache();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user