Compare commits

...

5 Commits

@ -61,6 +61,7 @@ import org.bukkit.event.HandlerList;
import org.bukkit.event.Listener; import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerQuitEvent; import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.event.server.PluginDisableEvent; import org.bukkit.event.server.PluginDisableEvent;
import org.bukkit.scheduler.BukkitRunnable;
import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.ApiStatus;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
@ -352,6 +353,9 @@ public final class LocalExpansionManager implements Listener {
private void registerAll(@NotNull final CommandSender sender) { private void registerAll(@NotNull final CommandSender sender) {
Msg.info("Placeholder expansion registration initializing..."); Msg.info("Placeholder expansion registration initializing...");
new BukkitRunnable() {
@Override
public void run() {
Futures.onMainThread(plugin, findExpansionsOnDisk(), (classes, exception) -> { Futures.onMainThread(plugin, findExpansionsOnDisk(), (classes, exception) -> {
if (exception != null) { if (exception != null) {
Msg.severe("Failed to load class files of expansion.", exception); Msg.severe("Failed to load class files of expansion.", exception);
@ -360,7 +364,7 @@ public final class LocalExpansionManager implements Listener {
final List<PlaceholderExpansion> registered = classes.stream() final List<PlaceholderExpansion> registered = classes.stream()
.filter(Objects::nonNull) .filter(Objects::nonNull)
.map(this::register) .map(LocalExpansionManager.this::register)
.filter(Optional::isPresent) .filter(Optional::isPresent)
.map(Optional::get) .map(Optional::get)
.collect(Collectors.toList()); .collect(Collectors.toList());
@ -390,6 +394,8 @@ public final class LocalExpansionManager implements Listener {
Bukkit.getPluginManager().callEvent(new ExpansionsLoadedEvent(registered)); Bukkit.getPluginManager().callEvent(new ExpansionsLoadedEvent(registered));
}); });
} }
}.runTaskLater(plugin, 1L);
}
private void unregisterAll() { private void unregisterAll() {
for (final PlaceholderExpansion expansion : Sets.newHashSet(expansions.values())) { for (final PlaceholderExpansion expansion : Sets.newHashSet(expansions.values())) {