From 9fbe620b6a465ae26190b6a63e00ce6a33317428 Mon Sep 17 00:00:00 2001 From: Roman Zhuravlev Date: Sun, 31 Aug 2025 19:33:22 +0500 Subject: [PATCH] Reworked usage of special methods `onEnable` & `onDisable` --- .../{varioutil => }/BukkitPreparedPlugin.java | 48 +++++++++++-------- .../VelocityPreparedPlugin.java | 30 +++++++----- 2 files changed, 46 insertions(+), 32 deletions(-) rename bukkit/src/main/java/org/zhdev/{varioutil => }/BukkitPreparedPlugin.java (88%) rename velocity/src/main/java/org/zhdev/{varioutil => }/VelocityPreparedPlugin.java (80%) diff --git a/bukkit/src/main/java/org/zhdev/varioutil/BukkitPreparedPlugin.java b/bukkit/src/main/java/org/zhdev/BukkitPreparedPlugin.java similarity index 88% rename from bukkit/src/main/java/org/zhdev/varioutil/BukkitPreparedPlugin.java rename to bukkit/src/main/java/org/zhdev/BukkitPreparedPlugin.java index 7896e26..daf8da1 100644 --- a/bukkit/src/main/java/org/zhdev/varioutil/BukkitPreparedPlugin.java +++ b/bukkit/src/main/java/org/zhdev/BukkitPreparedPlugin.java @@ -1,8 +1,8 @@ -package org.zhdev.varioutil; +package org.zhdev; -import org.zhdev.varioutil.language.Language; -import org.zhdev.varioutil.util.CollectionUtils; -import org.zhdev.varioutil.util.ColorUtils; +import org.zhdev.language.Language; +import org.zhdev.util.CollectionUtils; +import org.zhdev.util.ColorUtils; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.PluginIdentifiableCommand; @@ -12,14 +12,14 @@ import org.bukkit.event.Listener; import org.bukkit.plugin.PluginDescriptionFile; import org.bukkit.plugin.java.JavaPluginLoader; import org.jetbrains.annotations.NotNull; -import org.zhdev.varioutil.bukkit.command.PreparedPluginCommand; -import org.zhdev.varioutil.config.BukkitYamlConfig; -import org.zhdev.varioutil.config.Config; -import org.zhdev.varioutil.config.ConfigSection; -import org.zhdev.varioutil.config.YamlConfig; -import org.zhdev.varioutil.sql.SqlAdapter; -import org.zhdev.varioutil.util.BukkitUtils; -import org.zhdev.varioutil.util.ConfigUtils; +import org.zhdev.bukkit.command.PreparedPluginCommand; +import org.zhdev.config.BukkitYamlConfig; +import org.zhdev.config.Config; +import org.zhdev.config.ConfigSection; +import org.zhdev.config.YamlConfig; +import org.zhdev.sql.SqlAdapter; +import org.zhdev.util.BukkitUtils; +import org.zhdev.util.ConfigUtils; import java.io.File; import java.nio.file.Path; @@ -138,11 +138,17 @@ public abstract class BukkitPreparedPlugin extends BukkitPlugin implements Liste sqlAdapter.setProvider(ConfigUtils.createSqlConnectionProvider(databaseConfig, getDataFolder().getPath())); } - protected void onLoading() {} + protected void onPreLoad() {} - protected void onEnabling() {} + protected void onPostLoad() {} - protected void onDisabling() {} + protected void onPreEnable() {} + + protected void onPostEnable() {} + + protected void onPreDisable() {} + + protected void onPostDisable() {} private void load() { loadDefaultConfig(); @@ -152,8 +158,9 @@ public abstract class BukkitPreparedPlugin extends BukkitPlugin implements Liste @Override public final void onLoad() { + onPreLoad(); load(); - onLoading(); + onPostLoad(); } private void enable() { @@ -162,8 +169,9 @@ public abstract class BukkitPreparedPlugin extends BukkitPlugin implements Liste @Override public final void onEnable() { + onPreEnable(); enable(); - onEnabling(); + onPostEnable(); } private void disable() { @@ -180,11 +188,11 @@ public abstract class BukkitPreparedPlugin extends BukkitPlugin implements Liste @Override public final void onDisable() { try { - onDisabling(); + onPreDisable(); disable(); - } catch (Exception e) { + onPostDisable(); + } finally { disable(); - throw e; } } diff --git a/velocity/src/main/java/org/zhdev/varioutil/VelocityPreparedPlugin.java b/velocity/src/main/java/org/zhdev/VelocityPreparedPlugin.java similarity index 80% rename from velocity/src/main/java/org/zhdev/varioutil/VelocityPreparedPlugin.java rename to velocity/src/main/java/org/zhdev/VelocityPreparedPlugin.java index 267a1ef..2cbeb39 100644 --- a/velocity/src/main/java/org/zhdev/varioutil/VelocityPreparedPlugin.java +++ b/velocity/src/main/java/org/zhdev/VelocityPreparedPlugin.java @@ -1,17 +1,17 @@ -package org.zhdev.varioutil; +package org.zhdev; import com.velocitypowered.api.event.Subscribe; import com.velocitypowered.api.event.proxy.ProxyInitializeEvent; import com.velocitypowered.api.event.proxy.ProxyShutdownEvent; import com.velocitypowered.api.proxy.ProxyServer; -import org.zhdev.varioutil.config.ConfigSection; -import org.zhdev.varioutil.language.Language; -import org.zhdev.varioutil.util.ColorUtils; +import org.zhdev.config.ConfigSection; +import org.zhdev.language.Language; +import org.zhdev.util.ColorUtils; import org.slf4j.Logger; -import org.zhdev.varioutil.config.Config; -import org.zhdev.varioutil.config.VelocityTomlConfig; -import org.zhdev.varioutil.sql.SqlAdapter; -import org.zhdev.varioutil.util.ConfigUtils; +import org.zhdev.config.Config; +import org.zhdev.config.VelocityTomlConfig; +import org.zhdev.sql.SqlAdapter; +import org.zhdev.util.ConfigUtils; import java.nio.file.Path; @@ -59,20 +59,26 @@ public abstract class VelocityPreparedPlugin extends VelocityPlugin implements P return sqlAdapter; } - protected void onEnabling() {} + protected void onPreEnable() {} - protected void onDisabling() {} + protected void onPostEnable() {} + + protected void onPreDisable() {} + + protected void onPostDisable() {} @Subscribe private void onProxyInitialization(ProxyInitializeEvent event) { + onPreEnable(); loadConfig(defaultConfig); loadPhrases(); establishSqlConnection(); - onEnabling(); + onPostEnable(); } @Subscribe private void onProxyInitialization(ProxyShutdownEvent event) { - onDisabling(); + onPreDisable(); + onPostDisable(); } }