From b816d62b24487f7ae7fdff72b7ee40010ff279b8 Mon Sep 17 00:00:00 2001 From: Obique PSWG Date: Wed, 30 Dec 2015 16:58:48 -0600 Subject: [PATCH] Added additional information to errors in ObjectDatabase --- src/resources/server_info/CachedObjectDatabase.java | 5 ++++- src/resources/server_info/ObjectDatabase.java | 12 +----------- 2 files changed, 5 insertions(+), 12 deletions(-) diff --git a/src/resources/server_info/CachedObjectDatabase.java b/src/resources/server_info/CachedObjectDatabase.java index b4e2a538..6f7145fe 100644 --- a/src/resources/server_info/CachedObjectDatabase.java +++ b/src/resources/server_info/CachedObjectDatabase.java @@ -135,8 +135,10 @@ public class CachedObjectDatabase extends ObjectDatabase } public synchronized boolean load() { - if (!fileExists()) + if (!fileExists()) { + Log.e("CachedObjectDatabase", "load() - file '%s' does not exist!", getFile()); return false; + } ObjectInputStream ois = null; try { ois = new ObjectInputStream(new FileInputStream(getFile())); @@ -152,6 +154,7 @@ public class CachedObjectDatabase extends ObjectDatabase } catch (EOFException e) { loaded = true; } catch (IOException | ClassNotFoundException | ClassCastException e) { + Log.e("CachedObjectDatabase", "load() - unable to load with error: %s - %s", e.getClass().getSimpleName(), e.getMessage()); System.err.println("CachedObjectDatabase: Unable to load with error: " + e.getClass().getSimpleName() + " - " + e.getMessage()); return false; } finally { diff --git a/src/resources/server_info/ObjectDatabase.java b/src/resources/server_info/ObjectDatabase.java index 9037b1eb..00f8001e 100644 --- a/src/resources/server_info/ObjectDatabase.java +++ b/src/resources/server_info/ObjectDatabase.java @@ -40,7 +40,6 @@ public abstract class ObjectDatabase { private final File file; private final ScheduledExecutorService autosaveService; - private final Runnable autosaveRunnable; public ObjectDatabase(String filename) { this(filename, TimeUnit.MINUTES.toMillis(5)); @@ -56,13 +55,8 @@ public abstract class ObjectDatabase { if (autosaveInterval < 60000) autosaveInterval = 60000; this.autosaveService = Executors.newSingleThreadScheduledExecutor(ThreadUtilities.newThreadFactory("odb-autosave-"+file.getName())); - this.autosaveRunnable = new Runnable() { - public void run() { - autosavePeriodic(); - } - }; // Setup - autosaveService.scheduleAtFixedRate(autosaveRunnable, autosaveInterval, autosaveInterval, TimeUnit.MILLISECONDS); + autosaveService.scheduleAtFixedRate(() -> save(), autosaveInterval, autosaveInterval, TimeUnit.MILLISECONDS); try { createFilesAndDirectories(); } catch (IOException e) { @@ -70,10 +64,6 @@ public abstract class ObjectDatabase { } } - private void autosavePeriodic() { - save(); - } - private void createFilesAndDirectories() throws IOException { if (file.exists()) return;