diff --git a/src/main/java/me/mrletsplay/videobase/Config.java b/src/main/java/me/mrletsplay/videobase/Config.java index 8b7358c..43a3878 100644 --- a/src/main/java/me/mrletsplay/videobase/Config.java +++ b/src/main/java/me/mrletsplay/videobase/Config.java @@ -9,6 +9,9 @@ public class Config implements JSONConvertible { @JSONValue private String libraryPath; + @JSONValue + private boolean readOnly; + @JSONValue private String cachePath; @@ -19,6 +22,10 @@ public class Config implements JSONConvertible { return libraryPath; } + public boolean isReadOnly() { + return readOnly; + } + public String getCachePath() { return cachePath; } @@ -26,6 +33,7 @@ public class Config implements JSONConvertible { public static Config createDefault() { Config config = new Config(); config.libraryPath = "library"; + config.readOnly = false; config.cachePath = "cache"; return config; } diff --git a/src/main/java/me/mrletsplay/videobase/VideoBase.java b/src/main/java/me/mrletsplay/videobase/VideoBase.java index 3a14669..387fab0 100644 --- a/src/main/java/me/mrletsplay/videobase/VideoBase.java +++ b/src/main/java/me/mrletsplay/videobase/VideoBase.java @@ -81,7 +81,7 @@ public class VideoBase { } private static void loadLibrary() { - library = Library.load(Path.of(config.getLibraryPath())); + library = Library.load(Path.of(config.getLibraryPath()), config.isReadOnly()); } } diff --git a/src/main/java/me/mrletsplay/videobase/library/Library.java b/src/main/java/me/mrletsplay/videobase/library/Library.java index 1dee67d..b98b7aa 100644 --- a/src/main/java/me/mrletsplay/videobase/library/Library.java +++ b/src/main/java/me/mrletsplay/videobase/library/Library.java @@ -25,13 +25,15 @@ public class Library { VIDEO_METADATA_SUFFIX = ".meta.json"; private Path path; + private boolean readOnly; private List