27 lines
663 B
Java
Raw Normal View History

package net.knarcraft.blacksmith.config;
/**
* An interface describing an object for managing settings
*
* @param <K> <p>The type of setting managed</p>
*/
public interface Settings<K extends Setting> {
/**
* Changes the value of the given setting
*
* @param setting <p>The setting to change</p>
* @param newValue <p>The new value of the setting</p>
*/
void changeValue(K setting, Object newValue);
/**
* Gets the current raw value of the given global setting
*
* @param setting <p>The setting to get</p>
* @return <p>The current raw setting value</p>
*/
Object getRawValue(K setting);
}