From 08b56fc8237b60e37d3c5409d1fa57dc11b83033 Mon Sep 17 00:00:00 2001 From: ME1312 Date: Sun, 20 Dec 2020 22:30:33 -0500 Subject: [PATCH] Don't rewrite files with no placeholders --- .../Bungee/Library/ReplacementScanner.java | 18 ++++++++++++++---- .../ME1312/SubServers/Bungee/SubCommand.java | 2 +- .../Host/Library/ReplacementScanner.java | 18 ++++++++++++++---- 3 files changed, 29 insertions(+), 9 deletions(-) diff --git a/SubServers.Bungee/src/net/ME1312/SubServers/Bungee/Library/ReplacementScanner.java b/SubServers.Bungee/src/net/ME1312/SubServers/Bungee/Library/ReplacementScanner.java index 26c8fd8a..2783b17f 100644 --- a/SubServers.Bungee/src/net/ME1312/SubServers/Bungee/Library/ReplacementScanner.java +++ b/SubServers.Bungee/src/net/ME1312/SubServers/Bungee/Library/ReplacementScanner.java @@ -156,10 +156,20 @@ public class ReplacementScanner { String string = Util.readAll(new InputStreamReader(stream)); stream.close(); - for (Map.Entry replacement : replacements.entrySet()) string = string.replace("SubServers::" + replacement.getKey(), replacement.getValue()); - FileWriter writer = new FileWriter(file, false); - writer.write(string); - writer.close(); + boolean update = false; + for (Map.Entry replacement : replacements.entrySet()) { + String placeholder = "SubServers::" + replacement.getKey(); + if (string.contains(placeholder)) { + string = string.replace(placeholder, replacement.getValue()); + update = true; + } + } + + if (update) { + FileWriter writer = new FileWriter(file, false); + writer.write(string); + writer.close(); + } } diff --git a/SubServers.Bungee/src/net/ME1312/SubServers/Bungee/SubCommand.java b/SubServers.Bungee/src/net/ME1312/SubServers/Bungee/SubCommand.java index 348988d7..64b537fc 100644 --- a/SubServers.Bungee/src/net/ME1312/SubServers/Bungee/SubCommand.java +++ b/SubServers.Bungee/src/net/ME1312/SubServers/Bungee/SubCommand.java @@ -128,6 +128,7 @@ public final class SubCommand extends CommandX { case "system": case "bungee": case "bungeecord": + case "subdata": case "network": plugin.getPluginManager().dispatchCommand(ConsoleCommandSender.getInstance(), "greload"); break; @@ -137,7 +138,6 @@ public final class SubCommand extends CommandX { case "servers": case "subserver": case "subservers": - case "subdata": case "config": case "configs": try { diff --git a/SubServers.Host/src/net/ME1312/SubServers/Host/Library/ReplacementScanner.java b/SubServers.Host/src/net/ME1312/SubServers/Host/Library/ReplacementScanner.java index 2256350a..364c2f25 100644 --- a/SubServers.Host/src/net/ME1312/SubServers/Host/Library/ReplacementScanner.java +++ b/SubServers.Host/src/net/ME1312/SubServers/Host/Library/ReplacementScanner.java @@ -156,10 +156,20 @@ public class ReplacementScanner { String string = Util.readAll(new InputStreamReader(stream)); stream.close(); - for (Map.Entry replacement : replacements.entrySet()) string = string.replace("SubServers::" + replacement.getKey(), replacement.getValue()); - FileWriter writer = new FileWriter(file, false); - writer.write(string); - writer.close(); + boolean update = false; + for (Map.Entry replacement : replacements.entrySet()) { + String placeholder = "SubServers::" + replacement.getKey(); + if (string.contains(placeholder)) { + string = string.replace(placeholder, replacement.getValue()); + update = true; + } + } + + if (update) { + FileWriter writer = new FileWriter(file, false); + writer.write(string); + writer.close(); + } }