YamlPlayerSettingsStorage

class YamlPlayerSettingsStorage(settingsFile: Path, plugin: JavaPlugin, logger: Logger)

Handles YAML file I/O operations for player settings. Provides backup functionality and async save with debouncing.

Constructors

Link copied to clipboard
constructor(settingsFile: Path, plugin: JavaPlugin, logger: Logger)

Functions

Link copied to clipboard

Loads player settings from the YAML file. If the file doesn't exist, returns empty settings. If loading fails, attempts to restore from backup.

Link copied to clipboard

Queues an async save operation with 5-second debouncing. Multiple save requests within 5 seconds are batched into a single save.

Link copied to clipboard

Saves player settings to the YAML file synchronously. This should only be called from async context or during shutdown.