73 lines
2.0 KiB
Java
73 lines
2.0 KiB
Java
package io.gitlab.jfronny.libjf.config.impl.legacy;
|
|
|
|
import io.gitlab.jfronny.libjf.config.api.ConfigInstance;
|
|
import io.gitlab.jfronny.libjf.config.api.EntryInfo;
|
|
import io.gitlab.jfronny.libjf.config.api.v1.ConfigCategory;
|
|
|
|
import java.util.*;
|
|
import java.util.stream.Collectors;
|
|
|
|
@Deprecated
|
|
public record ConfigInstanceImpl(io.gitlab.jfronny.libjf.config.api.v1.ConfigInstance root, ConfigCategory category) implements ConfigInstance {
|
|
public ConfigInstanceImpl(io.gitlab.jfronny.libjf.config.api.v1.ConfigInstance instance) {
|
|
this(Objects.requireNonNull(instance), instance);
|
|
}
|
|
|
|
public static ConfigInstanceImpl of(io.gitlab.jfronny.libjf.config.api.v1.ConfigInstance instance) {
|
|
return instance == null ? null : new ConfigInstanceImpl(instance);
|
|
}
|
|
|
|
@Override
|
|
public void load() {
|
|
root.load();
|
|
}
|
|
|
|
@Override
|
|
public void write() {
|
|
root.write();
|
|
}
|
|
|
|
@Override
|
|
public String getId() {
|
|
return category.getId();
|
|
}
|
|
|
|
@Override
|
|
public String getCategoryPath() {
|
|
return category.getCategoryPath();
|
|
}
|
|
|
|
@Override
|
|
public String getTranslationPrefix() {
|
|
return category.getTranslationPrefix();
|
|
}
|
|
|
|
@Override
|
|
public List<EntryInfo<?>> getEntries() {
|
|
return category.getEntries().stream().<EntryInfo<?>>map(EntryInfoImpl::new).toList();
|
|
}
|
|
|
|
@Override
|
|
public Map<String, Runnable> getPresets() {
|
|
return category.getPresets();
|
|
}
|
|
|
|
@Override
|
|
public List<ConfigInstance> getReferencedConfigs() {
|
|
return category.getReferencedConfigs().stream().<ConfigInstance>map(r -> new ConfigInstanceImpl(root, r)).toList();
|
|
}
|
|
|
|
@Override
|
|
public Map<String, ConfigInstance> getCategories() {
|
|
return category.getCategories().entrySet().stream().collect(Collectors.toMap(
|
|
Map.Entry::getKey,
|
|
s -> new ConfigInstanceImpl(root, s.getValue())
|
|
));
|
|
}
|
|
|
|
@Override
|
|
public void fix() {
|
|
category.fix();
|
|
}
|
|
}
|