Package org.kingdoms.config.managers
Class ConfigManager
java.lang.Object
org.kingdoms.config.managers.ConfigManager
-
Nested Class Summary
Nested Classes -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidstatic voidbeforeWrite(YamlContainer adapter) voidvoidstatic @Unmodifiable Collection<YamlResource> Returns an immutable list of main configuration files.static voidstatic voidRegisters as a main config file.static voidregisterNormalWatcher(String normalRelativePath, FileWatcher watcher) voidvoidstatic voidstandardReload(YamlContainer config, ConfigManager.ConfigReloadType reloadType) static voidstandardReload(YamlContainer config, ConfigManager.ConfigReloadType reloadType, Function<String, String> customMessage) Does the following according to a message to the rules defined in configs:static voidvoidstatic voidwarnAboutValidation(String name, List<org.snakeyaml.validation.ValidationFailure> exceptions) static voidwatch(YamlContainer yaml) Watch this config file for changes to automatically reload usingYamlContainer.reloadHandle()This will only work for files inside the Kingdoms folder.
-
Constructor Details
-
ConfigManager
-
-
Method Details
-
beforeWrite
-
getMainConfigs
Returns an immutable list of main configuration files. A config file is a main config if it's a simple, ungrouped file in the Kingdoms plugins directory. Configs such as language files, GUIs or custom dynamic files (like turrets/structures style configs) are not considered main configs.Main config files are generally used for reloading inside
/k reloadcommand and also searching using/k admin searchConfigcommand. They can also be included in the experimentalConfigMigrationHistoryfeature.- See Also:
-
registerAsMainConfig
Registers as a main config file. ReadgetMainConfigs()for more info. -
setupReloadHandles
@Internal public void setupReloadHandles() -
setupWatchService
@Internal public void setupWatchService() -
addAllConfigs
@Internal public static void addAllConfigs() -
registerNormalWatcher
-
watch
Watch this config file for changes to automatically reload usingYamlContainer.reloadHandle()This will only work for files inside the Kingdoms folder. -
standardReload
-
standardReload
public static void standardReload(YamlContainer config, ConfigManager.ConfigReloadType reloadType, Function<String, String> customMessage) Does the following according to a message to the rules defined in configs:YamlContainer.reload()-YamlContainer.reloadHandle()-YamlWithDefaults.validate()-YamlWithDefaults.update()Note: This method should not be used inside
YamlContainer.reloadHandle()as it will cause aStackOverflowError. -
generateSchema
@Internal @TestOnly public void generateSchema() -
onDisable
@Internal public static void onDisable() -
warnAboutValidation
-
validateConfigs
public void validateConfigs() -
updateConfigs
public static void updateConfigs() -
createDataFolderIfMissing
@Internal public void createDataFolderIfMissing()
-