aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/StorageManager.java
diff options
context:
space:
mode:
authorDeDiamondPro <67508414+DeDiamondPro@users.noreply.github.com>2023-10-19 23:32:12 +0200
committerGitHub <noreply@github.com>2023-10-19 23:32:12 +0200
commit54e236158db9b5947d125f83b29e53cf27f73a79 (patch)
tree213b29b23bf294700cfb144e7878ed869e6acff8 /src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/StorageManager.java
parente0a2f5f5991048317f5c045feca084a1413c45fd (diff)
downloadnotenoughupdates-54e236158db9b5947d125f83b29e53cf27f73a79.tar.gz
notenoughupdates-54e236158db9b5947d125f83b29e53cf27f73a79.tar.bz2
notenoughupdates-54e236158db9b5947d125f83b29e53cf27f73a79.zip
Use atomic move for config + small cleanup (#881)
Diffstat (limited to 'src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/StorageManager.java')
-rw-r--r--src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/StorageManager.java34
1 files changed, 3 insertions, 31 deletions
diff --git a/src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/StorageManager.java b/src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/StorageManager.java
index e2ede605..985ed11a 100644
--- a/src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/StorageManager.java
+++ b/src/main/java/io/github/moulberry/notenoughupdates/miscfeatures/StorageManager.java
@@ -31,6 +31,7 @@ import com.google.gson.JsonPrimitive;
import com.google.gson.JsonSerializationContext;
import com.google.gson.JsonSerializer;
import io.github.moulberry.notenoughupdates.NotEnoughUpdates;
+import io.github.moulberry.notenoughupdates.core.config.ConfigUtil;
import io.github.moulberry.notenoughupdates.miscgui.StorageOverlay;
import io.github.moulberry.notenoughupdates.util.SBInfo;
import io.github.moulberry.notenoughupdates.util.Utils;
@@ -62,22 +63,13 @@ import net.minecraft.network.play.server.S2EPacketCloseWindow;
import net.minecraft.network.play.server.S2FPacketSetSlot;
import net.minecraft.network.play.server.S30PacketWindowItems;
-import java.io.BufferedReader;
-import java.io.BufferedWriter;
import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.InputStreamReader;
-import java.io.OutputStreamWriter;
import java.lang.reflect.Type;
-import java.nio.charset.StandardCharsets;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.atomic.AtomicInteger;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
-import java.util.zip.GZIPInputStream;
-import java.util.zip.GZIPOutputStream;
public class StorageManager {
private static final StorageManager INSTANCE = new StorageManager();
@@ -298,34 +290,14 @@ public class StorageManager {
private static final Pattern ECHEST_WINDOW_REGEX = Pattern.compile("Ender Chest \\((\\d+)/(\\d+)\\)");
public void loadConfig(File file) {
- try (
- BufferedReader reader = new BufferedReader(new InputStreamReader(
- new GZIPInputStream(new FileInputStream(file)),
- StandardCharsets.UTF_8
- ))
- ) {
- storageConfig = GSON.fromJson(reader, StorageConfig.class);
- } catch (Exception ignored) {
- }
+ storageConfig = ConfigUtil.loadConfig(StorageConfig.class, file, GSON, true);
if (storageConfig == null) {
storageConfig = new StorageConfig();
}
}
public void saveConfig(File file) {
- try {
- file.createNewFile();
- try (
- BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(
- new GZIPOutputStream(new FileOutputStream(file)),
- StandardCharsets.UTF_8
- ))
- ) {
- writer.write(GSON.toJson(storageConfig));
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
+ ConfigUtil.saveConfig(storageConfig, file, GSON, true);
}
public ItemStack getMissingBackpackStack(int storageId) {