From 8664b23a24cd1f6a8dc6ec80eaf6e7b04a63e5b2 Mon Sep 17 00:00:00 2001 From: Warrior <50800980+Warriorrrr@users.noreply.github.com> Date: Thu, 23 Oct 2025 12:49:31 +0200 Subject: [PATCH] Buffer reads/writes in uuid cache loading/saving --- .../essentials/userstorage/ModernUUIDCache.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/Essentials/src/main/java/com/earth2me/essentials/userstorage/ModernUUIDCache.java b/Essentials/src/main/java/com/earth2me/essentials/userstorage/ModernUUIDCache.java index 8c0a88bbd9b..526f61b26c8 100644 --- a/Essentials/src/main/java/com/earth2me/essentials/userstorage/ModernUUIDCache.java +++ b/Essentials/src/main/java/com/earth2me/essentials/userstorage/ModernUUIDCache.java @@ -4,6 +4,8 @@ import com.google.common.io.Files; import net.ess3.api.IEssentials; +import java.io.BufferedInputStream; +import java.io.BufferedOutputStream; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.File; @@ -143,7 +145,7 @@ private void loadCache() { nameToUuidMap.clear(); - try (final DataInputStream dis = new DataInputStream(new FileInputStream(nameToUuidFile))) { + try (final DataInputStream dis = new DataInputStream(new BufferedInputStream(new FileInputStream(nameToUuidFile)))) { while (dis.available() > 0) { final String username = dis.readUTF(); final UUID uuid = new UUID(dis.readLong(), dis.readLong()); @@ -171,7 +173,7 @@ private void loadCache() { uuidCache.clear(); - try (final DataInputStream dis = new DataInputStream(new FileInputStream(uuidCacheFile))) { + try (final DataInputStream dis = new DataInputStream(new BufferedInputStream(new FileInputStream(uuidCacheFile)))) { while (dis.available() > 0) { final UUID uuid = new UUID(dis.readLong(), dis.readLong()); if (uuidCache.contains(uuid) && debug) { @@ -223,7 +225,7 @@ protected void blockingSave() { } public static void writeUuidCache(final File file, Set uuids) throws IOException { - try (final DataOutputStream dos = new DataOutputStream(new FileOutputStream(file))) { + try (final DataOutputStream dos = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(file)))) { for (final UUID uuid: uuids) { dos.writeLong(uuid.getMostSignificantBits()); dos.writeLong(uuid.getLeastSignificantBits()); @@ -232,7 +234,7 @@ public static void writeUuidCache(final File file, Set uuids) throws IOExc } public static void writeNameUuidMap(final File file, final Map nameToUuidMap) throws IOException { - try (final DataOutputStream dos = new DataOutputStream(new FileOutputStream(file))) { + try (final DataOutputStream dos = new DataOutputStream(new BufferedOutputStream(new FileOutputStream(file)))) { for (final Map.Entry entry : nameToUuidMap.entrySet()) { dos.writeUTF(entry.getKey()); final UUID uuid = entry.getValue();