summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsnowleo <schneeleo@gmail.com>2012-10-24 22:35:08 +0200
committersnowleo <schneeleo@gmail.com>2012-10-24 22:35:08 +0200
commitdeae46fa7328d0f0be3ffd83e46e5c25cf7851dc (patch)
treee2476b7779ec3b13fe059211ec54decf9322c282
parentf03361b0c61265902ed5e7fc69452cce5ad1457e (diff)
downloadEssentials-deae46fa7328d0f0be3ffd83e46e5c25cf7851dc.tar
Essentials-deae46fa7328d0f0be3ffd83e46e5c25cf7851dc.tar.gz
Essentials-deae46fa7328d0f0be3ffd83e46e5c25cf7851dc.tar.lz
Essentials-deae46fa7328d0f0be3ffd83e46e5c25cf7851dc.tar.xz
Essentials-deae46fa7328d0f0be3ffd83e46e5c25cf7851dc.zip
Allow to fill data with defaults on newly created configs
-rw-r--r--Essentials/src/net/ess3/storage/AsyncStorageObjectHolder.java6
1 files changed, 6 insertions, 0 deletions
diff --git a/Essentials/src/net/ess3/storage/AsyncStorageObjectHolder.java b/Essentials/src/net/ess3/storage/AsyncStorageObjectHolder.java
index 5c55169d1..8f65e223c 100644
--- a/Essentials/src/net/ess3/storage/AsyncStorageObjectHolder.java
+++ b/Essentials/src/net/ess3/storage/AsyncStorageObjectHolder.java
@@ -82,6 +82,10 @@ public abstract class AsyncStorageObjectHolder<T extends StorageObject> implemen
public abstract void finishWrite();
+ protected void fillWithDefaults()
+ {
+ }
+
public StorageQueue.RequestState getRequestState(long timestamp)
{
if (savetime == 0 || savetime < timestamp || (timestamp < 0 && savetime > 0))
@@ -108,6 +112,7 @@ public abstract class AsyncStorageObjectHolder<T extends StorageObject> implemen
return writer;
}
+
private class StorageObjectDataWriter extends AbstractDelayedYamlFileWriter
{
public StorageObjectDataWriter()
@@ -176,6 +181,7 @@ public abstract class AsyncStorageObjectHolder<T extends StorageObject> implemen
loaded.set(true);
if (exception instanceof FileNotFoundException)
{
+ fillWithDefaults();
writer.schedule();
}
}