blob: d91f3f620db018ed8d44699ed8b7b26f9ae25909 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
package dev.isxander.yacl.config;
import java.util.HashMap;
import java.util.Map;
@SuppressWarnings("unchecked")
public class YACLConfigManager {
private static final Map<Class<?>, ConfigInstance<?>> configs = new HashMap<>();
public static <T> void register(ConfigInstance<T> configInstance) {
configs.put(configInstance.getConfigClass(), configInstance);
configInstance.load();
}
public static <T> T getConfigData(Class<T> configClass) {
return ((ConfigInstance<T>) configs.get(configClass)).getConfig();
}
public static <T> ConfigInstance<T> getConfigInstance(Class<T> configClass) {
return (ConfigInstance<T>) configs.get(configClass);
}
public static <T, I extends ConfigInstance<T>> I getConfigInstanceType(Class<T> configClass) {
return (I) configs.get(configClass);
}
}
|