feat: update @interface to allow comments extend

This commit is contained in:
Helvetica Volubi
2025-05-26 23:58:31 +08:00
parent 1a5c505f35
commit 2492015b6e
2 changed files with 8 additions and 2 deletions

View File

@@ -1,6 +1,6 @@
--- /dev/null
+++ b/src/main/java/me/earthme/luminol/config/LuminolConfig.java
@@ -1,0 +_,271 @@
@@ -1,0 +_,275 @@
+package me.earthme.luminol.config;
+
+import com.electronwill.nightconfig.core.UnmodifiableConfig;
@@ -146,6 +146,10 @@
+ success = false;
+ logger.error("Failed to transform removed config {}!", transformedConfig.name());
+ }
+
+ if (transformedConfig.transformComments()) {
+ configFileInstance.setComment(fullConfigKeyName, configFileInstance.getComment(oldConfigKeyName));
+ }
+ }
+
+ if (success) removeConfig(oldConfigKeyName, transformedConfig.category());

View File

@@ -1,6 +1,6 @@
--- /dev/null
+++ b/src/main/java/me/earthme/luminol/config/TransformedConfig.java
@@ -1,0 +_,22 @@
@@ -1,0 +_,24 @@
+package me.earthme.luminol.config;
+
+import java.lang.annotation.Repeatable;
@@ -16,6 +16,8 @@
+
+ boolean transform() default true;
+
+ boolean transformComments() default true;
+
+ Class<? extends DefaultTransformLogic>[] transformLogic() default {DefaultTransformLogic.class};
+
+ @Retention(RetentionPolicy.RUNTIME)