Reorganize packages

This commit is contained in:
Luck
2016-10-13 20:07:03 +01:00
Unverified
parent b6c4239322
commit 26fb506560
221 changed files with 1443 additions and 1370 deletions
@@ -20,35 +20,37 @@
* SOFTWARE.
*/
package me.lucko.luckperms;
package me.lucko.luckperms.sponge;
import com.google.inject.Inject;
import lombok.Getter;
import me.lucko.luckperms.ApiHandler;
import me.lucko.luckperms.api.Contexts;
import me.lucko.luckperms.api.LuckPermsApi;
import me.lucko.luckperms.api.PlatformType;
import me.lucko.luckperms.api.implementation.ApiProvider;
import me.lucko.luckperms.api.sponge.LuckPermsService;
import me.lucko.luckperms.calculators.CalculatorFactory;
import me.lucko.luckperms.commands.ConsecutiveExecutor;
import me.lucko.luckperms.commands.Sender;
import me.lucko.luckperms.config.LPConfiguration;
import me.lucko.luckperms.constants.Message;
import me.lucko.luckperms.constants.Permission;
import me.lucko.luckperms.contexts.ContextManager;
import me.lucko.luckperms.contexts.ServerCalculator;
import me.lucko.luckperms.contexts.WorldCalculator;
import me.lucko.luckperms.core.UuidCache;
import me.lucko.luckperms.data.Importer;
import me.lucko.luckperms.groups.GroupManager;
import me.lucko.luckperms.runnables.ExpireTemporaryTask;
import me.lucko.luckperms.runnables.UpdateTask;
import me.lucko.luckperms.storage.Datastore;
import me.lucko.luckperms.storage.StorageFactory;
import me.lucko.luckperms.tracks.TrackManager;
import me.lucko.luckperms.users.UserManager;
import me.lucko.luckperms.utils.LocaleManager;
import me.lucko.luckperms.utils.LogFactory;
import me.lucko.luckperms.common.LuckPermsPlugin;
import me.lucko.luckperms.common.api.ApiProvider;
import me.lucko.luckperms.common.calculators.CalculatorFactory;
import me.lucko.luckperms.common.commands.ConsecutiveExecutor;
import me.lucko.luckperms.common.commands.Sender;
import me.lucko.luckperms.common.config.LPConfiguration;
import me.lucko.luckperms.common.constants.Message;
import me.lucko.luckperms.common.constants.Permission;
import me.lucko.luckperms.common.contexts.ContextManager;
import me.lucko.luckperms.common.contexts.ServerCalculator;
import me.lucko.luckperms.common.core.UuidCache;
import me.lucko.luckperms.common.data.Importer;
import me.lucko.luckperms.common.groups.GroupManager;
import me.lucko.luckperms.common.runnables.ExpireTemporaryTask;
import me.lucko.luckperms.common.runnables.UpdateTask;
import me.lucko.luckperms.common.storage.Datastore;
import me.lucko.luckperms.common.storage.StorageFactory;
import me.lucko.luckperms.common.tracks.TrackManager;
import me.lucko.luckperms.common.users.UserManager;
import me.lucko.luckperms.common.utils.LocaleManager;
import me.lucko.luckperms.common.utils.LogFactory;
import me.lucko.luckperms.sponge.contexts.WorldCalculator;
import me.lucko.luckperms.sponge.service.LuckPermsService;
import org.slf4j.Logger;
import org.spongepowered.api.Game;
import org.spongepowered.api.Sponge;
@@ -151,7 +153,7 @@ public class LPSpongePlugin implements LuckPermsPlugin {
getLog().info("Registering API...");
apiProvider = new ApiProvider(this);
LuckPerms.registerProvider(apiProvider);
ApiHandler.registerProvider(apiProvider);
Sponge.getServiceManager().setProvider(this, LuckPermsApi.class, apiProvider);
int mins = getConfiguration().getSyncTime();
@@ -176,7 +178,7 @@ public class LPSpongePlugin implements LuckPermsPlugin {
datastore.shutdown();
getLog().info("Unregistering API...");
LuckPerms.unregisterProvider();
ApiHandler.unregisterProvider();
}
@Listener
@@ -20,13 +20,15 @@
* SOFTWARE.
*/
package me.lucko.luckperms;
package me.lucko.luckperms.sponge;
import lombok.AllArgsConstructor;
import me.lucko.luckperms.api.Contexts;
import me.lucko.luckperms.api.sponge.LuckPermsService;
import me.lucko.luckperms.calculators.*;
import me.lucko.luckperms.users.User;
import me.lucko.luckperms.common.calculators.*;
import me.lucko.luckperms.common.users.User;
import me.lucko.luckperms.sponge.calculators.DefaultsProcessor;
import me.lucko.luckperms.sponge.calculators.SpongeWildcardProcessor;
import me.lucko.luckperms.sponge.service.LuckPermsService;
import java.util.ArrayList;
import java.util.List;
@@ -20,13 +20,14 @@
* SOFTWARE.
*/
package me.lucko.luckperms;
package me.lucko.luckperms.sponge;
import com.google.common.base.Splitter;
import me.lucko.luckperms.api.data.Callback;
import me.lucko.luckperms.commands.CommandManager;
import me.lucko.luckperms.commands.Util;
import me.lucko.luckperms.constants.Patterns;
import me.lucko.luckperms.common.LuckPermsPlugin;
import me.lucko.luckperms.common.commands.CommandManager;
import me.lucko.luckperms.common.commands.Util;
import me.lucko.luckperms.common.constants.Patterns;
import org.spongepowered.api.command.CommandCallable;
import org.spongepowered.api.command.CommandException;
import org.spongepowered.api.command.CommandResult;
@@ -20,10 +20,10 @@
* SOFTWARE.
*/
package me.lucko.luckperms;
package me.lucko.luckperms.sponge;
import com.google.common.base.Splitter;
import me.lucko.luckperms.config.AbstractConfiguration;
import me.lucko.luckperms.common.config.AbstractConfiguration;
import ninja.leaping.configurate.ConfigurationNode;
import ninja.leaping.configurate.commented.CommentedConfigurationNode;
import ninja.leaping.configurate.hocon.HoconConfigurationLoader;
@@ -20,13 +20,13 @@
* SOFTWARE.
*/
package me.lucko.luckperms;
package me.lucko.luckperms.sponge;
import me.lucko.luckperms.api.sponge.LuckPermsService;
import me.lucko.luckperms.caching.UserData;
import me.lucko.luckperms.constants.Message;
import me.lucko.luckperms.users.User;
import me.lucko.luckperms.utils.AbstractListener;
import me.lucko.luckperms.common.caching.UserData;
import me.lucko.luckperms.common.constants.Message;
import me.lucko.luckperms.common.users.User;
import me.lucko.luckperms.common.utils.AbstractListener;
import me.lucko.luckperms.sponge.service.LuckPermsService;
import org.spongepowered.api.entity.living.player.Player;
import org.spongepowered.api.event.Listener;
import org.spongepowered.api.event.network.ClientConnectionEvent;
@@ -20,10 +20,11 @@
* SOFTWARE.
*/
package me.lucko.luckperms;
package me.lucko.luckperms.sponge;
import me.lucko.luckperms.commands.SenderFactory;
import me.lucko.luckperms.constants.Constants;
import me.lucko.luckperms.common.LuckPermsPlugin;
import me.lucko.luckperms.common.commands.SenderFactory;
import me.lucko.luckperms.common.constants.Constants;
import org.spongepowered.api.command.CommandSource;
import org.spongepowered.api.entity.living.player.Player;
import org.spongepowered.api.text.serializer.TextSerializers;
@@ -20,16 +20,17 @@
* SOFTWARE.
*/
package me.lucko.luckperms.calculators;
package me.lucko.luckperms.sponge.calculators;
import lombok.AllArgsConstructor;
import me.lucko.luckperms.api.sponge.LuckPermsService;
import me.lucko.luckperms.common.calculators.PermissionProcessor;
import me.lucko.luckperms.sponge.service.LuckPermsService;
import org.spongepowered.api.service.context.Context;
import org.spongepowered.api.util.Tristate;
import java.util.Set;
import static me.lucko.luckperms.api.sponge.LuckPermsService.convertTristate;
import static me.lucko.luckperms.sponge.service.LuckPermsService.convertTristate;
@AllArgsConstructor
public class DefaultsProcessor implements PermissionProcessor {
@@ -20,10 +20,11 @@
* SOFTWARE.
*/
package me.lucko.luckperms.calculators;
package me.lucko.luckperms.sponge.calculators;
import lombok.AllArgsConstructor;
import lombok.Getter;
import me.lucko.luckperms.common.calculators.PermissionProcessor;
import java.util.Map;
@@ -20,7 +20,7 @@
* SOFTWARE.
*/
package me.lucko.luckperms.contexts;
package me.lucko.luckperms.sponge.contexts;
import lombok.AllArgsConstructor;
import me.lucko.luckperms.api.context.ContextCalculator;
@@ -20,7 +20,7 @@
* SOFTWARE.
*/
package me.lucko.luckperms.contexts;
package me.lucko.luckperms.sponge.contexts;
import lombok.RequiredArgsConstructor;
import me.lucko.luckperms.api.context.ContextCalculator;
@@ -20,7 +20,7 @@
* SOFTWARE.
*/
package me.lucko.luckperms.api.sponge;
package me.lucko.luckperms.sponge.service;
import com.google.common.collect.ImmutableList;
import lombok.EqualsAndHashCode;
@@ -28,7 +28,7 @@ import lombok.Getter;
import lombok.NonNull;
import me.lucko.luckperms.api.LocalizedNode;
import me.lucko.luckperms.api.Node;
import me.lucko.luckperms.groups.Group;
import me.lucko.luckperms.common.groups.Group;
import org.spongepowered.api.command.CommandSource;
import org.spongepowered.api.service.context.Context;
import org.spongepowered.api.service.permission.NodeTree;
@@ -43,7 +43,7 @@ import java.util.Optional;
import java.util.Set;
import java.util.stream.Collectors;
import static me.lucko.luckperms.utils.ArgumentChecker.unescapeCharacters;
import static me.lucko.luckperms.common.utils.ArgumentChecker.unescapeCharacters;
@EqualsAndHashCode(of = "group")
public class LuckPermsGroupSubject implements Subject {
@@ -20,19 +20,19 @@
* SOFTWARE.
*/
package me.lucko.luckperms.api.sponge;
package me.lucko.luckperms.sponge.service;
import com.google.common.collect.ImmutableMap;
import com.google.common.collect.ImmutableSet;
import lombok.*;
import me.lucko.luckperms.LPSpongePlugin;
import me.lucko.luckperms.api.Contexts;
import me.lucko.luckperms.api.sponge.collections.GroupCollection;
import me.lucko.luckperms.api.sponge.collections.UserCollection;
import me.lucko.luckperms.api.sponge.simple.SimpleCollection;
import me.lucko.luckperms.api.sponge.simple.persisted.SimplePersistedCollection;
import me.lucko.luckperms.api.sponge.simple.persisted.SubjectStorage;
import me.lucko.luckperms.contexts.SpongeCalculatorLink;
import me.lucko.luckperms.sponge.LPSpongePlugin;
import me.lucko.luckperms.sponge.contexts.SpongeCalculatorLink;
import me.lucko.luckperms.sponge.service.collections.GroupCollection;
import me.lucko.luckperms.sponge.service.collections.UserCollection;
import me.lucko.luckperms.sponge.service.persisted.PersistedCollection;
import me.lucko.luckperms.sponge.service.persisted.SubjectStorage;
import me.lucko.luckperms.sponge.service.simple.SimpleCollection;
import org.spongepowered.api.plugin.PluginContainer;
import org.spongepowered.api.service.context.Context;
import org.spongepowered.api.service.context.ContextCalculator;
@@ -64,7 +64,7 @@ public class LuckPermsService implements PermissionService {
private final GroupCollection groupSubjects;
@Getter
private final SimplePersistedCollection defaultSubjects;
private final PersistedCollection defaultSubjects;
@Getter
private final Set<PermissionDescription> descriptionSet;
@@ -78,7 +78,7 @@ public class LuckPermsService implements PermissionService {
userSubjects = new UserCollection(this, plugin.getUserManager());
groupSubjects = new GroupCollection(this, plugin.getGroupManager());
defaultSubjects = new SimplePersistedCollection(this, "defaults");
defaultSubjects = new PersistedCollection(this, "defaults");
defaultSubjects.loadAll();
subjects = new ConcurrentHashMap<>();
@@ -20,7 +20,7 @@
* SOFTWARE.
*/
package me.lucko.luckperms.api.sponge;
package me.lucko.luckperms.sponge.service;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
@@ -28,11 +28,11 @@ import com.google.common.collect.ImmutableSet;
import lombok.AllArgsConstructor;
import lombok.Getter;
import me.lucko.luckperms.api.Node;
import me.lucko.luckperms.core.PermissionHolder;
import me.lucko.luckperms.common.core.PermissionHolder;
import me.lucko.luckperms.common.groups.Group;
import me.lucko.luckperms.common.users.User;
import me.lucko.luckperms.exceptions.ObjectAlreadyHasException;
import me.lucko.luckperms.exceptions.ObjectLacksException;
import me.lucko.luckperms.groups.Group;
import me.lucko.luckperms.users.User;
import org.spongepowered.api.service.context.Context;
import org.spongepowered.api.service.permission.Subject;
import org.spongepowered.api.service.permission.SubjectData;
@@ -41,7 +41,7 @@ import org.spongepowered.api.util.Tristate;
import java.util.*;
import java.util.stream.Collectors;
import static me.lucko.luckperms.utils.ArgumentChecker.escapeCharacters;
import static me.lucko.luckperms.common.utils.ArgumentChecker.escapeCharacters;
@AllArgsConstructor
public class LuckPermsSubjectData implements SubjectData {
@@ -108,7 +108,7 @@ public class LuckPermsSubjectData implements SubjectData {
public boolean setPermission(Set<Context> set, String s, Tristate tristate) {
if (tristate == Tristate.UNDEFINED) {
// Unset
Node.Builder builder = new me.lucko.luckperms.core.Node.Builder(s);
Node.Builder builder = new me.lucko.luckperms.common.core.Node.Builder(s);
for (Context ct : set) {
builder.withExtraContext(ct.getKey(), ct.getValue());
@@ -126,7 +126,7 @@ public class LuckPermsSubjectData implements SubjectData {
return true;
}
Node.Builder builder = new me.lucko.luckperms.core.Node.Builder(s)
Node.Builder builder = new me.lucko.luckperms.common.core.Node.Builder(s)
.setValue(tristate.asBoolean());
for (Context ct : set) {
@@ -233,11 +233,11 @@ public class LuckPermsSubjectData implements SubjectData {
try {
if (enduring) {
holder.setPermission(new me.lucko.luckperms.core.Node.Builder("group." + permsSubject.getIdentifier())
holder.setPermission(new me.lucko.luckperms.common.core.Node.Builder("group." + permsSubject.getIdentifier())
.withExtraContext(contexts)
.build());
} else {
holder.setTransientPermission(new me.lucko.luckperms.core.Node.Builder("group." + permsSubject.getIdentifier())
holder.setTransientPermission(new me.lucko.luckperms.common.core.Node.Builder("group." + permsSubject.getIdentifier())
.withExtraContext(contexts)
.build());
}
@@ -257,11 +257,11 @@ public class LuckPermsSubjectData implements SubjectData {
try {
if (enduring) {
holder.unsetPermission(new me.lucko.luckperms.core.Node.Builder("group." + permsSubject.getIdentifier())
holder.unsetPermission(new me.lucko.luckperms.common.core.Node.Builder("group." + permsSubject.getIdentifier())
.withExtraContext(contexts)
.build());
} else {
holder.unsetTransientPermission(new me.lucko.luckperms.core.Node.Builder("group." + permsSubject.getIdentifier())
holder.unsetTransientPermission(new me.lucko.luckperms.common.core.Node.Builder("group." + permsSubject.getIdentifier())
.withExtraContext(contexts)
.build());
}
@@ -442,12 +442,12 @@ public class LuckPermsSubjectData implements SubjectData {
try {
if (enduring) {
holder.setPermission(new me.lucko.luckperms.core.Node.Builder("meta." + key + "." + value)
holder.setPermission(new me.lucko.luckperms.common.core.Node.Builder("meta." + key + "." + value)
.withExtraContext(context)
.build()
);
} else {
holder.setTransientPermission(new me.lucko.luckperms.core.Node.Builder("meta." + key + "." + value)
holder.setTransientPermission(new me.lucko.luckperms.common.core.Node.Builder("meta." + key + "." + value)
.withExtraContext(context)
.build()
);
@@ -20,14 +20,14 @@
* SOFTWARE.
*/
package me.lucko.luckperms.api.sponge;
package me.lucko.luckperms.sponge.service;
import com.google.common.collect.ImmutableList;
import lombok.EqualsAndHashCode;
import lombok.Getter;
import lombok.NonNull;
import me.lucko.luckperms.caching.MetaData;
import me.lucko.luckperms.users.User;
import me.lucko.luckperms.common.caching.MetaData;
import me.lucko.luckperms.common.users.User;
import org.spongepowered.api.Sponge;
import org.spongepowered.api.command.CommandSource;
import org.spongepowered.api.entity.living.player.Player;
@@ -20,13 +20,13 @@
* SOFTWARE.
*/
package me.lucko.luckperms.api.sponge.collections;
package me.lucko.luckperms.sponge.service.collections;
import lombok.NonNull;
import me.lucko.luckperms.api.sponge.LuckPermsService;
import me.lucko.luckperms.api.sponge.LuckPermsGroupSubject;
import me.lucko.luckperms.api.sponge.simple.SimpleCollection;
import me.lucko.luckperms.groups.GroupManager;
import me.lucko.luckperms.common.groups.GroupManager;
import me.lucko.luckperms.sponge.service.LuckPermsGroupSubject;
import me.lucko.luckperms.sponge.service.LuckPermsService;
import me.lucko.luckperms.sponge.service.simple.SimpleCollection;
import org.spongepowered.api.service.context.Context;
import org.spongepowered.api.service.permission.PermissionService;
import org.spongepowered.api.service.permission.Subject;
@@ -20,16 +20,16 @@
* SOFTWARE.
*/
package me.lucko.luckperms.api.sponge.collections;
package me.lucko.luckperms.sponge.service.collections;
import lombok.Getter;
import lombok.NonNull;
import me.lucko.luckperms.api.sponge.LuckPermsService;
import me.lucko.luckperms.api.sponge.LuckPermsUserSubject;
import me.lucko.luckperms.api.sponge.simple.SimpleCollection;
import me.lucko.luckperms.commands.Util;
import me.lucko.luckperms.users.User;
import me.lucko.luckperms.users.UserManager;
import me.lucko.luckperms.common.commands.Util;
import me.lucko.luckperms.common.users.User;
import me.lucko.luckperms.common.users.UserManager;
import me.lucko.luckperms.sponge.service.LuckPermsService;
import me.lucko.luckperms.sponge.service.LuckPermsUserSubject;
import me.lucko.luckperms.sponge.service.simple.SimpleCollection;
import org.spongepowered.api.service.context.Context;
import org.spongepowered.api.service.permission.PermissionService;
import org.spongepowered.api.service.permission.Subject;
@@ -20,12 +20,12 @@
* SOFTWARE.
*/
package me.lucko.luckperms.api.sponge.simple.persisted;
package me.lucko.luckperms.sponge.service.persisted;
import lombok.Getter;
import lombok.NonNull;
import lombok.RequiredArgsConstructor;
import me.lucko.luckperms.api.sponge.LuckPermsService;
import me.lucko.luckperms.sponge.service.LuckPermsService;
import org.spongepowered.api.service.context.Context;
import org.spongepowered.api.service.permission.Subject;
import org.spongepowered.api.service.permission.SubjectCollection;
@@ -42,18 +42,18 @@ import java.util.stream.Collectors;
* A simple persistable subject collection
*/
@RequiredArgsConstructor
public class SimplePersistedCollection implements SubjectCollection {
public class PersistedCollection implements SubjectCollection {
private final LuckPermsService service;
@Getter
private final String identifier;
private final Map<String, SimplePersistedSubject> subjects = new ConcurrentHashMap<>();
private final Map<String, PersistedSubject> subjects = new ConcurrentHashMap<>();
public void loadAll() {
Map<String, SimpleSubjectDataHolder> holders = service.getStorage().loadAllFromFile(identifier);
for (Map.Entry<String, SimpleSubjectDataHolder> e : holders.entrySet()) {
SimplePersistedSubject subject = new SimplePersistedSubject(e.getKey(), service, this);
Map<String, SubjectDataHolder> holders = service.getStorage().loadAllFromFile(identifier);
for (Map.Entry<String, SubjectDataHolder> e : holders.entrySet()) {
PersistedSubject subject = new PersistedSubject(e.getKey(), service, this);
subject.loadData(e.getValue());
subjects.put(e.getKey(), subject);
}
@@ -62,7 +62,7 @@ public class SimplePersistedCollection implements SubjectCollection {
@Override
public synchronized Subject get(@NonNull String id) {
if (!subjects.containsKey(id)) {
subjects.put(id, new SimplePersistedSubject(id, service, this));
subjects.put(id, new PersistedSubject(id, service, this));
}
return subjects.get(id);
@@ -20,12 +20,12 @@
* SOFTWARE.
*/
package me.lucko.luckperms.api.sponge.simple.persisted;
package me.lucko.luckperms.sponge.service.persisted;
import com.google.common.collect.ImmutableList;
import lombok.Getter;
import lombok.NonNull;
import me.lucko.luckperms.api.sponge.LuckPermsService;
import me.lucko.luckperms.sponge.service.LuckPermsService;
import org.spongepowered.api.command.CommandSource;
import org.spongepowered.api.service.context.Context;
import org.spongepowered.api.service.permission.MemorySubjectData;
@@ -44,23 +44,23 @@ import java.util.Set;
* A simple persistable Subject implementation
*/
@Getter
public class SimplePersistedSubject implements Subject {
public class PersistedSubject implements Subject {
private final String identifier;
private final LuckPermsService service;
private final SubjectCollection containingCollection;
private final SimplePersistedSubjectData subjectData;
private final PersistedSubjectData subjectData;
private final MemorySubjectData transientSubjectData;
public SimplePersistedSubject(String identifier, LuckPermsService service, SubjectCollection containingCollection) {
public PersistedSubject(String identifier, LuckPermsService service, SubjectCollection containingCollection) {
this.identifier = identifier;
this.service = service;
this.containingCollection = containingCollection;
this.subjectData = new SimplePersistedSubjectData(service, this);
this.subjectData = new PersistedSubjectData(service, this);
this.transientSubjectData = new MemorySubjectData(service);
}
public void loadData(SimpleSubjectDataHolder dataHolder) {
public void loadData(SubjectDataHolder dataHolder) {
subjectData.setSave(false);
dataHolder.copyTo(subjectData, service);
subjectData.setSave(true);
@@ -20,7 +20,7 @@
* SOFTWARE.
*/
package me.lucko.luckperms.api.sponge.simple.persisted;
package me.lucko.luckperms.sponge.service.persisted;
import lombok.Getter;
import lombok.Setter;
@@ -36,14 +36,14 @@ import java.util.Set;
/**
* Extension of MemorySubjectData which persists data when modified
*/
public class SimplePersistedSubjectData extends MemorySubjectData {
private final SimplePersistedSubject subject;
public class PersistedSubjectData extends MemorySubjectData {
private final PersistedSubject subject;
@Getter
@Setter
private boolean save = true;
public SimplePersistedSubjectData(PermissionService service, SimplePersistedSubject subject) {
public PersistedSubjectData(PermissionService service, PersistedSubject subject) {
super(service);
this.subject = subject;
}
@@ -20,7 +20,7 @@
* SOFTWARE.
*/
package me.lucko.luckperms.api.sponge.simple.persisted;
package me.lucko.luckperms.sponge.service.persisted;
import org.spongepowered.api.service.context.Context;
import org.spongepowered.api.service.permission.MemorySubjectData;
@@ -30,17 +30,17 @@ import org.spongepowered.api.util.Tristate;
import java.util.*;
import java.util.stream.Collectors;
import static me.lucko.luckperms.api.sponge.LuckPermsService.convertContexts;
import static me.lucko.luckperms.sponge.service.LuckPermsService.convertContexts;
/**
* Holds SubjectData in a "gson friendly" format for serialization
*/
public class SimpleSubjectDataHolder {
public class SubjectDataHolder {
private final Map<Map<String, String>, Map<String, Boolean>> permissions;
private final Map<Map<String, String>, Map<String, String>> options;
private final Map<Map<String, String>, List<Map.Entry<String, String>>> parents;
public SimpleSubjectDataHolder(Map<Set<Context>, Map<String, String>> options, Map<Set<Context>, Map<String, Boolean>> permissions, Map<Set<Context>, List<Map.Entry<String, String>>> parents) {
public SubjectDataHolder(Map<Set<Context>, Map<String, String>> options, Map<Set<Context>, Map<String, Boolean>> permissions, Map<Set<Context>, List<Map.Entry<String, String>>> parents) {
this.options = new HashMap<>();
for (Map.Entry<Set<Context>, Map<String, String>> e : options.entrySet()) {
this.options.put(convertContexts(e.getKey()), new HashMap<>(e.getValue()));
@@ -57,7 +57,7 @@ public class SimpleSubjectDataHolder {
}
}
public SimpleSubjectDataHolder(MemorySubjectData data) {
public SubjectDataHolder(MemorySubjectData data) {
this(
data.getAllOptions(),
data.getAllPermissions(),
@@ -20,7 +20,7 @@
* SOFTWARE.
*/
package me.lucko.luckperms.api.sponge.simple.persisted;
package me.lucko.luckperms.sponge.service.persisted;
import com.google.common.io.Files;
import com.google.gson.Gson;
@@ -51,7 +51,7 @@ public class SubjectStorage {
this.container.getParentFile().mkdirs();
}
public void saveToFile(SimplePersistedSubject subject) throws IOException {
public void saveToFile(PersistedSubject subject) throws IOException {
checkContainer();
File collection = new File(container, subject.getContainingCollection().getIdentifier());
if (!collection.exists()) {
@@ -62,21 +62,21 @@ public class SubjectStorage {
saveToFile(subject, subjectFile);
}
public void saveToFile(SimplePersistedSubject subject, File file) throws IOException {
public void saveToFile(PersistedSubject subject, File file) throws IOException {
file.getParentFile().mkdirs();
if (file.exists()) {
file.delete();
}
file.createNewFile();
Files.write(saveToString(new SimpleSubjectDataHolder(subject.getSubjectData())), file, Charset.defaultCharset());
Files.write(saveToString(new SubjectDataHolder(subject.getSubjectData())), file, Charset.defaultCharset());
}
public String saveToString(SimpleSubjectDataHolder subject) {
public String saveToString(SubjectDataHolder subject) {
return gson.toJson(subject);
}
public Map<String, SimpleSubjectDataHolder> loadAllFromFile(String collectionName) {
public Map<String, SubjectDataHolder> loadAllFromFile(String collectionName) {
checkContainer();
File collection = new File(container, collectionName);
if (!collection.exists()) {
@@ -86,12 +86,12 @@ public class SubjectStorage {
String[] fileNames = collection.list((dir, name) -> name.endsWith(".json"));
if (fileNames == null) return Collections.emptyMap();
Map<String, SimpleSubjectDataHolder> holders = new HashMap<>();
Map<String, SubjectDataHolder> holders = new HashMap<>();
for (String name : fileNames) {
File subject = new File(collection, name);
try {
Map.Entry<String, SimpleSubjectDataHolder> s = loadFromFile(subject);
Map.Entry<String, SubjectDataHolder> s = loadFromFile(subject);
if (s != null) {
holders.put(s.getKey(), s.getValue());
}
@@ -103,7 +103,7 @@ public class SubjectStorage {
return holders;
}
public Map.Entry<String, SimpleSubjectDataHolder> loadFromFile(String collectionName, String subjectName) throws IOException {
public Map.Entry<String, SubjectDataHolder> loadFromFile(String collectionName, String subjectName) throws IOException {
checkContainer();
File collection = new File(container, collectionName);
if (!collection.exists()) {
@@ -114,7 +114,7 @@ public class SubjectStorage {
return new AbstractMap.SimpleEntry<>(subjectName.toLowerCase(), loadFromFile(subject).getValue());
}
public Map.Entry<String, SimpleSubjectDataHolder> loadFromFile(File file) throws IOException {
public Map.Entry<String, SubjectDataHolder> loadFromFile(File file) throws IOException {
if (!file.exists()) {
return null;
}
@@ -123,8 +123,8 @@ public class SubjectStorage {
return new AbstractMap.SimpleEntry<>(file.getName().substring(file.getName().length() - 5).toLowerCase(), loadFromString(s));
}
public SimpleSubjectDataHolder loadFromString(String s) {
return gson.fromJson(s, SimpleSubjectDataHolder.class);
public SubjectDataHolder loadFromString(String s) {
return gson.fromJson(s, SubjectDataHolder.class);
}
}
@@ -20,12 +20,12 @@
* SOFTWARE.
*/
package me.lucko.luckperms.api.sponge.simple;
package me.lucko.luckperms.sponge.service.simple;
import lombok.Getter;
import lombok.NonNull;
import lombok.RequiredArgsConstructor;
import me.lucko.luckperms.api.sponge.LuckPermsService;
import me.lucko.luckperms.sponge.service.LuckPermsService;
import org.spongepowered.api.service.context.Context;
import org.spongepowered.api.service.permission.Subject;
import org.spongepowered.api.service.permission.SubjectCollection;
@@ -20,7 +20,7 @@
* SOFTWARE.
*/
package me.lucko.luckperms.api.sponge.simple;
package me.lucko.luckperms.sponge.service.simple;
import com.google.common.collect.ImmutableList;
import lombok.Getter;
@@ -20,14 +20,14 @@
* SOFTWARE.
*/
package me.lucko.luckperms.utils;
package me.lucko.luckperms.sponge.utils;
import de.icongmbh.oss.maven.plugin.javassist.ClassTransformer;
import javassist.*;
import javassist.bytecode.AnnotationsAttribute;
import javassist.bytecode.annotation.Annotation;
import javassist.bytecode.annotation.StringMemberValue;
import me.lucko.luckperms.LPSpongePlugin;
import me.lucko.luckperms.sponge.LPSpongePlugin;
import java.util.Properties;