Skip to content

ConfigManager

MDT168 edited this page Aug 17, 2026 · 4 revisions

ConfigManager

The ConfigManager class handles registering, saving, loading, and managing configuration settings for your Minecraft plugin. Every plugin using this library should create its own instance of ConfigManager to manage its configuration files safely.


Constructors

ConfigManager(Plugin plugin)

The easiest way to initialize a manager inside a plugin.

  • plugin: Your plugin instance.

ConfigManager(Path dataFolder, Logger logger)

A flexible constructor if you want to specify a custom path or don't have the plugin instance yet (Such as in the Bootstrap)

  • dataFolder: The folder path where config files will be saved and loaded.
  • logger: The logger instance used to report file errors.

Instance Methods

register(T setting)

Registers a new ConfigSetting to this manager.

  • Parameters: setting - The configuration setting you want to register.
  • Returns: The registered setting instance.
  • Note: Registering is crucial for ConfigSettings, so that they can get initialized.

unregisterConfigSetting(ConfigSetting<?> setting)

Removes a specific setting from this manager so it is no longer saved or reloaded.

  • Parameters: setting – The setting to remove.
  • Returns: true if the setting was removed, or false if it was not found.

reloadFromConfig()

Clears cached configuration data and reloads the active values for all registered settings from their respective files.

save()

Writes all registered settings out to their designated YAML files.

  • Builds formatted YAML output including comments, setting types, and default values.
  • Automatically creates missing directories or files as needed.

getDataFolder()

Returns the Path to the folder where configuration files are stored.

getLogger()

Returns the Logger instance used by this manager.


Static Methods

ConfigManager.register(T manager)

Registers a ConfigManager instance to a global list.

  • Parameters: manager – The manager instance to track globally.
  • Returns: The same manager instance.

ConfigManager.saveAll()

Iterates through all globally registered ConfigManager instances and calls save() on each one.