java.lang.Object
java.lang.Enum<Parameter>
com.winterhavenmc.library.messagebuilder.validation.Parameter
All Implemented Interfaces:
Serializable, Comparable<Parameter>, Constable

public enum Parameter extends Enum<Parameter>
Enumerates the names of parameters that may be subject to validation within the MessageBuilder library.

Each enum constant corresponds to a symbolic parameter name used in validation methods and exception messages. This design provides compile-time safety, IDE auto-completion, and helps ensure consistency across the codebase.

The displayName associated with each parameter is used in localized messages and can be retrieved via getDisplayName().

Example usage:

throw new ValidationException(PARAMETER_NULL, Parameter.COMMAND_SENDER);

Inspired by the best practices outlined in "Effective Java" (Joshua Bloch), this approach avoids stringly-typed parameter keys while enabling internationalization support via structured message formatting.

See Also:
  • Enum Constant Details

    • ADAPTER

      public static final Parameter ADAPTER
    • CONTEXT_MAP

      public static final Parameter CONTEXT_MAP
    • COMMAND_SENDER

      public static final Parameter COMMAND_SENDER
    • CONFIGURATION_SUPPLIER

      public static final Parameter CONFIGURATION_SUPPLIER
    • DELEGATE

      public static final Parameter DELEGATE
    • DEPENDENCY_CONTEXT

      public static final Parameter DEPENDENCY_CONTEXT
    • DURATION

      public static final Parameter DURATION
    • ENTITY

      public static final Parameter ENTITY
    • ITEM_SECTION

      public static final Parameter ITEM_SECTION
    • KEY

      public static final Parameter KEY
    • LANGUAGE_FILE

      public static final Parameter LANGUAGE_FILE
    • LANGUAGE_QUERY_HANDLER

      public static final Parameter LANGUAGE_QUERY_HANDLER
    • LANGUAGE_RESOURCE_MANAGER

      public static final Parameter LANGUAGE_RESOURCE_MANAGER
    • LANGUAGE_TAG

      public static final Parameter LANGUAGE_TAG
    • LOCALE

      public static final Parameter LOCALE
    • LOCALE_PROVIDER

      public static final Parameter LOCALE_PROVIDER
    • LOCATION

      public static final Parameter LOCATION
    • LOWER_BOUND

      public static final Parameter LOWER_BOUND
    • MACRO

      public static final Parameter MACRO
    • MACRO_KEY

      public static final Parameter MACRO_KEY
    • MESSAGE

      public static final Parameter MESSAGE
    • MESSAGE_ID

      public static final Parameter MESSAGE_ID
    • MESSAGE_PROCESSOR

      public static final Parameter MESSAGE_PROCESSOR
    • MESSAGE_SECTION

      public static final Parameter MESSAGE_SECTION
    • MESSAGE_RECORD

      public static final Parameter MESSAGE_RECORD
    • MESSAGE_STRING

      public static final Parameter MESSAGE_STRING
    • NAME

      public static final Parameter NAME
    • PLACEHOLDER

      public static final Parameter PLACEHOLDER
    • PLUGIN

      public static final Parameter PLUGIN
    • PRECISION

      public static final Parameter PRECISION
    • QUANTITY

      public static final Parameter QUANTITY
    • QUERY_HANDLER

      public static final Parameter QUERY_HANDLER
    • RECIPIENT

      public static final Parameter RECIPIENT
    • RECORD_TYPE

      public static final Parameter RECORD_TYPE
    • REPLACEMENT_MAP

      public static final Parameter REPLACEMENT_MAP
    • FORMATTER_CONTAINER

      public static final Parameter FORMATTER_CONTAINER
    • RESOURCE_INSTALLER

      public static final Parameter RESOURCE_INSTALLER
    • RESOURCE_LOADER

      public static final Parameter RESOURCE_LOADER
    • RESOURCE_NAME

      public static final Parameter RESOURCE_NAME
    • RESOURCE_TYPE

      public static final Parameter RESOURCE_TYPE
    • SECTION

      public static final Parameter SECTION
    • SECTION_SUPPLIER

      public static final Parameter SECTION_SUPPLIER
    • TARGET_DIR_PATH

      public static final Parameter TARGET_DIR_PATH
    • TYPE

      public static final Parameter TYPE
    • UNIQUE_ID

      public static final Parameter UNIQUE_ID
    • UNKNOWN

      public static final Parameter UNKNOWN
    • VALUE

      public static final Parameter VALUE
    • WORLD

      public static final Parameter WORLD
  • Method Details

    • values

      public static Parameter[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static Parameter valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • getDisplayName

      public String getDisplayName()
      Returns the canonical display name for this parameter, as used in localized error messages.
      Returns:
      the parameter's display name
    • toString

      public String toString()
      Returns the display name of the parameter. Equivalent to getDisplayName().
      Overrides:
      toString in class Enum<Parameter>
      Returns:
      the parameter's display name