Autogenerate document files

This commit is contained in:
xtaodada 2022-05-19 11:44:36 +08:00 committed by Melledy
parent e3ed396889
commit 7fb26c3843
7 changed files with 6 additions and 11 deletions

View File

@ -26,6 +26,7 @@ public final class Configuration extends ConfigContainer {
public static final Locale LANGUAGE = config.language.language; public static final Locale LANGUAGE = config.language.language;
public static final Locale FALLBACK_LANGUAGE = config.language.fallback; public static final Locale FALLBACK_LANGUAGE = config.language.fallback;
public static final String DOCUMENT_LANGUAGE = config.language.document;
private static final String DATA_FOLDER = config.folderStructure.data; private static final String DATA_FOLDER = config.folderStructure.data;
private static final String RESOURCES_FOLDER = config.folderStructure.resources; private static final String RESOURCES_FOLDER = config.folderStructure.resources;
private static final String PLUGINS_FOLDER = config.folderStructure.plugins; private static final String PLUGINS_FOLDER = config.folderStructure.plugins;

View File

@ -5,11 +5,10 @@ import static emu.grasscutter.Configuration.RESOURCE;
import com.google.gson.reflect.TypeToken; import com.google.gson.reflect.TypeToken;
import emu.grasscutter.Grasscutter; import emu.grasscutter.Grasscutter;
import emu.grasscutter.data.GameData; import emu.grasscutter.data.GameData;
import emu.grasscutter.data.ResourceLoader;
import emu.grasscutter.data.def.AvatarData; import emu.grasscutter.data.def.AvatarData;
import emu.grasscutter.data.def.ItemData; import emu.grasscutter.data.def.ItemData;
import emu.grasscutter.tools.Tools;
import emu.grasscutter.utils.Utils; import emu.grasscutter.utils.Utils;
import static emu.grasscutter.Configuration.DOCUMENT_LANGUAGE;
import express.http.Request; import express.http.Request;
import express.http.Response; import express.http.Response;
import java.io.FileInputStream; import java.io.FileInputStream;
@ -27,8 +26,7 @@ final class GachaMappingRequestHandler implements DocumentationHandler {
private Map<Long, String> map; private Map<Long, String> map;
GachaMappingRequestHandler() { GachaMappingRequestHandler() {
ResourceLoader.loadResources(); final String textMapFile = "TextMap/TextMap" + DOCUMENT_LANGUAGE + ".json";
final String textMapFile = "TextMap/TextMap" + Tools.getLanguageOption() + ".json";
try (InputStreamReader fileReader = new InputStreamReader(new FileInputStream( try (InputStreamReader fileReader = new InputStreamReader(new FileInputStream(
Utils.toFilePath(RESOURCE(textMapFile))), StandardCharsets.UTF_8)) { Utils.toFilePath(RESOURCE(textMapFile))), StandardCharsets.UTF_8)) {
map = Grasscutter.getGsonFactory().fromJson(fileReader, map = Grasscutter.getGsonFactory().fromJson(fileReader,

View File

@ -1,19 +1,16 @@
package emu.grasscutter.server.http.documentation; package emu.grasscutter.server.http.documentation;
import static emu.grasscutter.Configuration.DATA; import static emu.grasscutter.Configuration.*;
import static emu.grasscutter.Configuration.RESOURCE;
import static emu.grasscutter.utils.Language.translate; import static emu.grasscutter.utils.Language.translate;
import com.google.gson.reflect.TypeToken; import com.google.gson.reflect.TypeToken;
import emu.grasscutter.Grasscutter; import emu.grasscutter.Grasscutter;
import emu.grasscutter.command.CommandMap; import emu.grasscutter.command.CommandMap;
import emu.grasscutter.data.GameData; import emu.grasscutter.data.GameData;
import emu.grasscutter.data.ResourceLoader;
import emu.grasscutter.data.def.AvatarData; import emu.grasscutter.data.def.AvatarData;
import emu.grasscutter.data.def.ItemData; import emu.grasscutter.data.def.ItemData;
import emu.grasscutter.data.def.MonsterData; import emu.grasscutter.data.def.MonsterData;
import emu.grasscutter.data.def.SceneData; import emu.grasscutter.data.def.SceneData;
import emu.grasscutter.tools.Tools;
import emu.grasscutter.utils.FileUtils; import emu.grasscutter.utils.FileUtils;
import emu.grasscutter.utils.Utils; import emu.grasscutter.utils.Utils;
import express.http.Request; import express.http.Request;
@ -35,7 +32,6 @@ final class HandbookRequestHandler implements DocumentationHandler {
public HandbookRequestHandler() { public HandbookRequestHandler() {
ResourceLoader.loadResources();
final File templateFile = new File(Utils.toFilePath(DATA("documentation/handbook.html"))); final File templateFile = new File(Utils.toFilePath(DATA("documentation/handbook.html")));
if (templateFile.exists()) { if (templateFile.exists()) {
template = new String(FileUtils.read(templateFile), StandardCharsets.UTF_8); template = new String(FileUtils.read(templateFile), StandardCharsets.UTF_8);
@ -44,7 +40,7 @@ final class HandbookRequestHandler implements DocumentationHandler {
template = null; template = null;
} }
final String textMapFile = "TextMap/TextMap" + Tools.getLanguageOption() + ".json"; final String textMapFile = "TextMap/TextMap" + DOCUMENT_LANGUAGE + ".json";
try (InputStreamReader fileReader = new InputStreamReader(new FileInputStream( try (InputStreamReader fileReader = new InputStreamReader(new FileInputStream(
Utils.toFilePath(RESOURCE(textMapFile))), StandardCharsets.UTF_8)) { Utils.toFilePath(RESOURCE(textMapFile))), StandardCharsets.UTF_8)) {
map = Grasscutter.getGsonFactory() map = Grasscutter.getGsonFactory()

View File

@ -17,7 +17,6 @@ final class RootRequestHandler implements DocumentationHandler {
private final String template; private final String template;
public RootRequestHandler() { public RootRequestHandler() {
ResourceLoader.loadResources();
final File templateFile = new File(Utils.toFilePath(DATA("documentation/index.html"))); final File templateFile = new File(Utils.toFilePath(DATA("documentation/index.html")));
if (templateFile.exists()) { if (templateFile.exists()) {
template = new String(FileUtils.read(templateFile), StandardCharsets.UTF_8); template = new String(FileUtils.read(templateFile), StandardCharsets.UTF_8);

View File

@ -104,6 +104,7 @@ public class ConfigContainer {
public static class Language { public static class Language {
public Locale language = Locale.getDefault(); public Locale language = Locale.getDefault();
public Locale fallback = Locale.US; public Locale fallback = Locale.US;
public String document = "EN";
} }
public static class Account { public static class Account {