From 502d57e744f1f35d6a8684caa4e61341de7c43e7 Mon Sep 17 00:00:00 2001 From: Luck Date: Mon, 27 Aug 2018 22:11:03 +0100 Subject: [PATCH] Optimize event generation & other misc improvements --- .../luckperms/common/backup/Importer.java | 9 ----- .../adapter/ConfigurateConfigAdapter.java | 4 --- .../common/dependencies/Dependency.java | 9 ----- .../dependencies/DependencyRegistry.java | 36 +++++++++---------- .../classloader/PluginClassLoader.java | 2 -- .../common/event/gen/GeneratedEventSpec.java | 4 +-- .../VelocityCalculatorFactory.java | 2 +- .../listeners/VelocityConnectionListener.java | 2 +- .../messaging/VelocityMessagingFactory.java | 2 +- 9 files changed, 22 insertions(+), 48 deletions(-) diff --git a/common/src/main/java/me/lucko/luckperms/common/backup/Importer.java b/common/src/main/java/me/lucko/luckperms/common/backup/Importer.java index 3d07cc120..1cac977bd 100644 --- a/common/src/main/java/me/lucko/luckperms/common/backup/Importer.java +++ b/common/src/main/java/me/lucko/luckperms/common/backup/Importer.java @@ -50,7 +50,6 @@ import java.util.concurrent.Executors; import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeoutException; import java.util.concurrent.atomic.AtomicInteger; -import java.util.function.Supplier; import java.util.stream.Collectors; /** @@ -332,12 +331,4 @@ public class Importer implements Runnable { } } - private static List nInstances(int count, Supplier supplier) { - List ret = new ArrayList<>(count); - for (int i = 0; i < count; i++) { - ret.add(supplier.get()); - } - return ret; - } - } diff --git a/common/src/main/java/me/lucko/luckperms/common/config/adapter/ConfigurateConfigAdapter.java b/common/src/main/java/me/lucko/luckperms/common/config/adapter/ConfigurateConfigAdapter.java index df1b19a20..675df4b25 100644 --- a/common/src/main/java/me/lucko/luckperms/common/config/adapter/ConfigurateConfigAdapter.java +++ b/common/src/main/java/me/lucko/luckperms/common/config/adapter/ConfigurateConfigAdapter.java @@ -26,21 +26,17 @@ package me.lucko.luckperms.common.config.adapter; import com.google.common.base.Splitter; -import com.google.common.base.Supplier; import me.lucko.luckperms.common.plugin.LuckPermsPlugin; import ninja.leaping.configurate.ConfigurationNode; -import ninja.leaping.configurate.loader.AbstractConfigurationLoader; import ninja.leaping.configurate.loader.ConfigurationLoader; -import ninja.leaping.configurate.yaml.YAMLConfigurationLoader; import java.io.IOException; import java.nio.file.Path; import java.util.Collections; import java.util.List; import java.util.Map; -import java.util.function.Function; import java.util.stream.Collectors; public abstract class ConfigurateConfigAdapter extends AbstractConfigurationAdapter implements ConfigurationAdapter { diff --git a/common/src/main/java/me/lucko/luckperms/common/dependencies/Dependency.java b/common/src/main/java/me/lucko/luckperms/common/dependencies/Dependency.java index 4510db407..0305b1250 100644 --- a/common/src/main/java/me/lucko/luckperms/common/dependencies/Dependency.java +++ b/common/src/main/java/me/lucko/luckperms/common/dependencies/Dependency.java @@ -36,7 +36,6 @@ import java.net.URL; import java.security.MessageDigest; import java.util.Arrays; import java.util.Base64; -import java.util.Collections; import java.util.List; public enum Dependency { @@ -280,14 +279,6 @@ public enum Dependency { ); } - Dependency(String url, String version, String checksum) { - this(url, version, checksum, Collections.emptyList()); - } - - Dependency(String url, String version, String checksum, Relocation relocation) { - this(url, version, checksum, Collections.singletonList(relocation)); - } - Dependency(String url, String version, String checksum, List relocations) { this.url = url; this.version = version; diff --git a/common/src/main/java/me/lucko/luckperms/common/dependencies/DependencyRegistry.java b/common/src/main/java/me/lucko/luckperms/common/dependencies/DependencyRegistry.java index b47d78d54..fd63ba308 100644 --- a/common/src/main/java/me/lucko/luckperms/common/dependencies/DependencyRegistry.java +++ b/common/src/main/java/me/lucko/luckperms/common/dependencies/DependencyRegistry.java @@ -25,8 +25,8 @@ package me.lucko.luckperms.common.dependencies; -import com.google.common.collect.ImmutableList; -import com.google.common.collect.ImmutableMap; +import com.google.common.collect.ImmutableListMultimap; +import com.google.common.collect.ListMultimap; import com.google.gson.JsonElement; import me.lucko.luckperms.api.platform.PlatformType; @@ -38,27 +38,25 @@ import me.lucko.luckperms.common.storage.StorageType; import java.util.LinkedHashSet; import java.util.List; -import java.util.Map; import java.util.Set; public class DependencyRegistry { - private static final Map> STORAGE_DEPENDENCIES = ImmutableMap.>builder() - .put(StorageType.YAML, ImmutableList.of(Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_YAML)) - .put(StorageType.JSON, ImmutableList.of(Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_GSON)) - .put(StorageType.HOCON, ImmutableList.of(Dependency.HOCON_CONFIG, Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_HOCON)) - .put(StorageType.TOML, ImmutableList.of(Dependency.TOML4J, Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_TOML)) - .put(StorageType.YAML_COMBINED, ImmutableList.of(Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_YAML)) - .put(StorageType.JSON_COMBINED, ImmutableList.of(Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_GSON)) - .put(StorageType.HOCON_COMBINED, ImmutableList.of(Dependency.HOCON_CONFIG, Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_HOCON)) - .put(StorageType.TOML_COMBINED, ImmutableList.of(Dependency.TOML4J, Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_TOML)) - .put(StorageType.MONGODB, ImmutableList.of(Dependency.MONGODB_DRIVER)) - .put(StorageType.MARIADB, ImmutableList.of(Dependency.MARIADB_DRIVER, Dependency.SLF4J_API, Dependency.SLF4J_SIMPLE, Dependency.HIKARI)) - .put(StorageType.MYSQL, ImmutableList.of(Dependency.MYSQL_DRIVER, Dependency.SLF4J_API, Dependency.SLF4J_SIMPLE, Dependency.HIKARI)) - .put(StorageType.POSTGRESQL, ImmutableList.of(Dependency.POSTGRESQL_DRIVER, Dependency.SLF4J_API, Dependency.SLF4J_SIMPLE, Dependency.HIKARI)) - .put(StorageType.SQLITE, ImmutableList.of(Dependency.SQLITE_DRIVER)) - .put(StorageType.H2, ImmutableList.of(Dependency.H2_DRIVER)) - .put(StorageType.CUSTOM, ImmutableList.of()) + private static final ListMultimap STORAGE_DEPENDENCIES = ImmutableListMultimap.builder() + .putAll(StorageType.YAML, Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_YAML) + .putAll(StorageType.JSON, Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_GSON) + .putAll(StorageType.HOCON, Dependency.HOCON_CONFIG, Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_HOCON) + .putAll(StorageType.TOML, Dependency.TOML4J, Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_TOML) + .putAll(StorageType.YAML_COMBINED, Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_YAML) + .putAll(StorageType.JSON_COMBINED, Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_GSON) + .putAll(StorageType.HOCON_COMBINED, Dependency.HOCON_CONFIG, Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_HOCON) + .putAll(StorageType.TOML_COMBINED, Dependency.TOML4J, Dependency.CONFIGURATE_CORE, Dependency.CONFIGURATE_TOML) + .putAll(StorageType.MONGODB, Dependency.MONGODB_DRIVER) + .putAll(StorageType.MARIADB, Dependency.MARIADB_DRIVER, Dependency.SLF4J_API, Dependency.SLF4J_SIMPLE, Dependency.HIKARI) + .putAll(StorageType.MYSQL, Dependency.MYSQL_DRIVER, Dependency.SLF4J_API, Dependency.SLF4J_SIMPLE, Dependency.HIKARI) + .putAll(StorageType.POSTGRESQL, Dependency.POSTGRESQL_DRIVER, Dependency.SLF4J_API, Dependency.SLF4J_SIMPLE, Dependency.HIKARI) + .putAll(StorageType.SQLITE, Dependency.SQLITE_DRIVER) + .putAll(StorageType.H2, Dependency.H2_DRIVER) .build(); private final LuckPermsPlugin plugin; diff --git a/common/src/main/java/me/lucko/luckperms/common/dependencies/classloader/PluginClassLoader.java b/common/src/main/java/me/lucko/luckperms/common/dependencies/classloader/PluginClassLoader.java index ab25ab62f..86bc9012a 100644 --- a/common/src/main/java/me/lucko/luckperms/common/dependencies/classloader/PluginClassLoader.java +++ b/common/src/main/java/me/lucko/luckperms/common/dependencies/classloader/PluginClassLoader.java @@ -25,8 +25,6 @@ package me.lucko.luckperms.common.dependencies.classloader; -import java.net.MalformedURLException; -import java.net.URL; import java.nio.file.Path; /** diff --git a/common/src/main/java/me/lucko/luckperms/common/event/gen/GeneratedEventSpec.java b/common/src/main/java/me/lucko/luckperms/common/event/gen/GeneratedEventSpec.java index e3f0ff064..245a16250 100644 --- a/common/src/main/java/me/lucko/luckperms/common/event/gen/GeneratedEventSpec.java +++ b/common/src/main/java/me/lucko/luckperms/common/event/gen/GeneratedEventSpec.java @@ -129,8 +129,8 @@ public class GeneratedEventSpec { public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { if (TO_STRING_METHOD.equals(method)) { return "GeneratedEvent(" + - "proxy=" + proxy + ", " + - "class=" + GeneratedEventSpec.this.eventClass.toString() + ", " + + "proxy=" + proxy.getClass().getName() + "@" + Integer.toHexString(proxy.hashCode()) + ", " + + "class=" + GeneratedEventSpec.this.eventClass.getName() + ", " + "fields=" + Arrays.toString(this.fields) + ")"; } if (EQUALS_METHOD.equals(method)) { diff --git a/velocity/src/main/java/me/lucko/luckperms/velocity/calculators/VelocityCalculatorFactory.java b/velocity/src/main/java/me/lucko/luckperms/velocity/calculators/VelocityCalculatorFactory.java index f0da91b4b..bf26534da 100644 --- a/velocity/src/main/java/me/lucko/luckperms/velocity/calculators/VelocityCalculatorFactory.java +++ b/velocity/src/main/java/me/lucko/luckperms/velocity/calculators/VelocityCalculatorFactory.java @@ -28,7 +28,6 @@ package me.lucko.luckperms.velocity.calculators; import com.google.common.collect.ImmutableList; import me.lucko.luckperms.api.Contexts; -import me.lucko.luckperms.velocity.LPVelocityPlugin; import me.lucko.luckperms.common.calculators.CalculatorFactory; import me.lucko.luckperms.common.calculators.PermissionCalculator; import me.lucko.luckperms.common.calculators.PermissionCalculatorMetadata; @@ -37,6 +36,7 @@ import me.lucko.luckperms.common.processors.MapProcessor; import me.lucko.luckperms.common.processors.PermissionProcessor; import me.lucko.luckperms.common.processors.RegexProcessor; import me.lucko.luckperms.common.processors.WildcardProcessor; +import me.lucko.luckperms.velocity.LPVelocityPlugin; public class VelocityCalculatorFactory implements CalculatorFactory { private final LPVelocityPlugin plugin; diff --git a/velocity/src/main/java/me/lucko/luckperms/velocity/listeners/VelocityConnectionListener.java b/velocity/src/main/java/me/lucko/luckperms/velocity/listeners/VelocityConnectionListener.java index f833108db..b5a2c7af7 100644 --- a/velocity/src/main/java/me/lucko/luckperms/velocity/listeners/VelocityConnectionListener.java +++ b/velocity/src/main/java/me/lucko/luckperms/velocity/listeners/VelocityConnectionListener.java @@ -33,11 +33,11 @@ import com.velocitypowered.api.event.connection.LoginEvent; import com.velocitypowered.api.event.permission.PermissionsSetupEvent; import com.velocitypowered.api.proxy.Player; -import me.lucko.luckperms.velocity.LPVelocityPlugin; import me.lucko.luckperms.common.config.ConfigKeys; import me.lucko.luckperms.common.locale.message.Message; import me.lucko.luckperms.common.model.User; import me.lucko.luckperms.common.plugin.util.AbstractConnectionListener; +import me.lucko.luckperms.velocity.LPVelocityPlugin; import me.lucko.luckperms.velocity.service.PlayerPermissionProvider; import java.util.Collections; diff --git a/velocity/src/main/java/me/lucko/luckperms/velocity/messaging/VelocityMessagingFactory.java b/velocity/src/main/java/me/lucko/luckperms/velocity/messaging/VelocityMessagingFactory.java index 23fc38cf9..7f5ae5b08 100644 --- a/velocity/src/main/java/me/lucko/luckperms/velocity/messaging/VelocityMessagingFactory.java +++ b/velocity/src/main/java/me/lucko/luckperms/velocity/messaging/VelocityMessagingFactory.java @@ -28,10 +28,10 @@ package me.lucko.luckperms.velocity.messaging; import me.lucko.luckperms.api.messenger.IncomingMessageConsumer; import me.lucko.luckperms.api.messenger.Messenger; import me.lucko.luckperms.api.messenger.MessengerProvider; -import me.lucko.luckperms.velocity.LPVelocityPlugin; import me.lucko.luckperms.common.messaging.InternalMessagingService; import me.lucko.luckperms.common.messaging.LuckPermsMessagingService; import me.lucko.luckperms.common.messaging.MessagingFactory; +import me.lucko.luckperms.velocity.LPVelocityPlugin; import javax.annotation.Nonnull;