Class MessageService
java.lang.Object
net.blockhost.commons.message.MessageService
Service for handling MiniMessage-based message formatting and sending.
This service provides a convenient API for deserializing MiniMessage strings, applying placeholders, and sending messages to audiences (players, console, etc.).
Example usage:
// Create a message service with a message provider
MessageService messages = MessageService.create(key -> config.getString("messages." + key));
// Send a simple message
messages.send(player, "welcome");
// Send a message with placeholders
messages.send(player, "player-joined", Map.of("player", playerName));
// Or use TagResolvers directly
messages.send(player, "balance", Placeholder.parsed("amount", balance));
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionstatic MessageServiceCreates a new message service with the specified message provider.Gets a message by key and parses it.Gets a message by key and parses it with placeholder replacements.Gets a message by key and parses it with tag resolvers.static net.kyori.adventure.text.minimessage.MiniMessagestatic net.kyori.adventure.text.minimessage.MiniMessageReturns the shared MiniMessage instance.static ComponentParses a MiniMessage string into a Component.static ComponentParses a MiniMessage string with placeholder replacements.static ComponentParses a MiniMessage string with tag resolvers.static net.kyori.adventure.text.minimessage.tag.resolver.TagResolverplaceholder(String key, String value) Creates a placeholder resolver for a key-value pair.static net.kyori.adventure.text.minimessage.tag.resolver.TagResolverplaceholder(String key, Component component) Creates a placeholder resolver for a key-component pair.static net.kyori.adventure.text.minimessage.tag.resolver.TagResolverresolvers(net.kyori.adventure.text.minimessage.tag.resolver.TagResolver... resolvers) Combines multiple tag resolvers into one.voidSends a message to an audience.voidSends a message to an audience with placeholder replacements.voidsend(Audience audience, String key, net.kyori.adventure.text.minimessage.tag.resolver.TagResolver... resolvers) Sends a message to an audience with tag resolvers.voidSends a raw MiniMessage string to an audience.voidsendRaw(Audience audience, String message, net.kyori.adventure.text.minimessage.tag.resolver.TagResolver... resolvers) Sends a raw MiniMessage string to an audience with tag resolvers.
-
Method Details
-
create
Creates a new message service with the specified message provider.
The message provider is a function that takes a message key and returns the raw MiniMessage string for that key. This allows integration with any configuration system.
- Parameters:
messageProvider- function that retrieves raw messages by key- Returns:
- a new message service
-
parse
-
parse
-
parse
-
get
-
get
-
get
-
send
-
send
-
send
-
sendRaw
-
sendRaw
-
placeholder
-
placeholder
-
resolvers
public static net.kyori.adventure.text.minimessage.tag.resolver.TagResolver resolvers(net.kyori.adventure.text.minimessage.tag.resolver.TagResolver... resolvers) Combines multiple tag resolvers into one. -
miniMessage
public static net.kyori.adventure.text.minimessage.MiniMessage miniMessage()Returns the shared MiniMessage instance. -
MINI_MESSAGE
public static net.kyori.adventure.text.minimessage.MiniMessage MINI_MESSAGE()
-