Package com.winterhavenmc.library.messagebuilder.adapters.pipeline.accessors.expiration
package com.winterhavenmc.library.messagebuilder.adapters.pipeline.accessors.expiration
Provides adapter and interface support for expiration-based macro replacements.
This package enables automatic extraction of expiration-related data from objects that implement
the Expirable interface.
These data points are used to populate macro placeholders in messages, such as:
[OBJECT.EXPIRATION.DURATION} – a human-readable duration until expiration[OBJECT.EXPIRATION.INSTANT} – a localized date/time of expiration
The ExpirationAdapter
allows plugin-defined objects to participate in this macro system simply by implementing the Expirable interface.
Formatting of duration and instant values is delegated to the DurationFormatter and Java's
DateTimeFormatter, both of which use the configured LocaleProvider to produce localized output.
This system is commonly used to represent cooldowns, timeouts, expiration dates, and other time-limited states in a clear and readable format within player-facing messages.
-
Classes