From 4c5e28b679c333ab3af8427640d93ad31e0446f8 Mon Sep 17 00:00:00 2001 From: tueem Date: Mon, 17 Mar 2025 10:52:24 +0100 Subject: [PATCH 1/4] feat(logging): replace log4j dependency with slf4j and replace imports --- gradle/libs.versions.toml | 4 ++-- lib/build.gradle.kts | 2 +- .../java/net/tomatentum/marinara/Marinara.java | 2 +- .../tomatentum/marinara/checks/AppliedCheck.java | 6 +++--- .../commands/SlashCommandDefinition.java | 2 +- .../interaction/methods/InteractionMethod.java | 4 ++-- .../tomatentum/marinara/parser/ButtonParser.java | 2 +- .../marinara/parser/InteractionCheckParser.java | 2 +- .../marinara/parser/SlashCommandParser.java | 2 +- .../registry/InteractionCheckRegistry.java | 2 +- .../marinara/registry/InteractionEntry.java | 2 +- .../marinara/registry/InteractionRegistry.java | 3 +-- .../net/tomatentum/marinara/util/LoggerUtil.java | 16 +++------------- .../marinara/wrapper/CommandConverter.java | 9 +++++++++ .../marinara/wrapper/CommandRegisterer.java | 6 ++++++ .../marinara/wrapper/IdentifierProvider.java | 2 +- wrapper/discord4j/build.gradle.kts | 5 +++-- .../wrapper/discord4j/Discord4JWrapper.java | 2 +- wrapper/javacord/build.gradle.kts | 2 +- .../wrapper/javacord/JavacordWrapper.java | 2 +- 20 files changed, 41 insertions(+), 36 deletions(-) diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 021ee38..5f2057a 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -3,7 +3,7 @@ [versions] junit-jupiter = "5.10.2" -log4j = "2.24.1" +slf4j = "2.0.17" javacord = "3.8.0" discord4j = "3.2.7" geantyref = "2.0.0" @@ -11,7 +11,7 @@ mockito = "5.15.2" [libraries] junit-jupiter = { module = "org.junit.jupiter:junit-jupiter", version.ref = "junit-jupiter" } -log4j = { module = "org.apache.logging.log4j:log4j-api", version.ref = "log4j"} +slf4j = { module = "org.slf4j:slf4j-api", version.ref = "slf4j"} javacord = { module = "org.javacord:javacord", version.ref = "javacord"} discord4j = { module = "com.discord4j:discord4j-core", version.ref = "discord4j"} geantyref = { module = "io.leangen.geantyref:geantyref", version.ref = "geantyref"} diff --git a/lib/build.gradle.kts b/lib/build.gradle.kts index 12ef189..19aca3b 100644 --- a/lib/build.gradle.kts +++ b/lib/build.gradle.kts @@ -20,7 +20,7 @@ dependencies { testImplementation(libs.junit.jupiter) testRuntimeOnly("org.junit.platform:junit-platform-launcher") - implementation(libs.log4j) + implementation(libs.slf4j) implementation(libs.geantyref) } diff --git a/lib/src/main/java/net/tomatentum/marinara/Marinara.java b/lib/src/main/java/net/tomatentum/marinara/Marinara.java index c1be562..f53a7ae 100644 --- a/lib/src/main/java/net/tomatentum/marinara/Marinara.java +++ b/lib/src/main/java/net/tomatentum/marinara/Marinara.java @@ -1,6 +1,6 @@ package net.tomatentum.marinara; -import org.apache.logging.log4j.Logger; +import org.slf4j.Logger; import net.tomatentum.marinara.registry.InteractionCheckRegistry; import net.tomatentum.marinara.registry.InteractionRegistry; diff --git a/lib/src/main/java/net/tomatentum/marinara/checks/AppliedCheck.java b/lib/src/main/java/net/tomatentum/marinara/checks/AppliedCheck.java index 6b4c487..c20cf5a 100644 --- a/lib/src/main/java/net/tomatentum/marinara/checks/AppliedCheck.java +++ b/lib/src/main/java/net/tomatentum/marinara/checks/AppliedCheck.java @@ -5,7 +5,7 @@ import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.Arrays; -import org.apache.logging.log4j.Logger; +import org.slf4j.Logger; import net.tomatentum.marinara.util.LoggerUtil; import net.tomatentum.marinara.util.ReflectionUtil; @@ -27,7 +27,7 @@ public record AppliedCheck(InteractionCheck check, Annotation annotation) { logger.debug("Pre Check {} {} with context {}", check.getClass().getName(), result ? "succeeded" : "failed", context.toString()); return result; } catch (IllegalAccessException | InvocationTargetException | SecurityException e) { - logger.fatal(e); + logger.error("Failed executing pre-check", e); return false; } } @@ -43,7 +43,7 @@ public record AppliedCheck(InteractionCheck check, Annotation annotation) { logger.debug("Executing post check {} with context {}", check.getClass().getName(), context.toString()); method.invoke(check, context, annotation); } catch (IllegalAccessException | InvocationTargetException | SecurityException e) { - logger.fatal(e); + logger.error("Failed executing post-check", e); } } diff --git a/lib/src/main/java/net/tomatentum/marinara/interaction/commands/SlashCommandDefinition.java b/lib/src/main/java/net/tomatentum/marinara/interaction/commands/SlashCommandDefinition.java index 164eec4..65aa47c 100644 --- a/lib/src/main/java/net/tomatentum/marinara/interaction/commands/SlashCommandDefinition.java +++ b/lib/src/main/java/net/tomatentum/marinara/interaction/commands/SlashCommandDefinition.java @@ -4,7 +4,7 @@ import java.util.HashSet; import java.util.List; import java.util.Set; -import org.apache.logging.log4j.Logger; +import org.slf4j.Logger; import net.tomatentum.marinara.interaction.commands.annotation.SlashCommandOption; import net.tomatentum.marinara.interaction.commands.annotation.SlashCommandOption.PlaceHolderEnum; diff --git a/lib/src/main/java/net/tomatentum/marinara/interaction/methods/InteractionMethod.java b/lib/src/main/java/net/tomatentum/marinara/interaction/methods/InteractionMethod.java index 09d7c61..9fdda56 100644 --- a/lib/src/main/java/net/tomatentum/marinara/interaction/methods/InteractionMethod.java +++ b/lib/src/main/java/net/tomatentum/marinara/interaction/methods/InteractionMethod.java @@ -7,7 +7,7 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import org.apache.logging.log4j.Logger; +import org.slf4j.Logger; import net.tomatentum.marinara.Marinara; import net.tomatentum.marinara.checks.AppliedCheck; @@ -69,7 +69,7 @@ public abstract class InteractionMethod { try { method.invoke(handler, getParameters(context)); }catch (IllegalAccessException | InvocationTargetException ex) { - logger.fatal(ex); + logger.error("InteractionMethod failed to run", ex); } this.appliedChecks.forEach(x -> x.post(context)); diff --git a/lib/src/main/java/net/tomatentum/marinara/parser/ButtonParser.java b/lib/src/main/java/net/tomatentum/marinara/parser/ButtonParser.java index 1e5bdb4..ee8ab37 100644 --- a/lib/src/main/java/net/tomatentum/marinara/parser/ButtonParser.java +++ b/lib/src/main/java/net/tomatentum/marinara/parser/ButtonParser.java @@ -3,7 +3,7 @@ package net.tomatentum.marinara.parser; import java.lang.reflect.Method; import java.util.function.Consumer; -import org.apache.logging.log4j.Logger; +import org.slf4j.Logger; import net.tomatentum.marinara.interaction.annotation.Button; import net.tomatentum.marinara.util.LoggerUtil; diff --git a/lib/src/main/java/net/tomatentum/marinara/parser/InteractionCheckParser.java b/lib/src/main/java/net/tomatentum/marinara/parser/InteractionCheckParser.java index a397168..7379141 100644 --- a/lib/src/main/java/net/tomatentum/marinara/parser/InteractionCheckParser.java +++ b/lib/src/main/java/net/tomatentum/marinara/parser/InteractionCheckParser.java @@ -6,7 +6,7 @@ import java.util.Arrays; import java.util.Optional; import java.util.function.Consumer; -import org.apache.logging.log4j.Logger; +import org.slf4j.Logger; import net.tomatentum.marinara.checks.AppliedCheck; import net.tomatentum.marinara.checks.InteractionCheck; diff --git a/lib/src/main/java/net/tomatentum/marinara/parser/SlashCommandParser.java b/lib/src/main/java/net/tomatentum/marinara/parser/SlashCommandParser.java index ca07241..ef65a2a 100644 --- a/lib/src/main/java/net/tomatentum/marinara/parser/SlashCommandParser.java +++ b/lib/src/main/java/net/tomatentum/marinara/parser/SlashCommandParser.java @@ -3,7 +3,7 @@ package net.tomatentum.marinara.parser; import java.lang.reflect.Method; import java.util.function.Consumer; -import org.apache.logging.log4j.Logger; +import org.slf4j.Logger; import net.tomatentum.marinara.interaction.InteractionType; import net.tomatentum.marinara.interaction.commands.annotation.SlashCommand; diff --git a/lib/src/main/java/net/tomatentum/marinara/registry/InteractionCheckRegistry.java b/lib/src/main/java/net/tomatentum/marinara/registry/InteractionCheckRegistry.java index 59f5220..1093adf 100644 --- a/lib/src/main/java/net/tomatentum/marinara/registry/InteractionCheckRegistry.java +++ b/lib/src/main/java/net/tomatentum/marinara/registry/InteractionCheckRegistry.java @@ -6,7 +6,7 @@ import java.util.ArrayList; import java.util.List; import java.util.Optional; -import org.apache.logging.log4j.Logger; +import org.slf4j.Logger; import io.leangen.geantyref.GenericTypeReflector; import net.tomatentum.marinara.checks.InteractionCheck; diff --git a/lib/src/main/java/net/tomatentum/marinara/registry/InteractionEntry.java b/lib/src/main/java/net/tomatentum/marinara/registry/InteractionEntry.java index 6e2735b..2d2868a 100644 --- a/lib/src/main/java/net/tomatentum/marinara/registry/InteractionEntry.java +++ b/lib/src/main/java/net/tomatentum/marinara/registry/InteractionEntry.java @@ -3,7 +3,7 @@ package net.tomatentum.marinara.registry; import java.util.HashSet; import java.util.Set; -import org.apache.logging.log4j.Logger; +import org.slf4j.Logger; import net.tomatentum.marinara.interaction.InteractionType; import net.tomatentum.marinara.interaction.ident.InteractionIdentifier; diff --git a/lib/src/main/java/net/tomatentum/marinara/registry/InteractionRegistry.java b/lib/src/main/java/net/tomatentum/marinara/registry/InteractionRegistry.java index 6314b88..be5678d 100644 --- a/lib/src/main/java/net/tomatentum/marinara/registry/InteractionRegistry.java +++ b/lib/src/main/java/net/tomatentum/marinara/registry/InteractionRegistry.java @@ -7,7 +7,7 @@ import java.util.List; import java.util.Optional; import java.util.Set; -import org.apache.logging.log4j.Logger; +import org.slf4j.Logger; import net.tomatentum.marinara.Marinara; import net.tomatentum.marinara.interaction.InteractionHandler; @@ -66,7 +66,6 @@ public class InteractionRegistry { .toArray(SlashCommandDefinition[]::new); marinara.getWrapper().getRegisterer().register(defs); - logger.info("Registered all SlashCommands"); } public void handle(Object context) { diff --git a/lib/src/main/java/net/tomatentum/marinara/util/LoggerUtil.java b/lib/src/main/java/net/tomatentum/marinara/util/LoggerUtil.java index bf883db..94f0b89 100644 --- a/lib/src/main/java/net/tomatentum/marinara/util/LoggerUtil.java +++ b/lib/src/main/java/net/tomatentum/marinara/util/LoggerUtil.java @@ -1,21 +1,11 @@ package net.tomatentum.marinara.util; -import java.util.Properties; - -import org.apache.logging.log4j.Level; -import org.apache.logging.log4j.LogManager; -import org.apache.logging.log4j.Logger; -import org.apache.logging.log4j.simple.SimpleLogger; -import org.apache.logging.log4j.util.PropertiesUtil; -import org.apache.logging.log4j.util.ProviderUtil; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; public class LoggerUtil { public static Logger getLogger(String name) { - if (ProviderUtil.hasProviders()) { - return LogManager.getLogger(name); - }else - return new SimpleLogger(name, Level.DEBUG, true, false, true, true, "yyyy-MM-dd HH:mm:ss.SSSZ", null, - new PropertiesUtil(new Properties()), System.out); + return LoggerFactory.getLogger(name); } public static Logger getLogger(Class clazz) { diff --git a/lib/src/main/java/net/tomatentum/marinara/wrapper/CommandConverter.java b/lib/src/main/java/net/tomatentum/marinara/wrapper/CommandConverter.java index 5cfc76c..0183de4 100644 --- a/lib/src/main/java/net/tomatentum/marinara/wrapper/CommandConverter.java +++ b/lib/src/main/java/net/tomatentum/marinara/wrapper/CommandConverter.java @@ -4,12 +4,15 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import org.slf4j.Logger; + import net.tomatentum.marinara.interaction.commands.SlashCommandDefinition; import net.tomatentum.marinara.interaction.commands.annotation.SlashCommandOption; import net.tomatentum.marinara.interaction.commands.annotation.SlashCommandOptionChoice; import net.tomatentum.marinara.interaction.ident.InteractionIdentifier; import net.tomatentum.marinara.interaction.ident.RootCommandIdentifier; import net.tomatentum.marinara.interaction.ident.SlashCommandIdentifier; +import net.tomatentum.marinara.util.LoggerUtil; public class CommandConverter { @@ -17,6 +20,8 @@ public class CommandConverter(spec); } + private Logger logger = LoggerUtil.getLogger(getClass()); + private Spec spec; CommandConverter(Spec spec) { @@ -24,6 +29,7 @@ public class CommandConverter options = new ArrayList<>(); if (!def.isRootCommand()) { Arrays.stream(def.getSubCommands()).map(this::convertSubCommand).forEach(options::add); @@ -35,17 +41,20 @@ public class CommandConverter convertedSubCommands = Arrays.stream(subCommands).map(this::convertSubCommand).toList(); return spec.convertSubCommandGroup(identifier, convertedSubCommands); } private O convertSubCommand(SlashCommandIdentifier identifier) { + logger.debug("Converting subCommand {}", identifier); List options = Arrays.stream(identifier.options()).map(this::convertOption).toList(); return spec.convertSubCommand(identifier, options); } private O convertOption(SlashCommandOption option) { + logger.debug("Converting option {}", option); List choices = Arrays.stream(SlashCommandDefinition.getActualChoices(option)).map(spec::convertChoice).toList(); return spec.convertOption(option, choices); } diff --git a/lib/src/main/java/net/tomatentum/marinara/wrapper/CommandRegisterer.java b/lib/src/main/java/net/tomatentum/marinara/wrapper/CommandRegisterer.java index 41e17b0..5cc8053 100644 --- a/lib/src/main/java/net/tomatentum/marinara/wrapper/CommandRegisterer.java +++ b/lib/src/main/java/net/tomatentum/marinara/wrapper/CommandRegisterer.java @@ -4,7 +4,10 @@ import java.util.Arrays; import java.util.Set; import java.util.stream.Collectors; +import org.slf4j.Logger; + import net.tomatentum.marinara.interaction.commands.SlashCommandDefinition; +import net.tomatentum.marinara.util.LoggerUtil; import net.tomatentum.marinara.util.ObjectAggregator; public class CommandRegisterer { @@ -13,6 +16,8 @@ public class CommandRegisterer { return new CommandRegisterer(strategy, converter); } + private Logger logger = LoggerUtil.getLogger(getClass()); + private Strategy strategy; private CommandConverter converter; @@ -36,6 +41,7 @@ public class CommandRegisterer { serverCommands.forEach(strategy::registerServer); strategy.registerGlobal(globalCommands); + logger.info("Registered all SlashCommands"); } public interface Strategy { diff --git a/lib/src/main/java/net/tomatentum/marinara/wrapper/IdentifierProvider.java b/lib/src/main/java/net/tomatentum/marinara/wrapper/IdentifierProvider.java index 1d3f31d..1308222 100644 --- a/lib/src/main/java/net/tomatentum/marinara/wrapper/IdentifierProvider.java +++ b/lib/src/main/java/net/tomatentum/marinara/wrapper/IdentifierProvider.java @@ -7,7 +7,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import org.apache.logging.log4j.Logger; +import org.slf4j.Logger; import io.leangen.geantyref.GenericTypeReflector; import net.tomatentum.marinara.interaction.ident.InteractionIdentifier; diff --git a/wrapper/discord4j/build.gradle.kts b/wrapper/discord4j/build.gradle.kts index dbbc261..49f2259 100644 --- a/wrapper/discord4j/build.gradle.kts +++ b/wrapper/discord4j/build.gradle.kts @@ -19,11 +19,12 @@ dependencies { // Use JUnit Jupiter for testing. testImplementation(libs.junit.jupiter) testImplementation(libs.mockito) + testImplementation(libs.discord4j) testRuntimeOnly("org.junit.platform:junit-platform-launcher") - implementation(libs.log4j) + implementation(libs.slf4j) implementation(libs.discord4j) { -// exclude(module="discord4j-voice") + exclude(module="discord4j-voice") } implementation(libs.geantyref) implementation(project(":lib")) diff --git a/wrapper/discord4j/src/main/java/net/tomatentum/marinara/wrapper/discord4j/Discord4JWrapper.java b/wrapper/discord4j/src/main/java/net/tomatentum/marinara/wrapper/discord4j/Discord4JWrapper.java index b14ce0f..d77dc3e 100644 --- a/wrapper/discord4j/src/main/java/net/tomatentum/marinara/wrapper/discord4j/Discord4JWrapper.java +++ b/wrapper/discord4j/src/main/java/net/tomatentum/marinara/wrapper/discord4j/Discord4JWrapper.java @@ -3,7 +3,7 @@ package net.tomatentum.marinara.wrapper.discord4j; import java.util.List; import java.util.function.Function; -import org.apache.logging.log4j.Logger; +import org.slf4j.Logger; import discord4j.core.GatewayDiscordClient; import discord4j.core.event.domain.interaction.InteractionCreateEvent; diff --git a/wrapper/javacord/build.gradle.kts b/wrapper/javacord/build.gradle.kts index 22b62c0..608bc3a 100644 --- a/wrapper/javacord/build.gradle.kts +++ b/wrapper/javacord/build.gradle.kts @@ -21,7 +21,7 @@ dependencies { testImplementation(libs.mockito) testRuntimeOnly("org.junit.platform:junit-platform-launcher") - implementation(libs.log4j) + implementation(libs.slf4j) implementation(libs.javacord) implementation(libs.geantyref) implementation(project(":lib")) diff --git a/wrapper/javacord/src/main/java/net/tomatentum/marinara/wrapper/javacord/JavacordWrapper.java b/wrapper/javacord/src/main/java/net/tomatentum/marinara/wrapper/javacord/JavacordWrapper.java index 0390fc0..fa7a3f5 100644 --- a/wrapper/javacord/src/main/java/net/tomatentum/marinara/wrapper/javacord/JavacordWrapper.java +++ b/wrapper/javacord/src/main/java/net/tomatentum/marinara/wrapper/javacord/JavacordWrapper.java @@ -1,8 +1,8 @@ package net.tomatentum.marinara.wrapper.javacord; -import org.apache.logging.log4j.Logger; import org.javacord.api.DiscordApi; import org.javacord.api.interaction.SlashCommandBuilder; +import org.slf4j.Logger; import net.tomatentum.marinara.wrapper.CommandConverter; import net.tomatentum.marinara.wrapper.CommandRegisterer; From faca21724c4f4dba00da27cabff007d55d9cdf6d Mon Sep 17 00:00:00 2001 From: tueem Date: Mon, 17 Mar 2025 14:13:00 +0100 Subject: [PATCH 2/4] fix(logging): fix wrong getClass method. --- .../java/net/tomatentum/marinara/parser/SlashCommandParser.java | 2 +- .../main/java/net/tomatentum/marinara/util/ReflectionUtil.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/src/main/java/net/tomatentum/marinara/parser/SlashCommandParser.java b/lib/src/main/java/net/tomatentum/marinara/parser/SlashCommandParser.java index ef65a2a..c598761 100644 --- a/lib/src/main/java/net/tomatentum/marinara/parser/SlashCommandParser.java +++ b/lib/src/main/java/net/tomatentum/marinara/parser/SlashCommandParser.java @@ -59,7 +59,7 @@ public class SlashCommandParser implements AnnotationParser { .build(isAutoComplete); } - logger.trace("Parsed using SlashCommandParser for method {} with the result:\n{}", ReflectionUtil.getFullMethodName(method), lastIdentifier.toString()); + logger.trace("Parsed using SlashCommandParser for method {} with the result: {}", ReflectionUtil.getFullMethodName(method), lastIdentifier.toString()); consumer.accept((SlashCommandIdentifier) lastIdentifier); } diff --git a/lib/src/main/java/net/tomatentum/marinara/util/ReflectionUtil.java b/lib/src/main/java/net/tomatentum/marinara/util/ReflectionUtil.java index 9446e8f..5bda90f 100644 --- a/lib/src/main/java/net/tomatentum/marinara/util/ReflectionUtil.java +++ b/lib/src/main/java/net/tomatentum/marinara/util/ReflectionUtil.java @@ -102,6 +102,6 @@ public final class ReflectionUtil { } public static String getFullMethodName(Method method) { - return method.getClass().getName() + "." + method.getName(); + return method.getDeclaringClass().getName() + "." + method.getName(); } } From a5737b9eaa7b43077e2d277c103cef7c71c140b0 Mon Sep 17 00:00:00 2001 From: tueem Date: Mon, 17 Mar 2025 14:13:21 +0100 Subject: [PATCH 3/4] feat(logging): add Fallback logging --- .../tomatentum/marinara/util/LoggerUtil.java | 3 + .../marinara/util/SimpleLogger.java | 56 +++++++++++++++++++ 2 files changed, 59 insertions(+) create mode 100644 lib/src/main/java/net/tomatentum/marinara/util/SimpleLogger.java diff --git a/lib/src/main/java/net/tomatentum/marinara/util/LoggerUtil.java b/lib/src/main/java/net/tomatentum/marinara/util/LoggerUtil.java index 94f0b89..54eb77b 100644 --- a/lib/src/main/java/net/tomatentum/marinara/util/LoggerUtil.java +++ b/lib/src/main/java/net/tomatentum/marinara/util/LoggerUtil.java @@ -2,9 +2,12 @@ package net.tomatentum.marinara.util; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.slf4j.helpers.NOPLoggerFactory; public class LoggerUtil { public static Logger getLogger(String name) { + if (LoggerFactory.getILoggerFactory() instanceof NOPLoggerFactory) + return new SimpleLogger(name); return LoggerFactory.getLogger(name); } diff --git a/lib/src/main/java/net/tomatentum/marinara/util/SimpleLogger.java b/lib/src/main/java/net/tomatentum/marinara/util/SimpleLogger.java new file mode 100644 index 0000000..2b70d73 --- /dev/null +++ b/lib/src/main/java/net/tomatentum/marinara/util/SimpleLogger.java @@ -0,0 +1,56 @@ +package net.tomatentum.marinara.util; + +import org.slf4j.Marker; +import org.slf4j.event.Level; +import org.slf4j.helpers.LegacyAbstractLogger; +import org.slf4j.helpers.MessageFormatter; + +public class SimpleLogger extends LegacyAbstractLogger { + + private String name; + + public SimpleLogger(String name) { + this.name = name; + } + + @Override + public boolean isTraceEnabled() { + return true; + } + + @Override + public boolean isDebugEnabled() { + return true; + } + + @Override + public boolean isInfoEnabled() { + return true; + } + + @Override + public boolean isWarnEnabled() { + return true; + } + + @Override + public boolean isErrorEnabled() { + return true; + } + + @Override + protected String getFullyQualifiedCallerName() { + // TODO Auto-generated method stub + throw new UnsupportedOperationException("Unimplemented method 'getFullyQualifiedCallerName'"); + } + + @Override + protected void handleNormalizedLoggingCall(Level level, Marker marker, String messagePattern, Object[] arguments, + Throwable throwable) { + String formatted = MessageFormatter.basicArrayFormat(messagePattern, arguments); + System.out.println("[%s] %s => %s".formatted(level, this.name, formatted)); + } + + + +} From ab1eb74e855470f1887489606f0f66e18b1d6099 Mon Sep 17 00:00:00 2001 From: tueem Date: Mon, 17 Mar 2025 14:36:43 +0100 Subject: [PATCH 4/4] fix(logging) implement getQualifiedCallerName --- .../main/java/net/tomatentum/marinara/util/SimpleLogger.java | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/src/main/java/net/tomatentum/marinara/util/SimpleLogger.java b/lib/src/main/java/net/tomatentum/marinara/util/SimpleLogger.java index 2b70d73..db6a2a5 100644 --- a/lib/src/main/java/net/tomatentum/marinara/util/SimpleLogger.java +++ b/lib/src/main/java/net/tomatentum/marinara/util/SimpleLogger.java @@ -40,8 +40,7 @@ public class SimpleLogger extends LegacyAbstractLogger { @Override protected String getFullyQualifiedCallerName() { - // TODO Auto-generated method stub - throw new UnsupportedOperationException("Unimplemented method 'getFullyQualifiedCallerName'"); + return this.name; } @Override