From 2c649f28344ad404f3da9df5953301fedf9f25e5 Mon Sep 17 00:00:00 2001 From: Bixilon Date: Sat, 31 Oct 2020 17:19:29 +0100 Subject: [PATCH] write StaticConfiguration constants in caps, remove file name parameter from Configuration constructor --- src/main/java/de/bixilon/minosoft/Minosoft.java | 2 +- .../bixilon/minosoft/config/Configuration.java | 17 ++++++++--------- .../StaticConfiguration.java} | 12 ++++++------ .../minosoft/data/assets/AssetsManager.java | 4 ++-- .../data/mappings/versions/Versions.java | 6 +++--- .../java/de/bixilon/minosoft/logging/Log.java | 6 +++--- .../minosoft/modding/loading/ModLoader.java | 4 ++-- .../util/mojang/api/MojangAuthentication.java | 6 +++--- 8 files changed, 28 insertions(+), 29 deletions(-) rename src/main/java/de/bixilon/minosoft/{Config.java => config/StaticConfiguration.java} (72%) diff --git a/src/main/java/de/bixilon/minosoft/Minosoft.java b/src/main/java/de/bixilon/minosoft/Minosoft.java index ba7e754a9..c35414e37 100644 --- a/src/main/java/de/bixilon/minosoft/Minosoft.java +++ b/src/main/java/de/bixilon/minosoft/Minosoft.java @@ -101,7 +101,7 @@ public final class Minosoft { progress.countUp(); Log.info("Reading config file..."); try { - config = new Configuration(Config.configFileName); + config = new Configuration(); } catch (IOException e) { Log.fatal("Failed to load config file!"); e.printStackTrace(); diff --git a/src/main/java/de/bixilon/minosoft/config/Configuration.java b/src/main/java/de/bixilon/minosoft/config/Configuration.java index e6a673f89..68662e13d 100644 --- a/src/main/java/de/bixilon/minosoft/config/Configuration.java +++ b/src/main/java/de/bixilon/minosoft/config/Configuration.java @@ -17,7 +17,6 @@ import com.google.common.collect.HashBiMap; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.google.gson.JsonObject; -import de.bixilon.minosoft.Config; import de.bixilon.minosoft.gui.main.Server; import de.bixilon.minosoft.logging.Log; import de.bixilon.minosoft.util.Util; @@ -33,20 +32,20 @@ public class Configuration { final JsonObject config; private final Object lock = new Object(); - public Configuration(String filename) throws IOException { - File file = new File(Config.homeDir + "config/" + filename); + public Configuration() throws IOException { + File file = new File(StaticConfiguration.homeDir + "config/" + StaticConfiguration.CONFIG_FILENAME); if (!file.exists()) { // no configuration file - InputStream input = getClass().getResourceAsStream("/config/" + filename); + InputStream input = getClass().getResourceAsStream("/config/" + StaticConfiguration.CONFIG_FILENAME); if (input == null) { - throw new FileNotFoundException(String.format("[Config] Missing default config: %s!", filename)); + throw new FileNotFoundException(String.format("[Config] Missing default config: %s!", StaticConfiguration.CONFIG_FILENAME)); } - File folder = new File(Config.homeDir + "config/"); + File folder = new File(StaticConfiguration.homeDir + "config/"); if (!folder.exists() && !folder.mkdirs()) { throw new IOException("[Config] Could not create config folder!"); } Files.copy(input, Paths.get(file.getAbsolutePath())); - file = new File(Config.homeDir + "config/" + filename); + file = new File(StaticConfiguration.homeDir + "config/" + StaticConfiguration.CONFIG_FILENAME); } config = Util.readJsonFromFile(file.getAbsolutePath()); int configVersion = getInt(ConfigurationPaths.CONFIG_VERSION); @@ -68,7 +67,7 @@ public class Configuration { } } // write config to temp file, delete original config, rename temp file to original file to avoid conflicts if minosoft gets closed while saving the config - File tempFile = new File(Config.homeDir + "config/" + filename + ".tmp"); + File tempFile = new File(StaticConfiguration.homeDir + "config/" + StaticConfiguration.CONFIG_FILENAME + ".tmp"); Gson gson = new GsonBuilder().setPrettyPrinting().create(); FileWriter writer; try { @@ -91,7 +90,7 @@ public class Configuration { if (!tempFile.renameTo(finalFile)) { Log.fatal("An error occurred while saving the config file"); } else { - Log.verbose(String.format("Configuration saved to file %s", filename)); + Log.verbose(String.format("Configuration saved to file %s", StaticConfiguration.CONFIG_FILENAME)); } } }, "IO").start(); diff --git a/src/main/java/de/bixilon/minosoft/Config.java b/src/main/java/de/bixilon/minosoft/config/StaticConfiguration.java similarity index 72% rename from src/main/java/de/bixilon/minosoft/Config.java rename to src/main/java/de/bixilon/minosoft/config/StaticConfiguration.java index 8af113819..6f13401e1 100644 --- a/src/main/java/de/bixilon/minosoft/Config.java +++ b/src/main/java/de/bixilon/minosoft/config/StaticConfiguration.java @@ -11,17 +11,17 @@ * This software is not affiliated with Mojang AB, the original developer of Minecraft. */ -package de.bixilon.minosoft; +package de.bixilon.minosoft.config; import de.bixilon.minosoft.util.OSUtil; import java.io.File; -public class Config { - public static final String configFileName = "config.json"; // Filename of minosoft's base configuration (located in AppData/Minosoft/config) - public static final boolean skipAuthentication = false; // disables all connections to mojang - public static final boolean colorLog = true; // the log should be colored with ANSI (does not affect base components) - public static final boolean logRelativeTime = false; // prefix all log messages with the relative start time in milliseconds instead of the formatted time +public class StaticConfiguration { + public static final String CONFIG_FILENAME = "config.json"; // Filename of minosoft's base configuration (located in AppData/Minosoft/config) + public static final boolean SKIP_MOJANG_AUTHENTICATION = false; // disables all connections to mojang + public static final boolean COLORED_LOG = true; // the log should be colored with ANSI (does not affect base components) + public static final boolean LOG_RELATIVE_TIME = false; // prefix all log messages with the relative start time in milliseconds instead of the formatted time public static String homeDir; diff --git a/src/main/java/de/bixilon/minosoft/data/assets/AssetsManager.java b/src/main/java/de/bixilon/minosoft/data/assets/AssetsManager.java index 7fa760e0b..56dab0ce4 100644 --- a/src/main/java/de/bixilon/minosoft/data/assets/AssetsManager.java +++ b/src/main/java/de/bixilon/minosoft/data/assets/AssetsManager.java @@ -18,9 +18,9 @@ import com.google.gson.JsonElement; import com.google.gson.JsonObject; import com.google.gson.JsonParser; import com.google.gson.stream.JsonReader; -import de.bixilon.minosoft.Config; import de.bixilon.minosoft.Minosoft; import de.bixilon.minosoft.config.ConfigurationPaths; +import de.bixilon.minosoft.config.StaticConfiguration; import de.bixilon.minosoft.logging.Log; import de.bixilon.minosoft.logging.LogLevels; import de.bixilon.minosoft.util.CountUpAndDownLatch; @@ -241,6 +241,6 @@ public class AssetsManager { } private static String getAssetDiskPath(String hash) { - return Config.homeDir + String.format("assets/objects/%s/%s.gz", hash.substring(0, 2), hash); + return StaticConfiguration.homeDir + String.format("assets/objects/%s/%s.gz", hash.substring(0, 2), hash); } } diff --git a/src/main/java/de/bixilon/minosoft/data/mappings/versions/Versions.java b/src/main/java/de/bixilon/minosoft/data/mappings/versions/Versions.java index de4896725..8c668d922 100644 --- a/src/main/java/de/bixilon/minosoft/data/mappings/versions/Versions.java +++ b/src/main/java/de/bixilon/minosoft/data/mappings/versions/Versions.java @@ -16,9 +16,9 @@ package de.bixilon.minosoft.data.mappings.versions; import com.google.common.collect.HashBiMap; import com.google.gson.JsonElement; import com.google.gson.JsonObject; -import de.bixilon.minosoft.Config; import de.bixilon.minosoft.Minosoft; import de.bixilon.minosoft.config.ConfigurationPaths; +import de.bixilon.minosoft.config.StaticConfiguration; import de.bixilon.minosoft.data.Mappings; import de.bixilon.minosoft.logging.Log; import de.bixilon.minosoft.protocol.protocol.ConnectionStates; @@ -128,7 +128,7 @@ public class Versions { long startTime = System.currentTimeMillis(); // check if mapping folder exist - File mappingFolder = new File(Config.homeDir + "assets/mapping"); + File mappingFolder = new File(StaticConfiguration.homeDir + "assets/mapping"); if (!mappingFolder.exists()) { if (mappingFolder.mkdirs()) { Log.verbose("Created mappings folder."); @@ -138,7 +138,7 @@ public class Versions { } } - String fileName = Config.homeDir + String.format("assets/mapping/%s.tar.gz", version.getVersionName()); + String fileName = StaticConfiguration.homeDir + String.format("assets/mapping/%s.tar.gz", version.getVersionName()); HashMap files; try { files = Util.readJsonTarGzFile(fileName); diff --git a/src/main/java/de/bixilon/minosoft/logging/Log.java b/src/main/java/de/bixilon/minosoft/logging/Log.java index fe576b77e..5d2126772 100644 --- a/src/main/java/de/bixilon/minosoft/logging/Log.java +++ b/src/main/java/de/bixilon/minosoft/logging/Log.java @@ -13,7 +13,7 @@ package de.bixilon.minosoft.logging; -import de.bixilon.minosoft.Config; +import de.bixilon.minosoft.config.StaticConfiguration; import de.bixilon.minosoft.data.text.ChatColors; import de.bixilon.minosoft.data.text.ChatFormattingCodes; import de.bixilon.minosoft.data.text.RGBColor; @@ -68,7 +68,7 @@ public class Log { } StringBuilder builder = new StringBuilder(); builder.append("["); - if (Config.logRelativeTime) { + if (StaticConfiguration.LOG_RELATIVE_TIME) { builder.append(System.currentTimeMillis() - startTime); } else { builder.append(timeFormat.format(System.currentTimeMillis())); @@ -79,7 +79,7 @@ public class Log { builder.append(level.name()); builder.append("] "); builder.append(prefix); - if (color != null && Config.colorLog) { + if (color != null && StaticConfiguration.COLORED_LOG) { builder.append(ChatColors.getANSIColorByRGBColor(color)); builder.append(message); builder.append(ChatFormattingCodes.RESET.getANSI()); diff --git a/src/main/java/de/bixilon/minosoft/modding/loading/ModLoader.java b/src/main/java/de/bixilon/minosoft/modding/loading/ModLoader.java index 7ceb6c991..fc588147d 100644 --- a/src/main/java/de/bixilon/minosoft/modding/loading/ModLoader.java +++ b/src/main/java/de/bixilon/minosoft/modding/loading/ModLoader.java @@ -13,8 +13,8 @@ package de.bixilon.minosoft.modding.loading; -import de.bixilon.minosoft.Config; import de.bixilon.minosoft.Minosoft; +import de.bixilon.minosoft.config.StaticConfiguration; import de.bixilon.minosoft.logging.Log; import de.bixilon.minosoft.modding.MinosoftMod; import de.bixilon.minosoft.util.CountUpAndDownLatch; @@ -38,7 +38,7 @@ public class ModLoader { // sort the list and prioritize // load all lists and dependencies async HashSet> callables = new HashSet<>(); - File[] files = new File(Config.homeDir + "mods").listFiles(); + File[] files = new File(StaticConfiguration.homeDir + "mods").listFiles(); if (files == null) { // no mods to load return; diff --git a/src/main/java/de/bixilon/minosoft/util/mojang/api/MojangAuthentication.java b/src/main/java/de/bixilon/minosoft/util/mojang/api/MojangAuthentication.java index eac5e0f76..e739436ca 100644 --- a/src/main/java/de/bixilon/minosoft/util/mojang/api/MojangAuthentication.java +++ b/src/main/java/de/bixilon/minosoft/util/mojang/api/MojangAuthentication.java @@ -15,9 +15,9 @@ package de.bixilon.minosoft.util.mojang.api; import com.google.gson.JsonObject; import com.google.gson.JsonParser; -import de.bixilon.minosoft.Config; import de.bixilon.minosoft.Minosoft; import de.bixilon.minosoft.config.ConfigurationPaths; +import de.bixilon.minosoft.config.StaticConfiguration; import de.bixilon.minosoft.logging.Log; import de.bixilon.minosoft.util.HTTP; @@ -56,7 +56,7 @@ public final class MojangAuthentication { } public static void joinServer(MojangAccount account, String serverId) { - if (Config.skipAuthentication) { + if (StaticConfiguration.SKIP_MOJANG_AUTHENTICATION) { return; } @@ -85,7 +85,7 @@ public final class MojangAuthentication { } public static String refresh(String clientToken, String accessToken) { - if (Config.skipAuthentication) { + if (StaticConfiguration.SKIP_MOJANG_AUTHENTICATION) { return clientToken; } JsonObject payload = new JsonObject();