Interface LoggerAdapter<P,L>

Type Parameters:
P - platform audience type (Player, ServerPlayerEntity, etc.)
L - prefixed logger implementation type

public interface LoggerAdapter<P,L>
Shared logger adapter API for platform-specific wrappers.
  • Method Details

    • getCore

      LoggerCore getCore()
      Returns the underlying logger core.
      Returns:
      core logger instance
    • getPrefixedLoggers

      Map<String,L> getPrefixedLoggers()
      Returns the cache of prefixed logger instances.
      Returns:
      prefixed logger map
    • buildPrefixedLogger

      L buildPrefixedLogger(PrefixedLoggerCore core)
      Creates a new prefixed logger wrapper.
      Parameters:
      core - prefixed core instance
      Returns:
      prefixed logger
    • wrapAudience

      Audience wrapAudience(P player)
      Wraps a platform player into a MagicUtils audience.
      Parameters:
      player - platform player
      Returns:
      wrapped audience
    • getConfig

      default LoggerConfig getConfig()
      Returns the active logger config.
      Returns:
      logger config
    • getMiniMessage

      default net.kyori.adventure.text.minimessage.MiniMessage getMiniMessage()
      Returns MiniMessage instance for formatting.
      Returns:
      MiniMessage instance
    • getPlaceholderOwner

      default Object getPlaceholderOwner()
      Returns the placeholder owner key.
      Returns:
      owner key or null
    • getExternalPlaceholderEngine

      default ExternalPlaceholderEngine getExternalPlaceholderEngine()
      Returns external placeholder engine.
      Returns:
      external engine or null
    • setExternalPlaceholderEngine

      default void setExternalPlaceholderEngine(ExternalPlaceholderEngine engine)
      Sets the external placeholder engine.
      Parameters:
      engine - engine instance
    • setEscapePlaceholders

      default void setEscapePlaceholders(boolean escapePlaceholders)
      Controls whether external placeholders are escaped before MiniMessage parsing. Disabled by default; enable it when placeholder values may contain untrusted MiniMessage-like input.
      Parameters:
      escapePlaceholders - true to escape placeholder output
    • getLanguageManager

      default LanguageManager getLanguageManager()
      Returns language manager used for localization.
      Returns:
      language manager
    • setLanguageManager

      default void setLanguageManager(LanguageManager languageManager)
      Sets language manager used for localization.
      Parameters:
      languageManager - language manager
    • reload

      default void reload()
      Reloads logger configuration.
    • getChatPrefixMode

      default PrefixMode getChatPrefixMode()
      Returns chat prefix mode.
      Returns:
      chat prefix mode
    • getConsolePrefixMode

      default PrefixMode getConsolePrefixMode()
      Returns console prefix mode.
      Returns:
      console prefix mode
    • getCustomPrefix

      default String getCustomPrefix()
      Returns custom prefix override.
      Returns:
      prefix string
    • getDefaultTarget

      default LogTarget getDefaultTarget()
      Returns the default log target.
      Returns:
      default target
    • isLevelEnabled

      default boolean isLevelEnabled(LogLevel level)
      Returns whether the supplied log level is enabled for the default target.
      Parameters:
      level - log level to check
      Returns:
      true when formatting and delivery should proceed
    • isConsoleStripFormatting

      default boolean isConsoleStripFormatting()
      Returns whether console formatting is stripped.
      Returns:
      true if formatting is stripped
    • isConsoleUseGradient

      default boolean isConsoleUseGradient()
      Returns whether console gradients are enabled.
      Returns:
      true if gradients are enabled
    • resolveColorsForLevel

      default String[] resolveColorsForLevel(LogLevel level, boolean forConsole)
      Resolves color palette for a log level.
      Parameters:
      level - log level
      forConsole - true to resolve console colors
      Returns:
      array of color strings
    • parseMessage

      default net.kyori.adventure.text.Component parseMessage(Object message, LogLevel level, LogTarget target, @Nullable P player, @Nullable @Nullable Collection<? extends P> players, Object... placeholdersArgs)
      Parses message into a component using logger pipeline.
      Parameters:
      message - message input
      level - log level
      target - log target
      player - direct player target
      players - collection of target players
      placeholdersArgs - placeholder arguments
      Returns:
      parsed component
    • parseMessage

      default net.kyori.adventure.text.Component parseMessage(Object message, @Nullable P player, @Nullable @Nullable Collection<? extends P> players, Object... placeholdersArgs)
      Parses message into a component using logger pipeline without prefix.
      Parameters:
      message - message input
      player - direct player target
      players - collection of target players
      placeholdersArgs - placeholder arguments
      Returns:
      parsed component without prefix
    • parseSmart

      default net.kyori.adventure.text.Component parseSmart(String input)
      Parses MiniMessage or legacy text into a component.
      Parameters:
      input - input string
      Returns:
      parsed component
    • parseMessage

      default net.kyori.adventure.text.Component parseMessage(Object message, @Nullable P player, Object... placeholdersArgs)
      Parses message into a component using logger pipeline without prefix for a single player.
      Parameters:
      message - message input
      player - direct player target
      placeholdersArgs - placeholder arguments
      Returns:
      parsed component without prefix
    • parseMessage

      default net.kyori.adventure.text.Component parseMessage(Object message, @Nullable @Nullable Collection<? extends P> players, Object... placeholdersArgs)
      Parses message into a component using logger pipeline without prefix for a player collection.
      Parameters:
      message - message input
      players - collection of target players
      placeholdersArgs - placeholder arguments
      Returns:
      parsed component without prefix
    • create

      default L create(String name)
      Creates a prefixed logger with default prefix.
      Parameters:
      name - logger name
      Returns:
      prefixed logger
    • create

      default L create(String name, String prefix)
      Creates a prefixed logger with custom prefix.
      Parameters:
      name - logger name
      prefix - prefix text
      Returns:
      prefixed logger
    • withPrefix

      default L withPrefix(String name)
      Creates or retrieves a prefixed logger with a default bracketed prefix.
      Parameters:
      name - logger name
      Returns:
      prefixed logger
    • withPrefix

      default L withPrefix(String name, String prefix)
      Creates or retrieves a prefixed logger with the provided prefix.
      Parameters:
      name - logger name
      prefix - prefix text
      Returns:
      prefixed logger
    • broadcast

      default void broadcast(Object message)
      Broadcasts a message to console and players.
      Parameters:
      message - message to send
    • setPrefixedLoggerEnabled

      default void setPrefixedLoggerEnabled(String name, boolean enabled)
      Enables or disables a prefixed logger by name.
      Parameters:
      name - logger name
      enabled - whether logging is enabled
    • send

      default void send(LogLevel level, Object message, @Nullable P player, @Nullable @Nullable Collection<? extends P> players, LogTarget target, boolean broadcast, Object... placeholders)
      Sends a message using the configured logger pipeline.
      Parameters:
      level - log level
      message - message to send
      player - direct player target
      players - player collection target
      target - log target
      broadcast - whether to broadcast to all players
      placeholders - placeholder arguments