Improves error logging (#1)

* Use Logger instead of System.out
* Include the actual error message


Co-authored-by: b0n <0xicl33n@gmail.com>
This commit is contained in:
Christian Koop 2021-12-23 22:32:47 +01:00
parent 4a37aefb3f
commit 41e4ad5fb5
No known key found for this signature in database
GPG Key ID: 89A8181384E010A3

View File

@ -9,7 +9,16 @@ import com.songoda.core.gui.GuiManager;
import com.songoda.core.hooks.EconomyManager; import com.songoda.core.hooks.EconomyManager;
import com.songoda.core.hooks.PluginHook; import com.songoda.core.hooks.PluginHook;
import com.songoda.core.hooks.economies.Economy; import com.songoda.core.hooks.economies.Economy;
import com.songoda.epicheads.commands.*; import com.songoda.epicheads.commands.CommandAdd;
import com.songoda.epicheads.commands.CommandBase64;
import com.songoda.epicheads.commands.CommandEpicHeads;
import com.songoda.epicheads.commands.CommandGive;
import com.songoda.epicheads.commands.CommandGiveToken;
import com.songoda.epicheads.commands.CommandHelp;
import com.songoda.epicheads.commands.CommandReload;
import com.songoda.epicheads.commands.CommandSearch;
import com.songoda.epicheads.commands.CommandSettings;
import com.songoda.epicheads.commands.CommandUrl;
import com.songoda.epicheads.head.Category; import com.songoda.epicheads.head.Category;
import com.songoda.epicheads.head.Head; import com.songoda.epicheads.head.Head;
import com.songoda.epicheads.head.HeadManager; import com.songoda.epicheads.head.HeadManager;
@ -37,13 +46,12 @@ import java.io.InputStream;
import java.io.InputStreamReader; import java.io.InputStreamReader;
import java.io.Reader; import java.io.Reader;
import java.net.URL; import java.net.URL;
import java.nio.charset.Charset; import java.nio.charset.StandardCharsets;
import java.util.List; import java.util.List;
import java.util.Optional; import java.util.Optional;
import java.util.UUID; import java.util.UUID;
public class EpicHeads extends SongodaPlugin { public class EpicHeads extends SongodaPlugin {
private static EpicHeads INSTANCE; private static EpicHeads INSTANCE;
private final GuiManager guiManager = new GuiManager(this); private final GuiManager guiManager = new GuiManager(this);
@ -133,8 +141,9 @@ public class EpicHeads extends SongodaPlugin {
// Adding in favorites. // Adding in favorites.
if (storage.containsGroup("players")) { if (storage.containsGroup("players")) {
for (StorageRow row : storage.getRowsByGroup("players")) { for (StorageRow row : storage.getRowsByGroup("players")) {
if (row.get("uuid").asObject() == null) if (row.get("uuid").asObject() == null) {
continue; continue;
}
EPlayer player = new EPlayer( EPlayer player = new EPlayer(
UUID.fromString(row.get("uuid").asString()), UUID.fromString(row.get("uuid").asString()),
@ -155,7 +164,7 @@ public class EpicHeads extends SongodaPlugin {
private void downloadHeads() { private void downloadHeads() {
try { try {
InputStream is = new URL("http://www.head-db.com/dump").openStream(); InputStream is = new URL("http://www.head-db.com/dump").openStream();
BufferedReader rd = new BufferedReader(new InputStreamReader(is, Charset.forName("UTF-8"))); BufferedReader rd = new BufferedReader(new InputStreamReader(is, StandardCharsets.UTF_8));
String jsonText = readAll(rd); String jsonText = readAll(rd);
JSONParser parser = new JSONParser(); JSONParser parser = new JSONParser();
JSONArray json = (JSONArray) parser.parse(jsonText); JSONArray json = (JSONArray) parser.parse(jsonText);
@ -163,8 +172,8 @@ public class EpicHeads extends SongodaPlugin {
try (FileWriter file = new FileWriter(getDataFolder() + "/heads.json")) { try (FileWriter file = new FileWriter(getDataFolder() + "/heads.json")) {
file.write(json.toJSONString()); file.write(json.toJSONString());
} }
} catch (Exception e) { } catch (Exception ex) {
System.out.println("Failed to download heads."); getLogger().warning("Failed to download heads: " + ex.getMessage());
} }
} }
@ -240,15 +249,19 @@ public class EpicHeads extends SongodaPlugin {
config.set("Main.Disabled Global Heads", null); config.set("Main.Disabled Global Heads", null);
} }
System.out.println("loaded " + headManager.getHeads().size() + " Heads."); getLogger().info("Loaded " + headManager.getHeads().size() + " heads");
} catch (IOException | ParseException ex) {
getLogger().warning(() -> {
if (ex instanceof ParseException) {
return "Disabling plugin, failed to parse heads: " + ex.getMessage();
}
return "Disabling plugin, failed to load heads: " + ex.getMessage();
});
} catch (IOException e) {
System.out.println("Heads file not found. Plugin disabling.");
return false;
} catch (ParseException e) {
System.out.println("Failed to parse heads file. Plugin disabling.");
return false; return false;
} }
return true; return true;
} }