From e2cf4f8542352c17223d94c6280ba23d8107dfde Mon Sep 17 00:00:00 2001 From: jeffcheasey88 Date: Fri, 8 Sep 2023 11:32:58 +0200 Subject: [PATCH] Configuration -> add default values --- src/dev/peerat/backend/Configuration.java | 27 +++++++++++++---------- src/dev/peerat/backend/Main.java | 3 ++- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/src/dev/peerat/backend/Configuration.java b/src/dev/peerat/backend/Configuration.java index 5eea2f7..9709482 100644 --- a/src/dev/peerat/backend/Configuration.java +++ b/src/dev/peerat/backend/Configuration.java @@ -46,17 +46,23 @@ public class Configuration { this._file = new File(path); System.out.println("Config on " + _file.getAbsolutePath()); } + + public Configuration addDefaultValue(String name, T value) throws Exception{ + if(value == null) throw new IllegalArgumentException("Value cannot be null"); + Field field = getClass().getDeclaredField(name); + field.setAccessible(true); + field.set(this, value); + return this; + } - public void load() throws Exception { - if (!this._file.exists()) - return; + public void load() throws Exception{ + if(!this._file.exists()) return; BufferedReader reader = new BufferedReader(new FileReader(this._file)); String line; - while ((line = reader.readLine()) != null) { + while((line = reader.readLine()) != null){ String[] split = line.split("="); Field field = getClass().getDeclaredField(split[0]); - if (field == null) - continue; + if(field == null) continue; field.setAccessible(true); injectValue(field, split[1]); } @@ -110,10 +116,9 @@ public class Configuration { } Field[] fields = getClass().getDeclaredFields(); BufferedWriter writer = new BufferedWriter(new FileWriter(_file)); - for (Field field : fields) { + for(Field field : fields){ field.setAccessible(true); - if (field.getName().startsWith("_")) - continue; + if(field.getName().startsWith("_")) continue; Object value = field.get(this); writer.write(field.getName() + "=" + value); } @@ -165,9 +170,7 @@ public class Configuration { return this.use_ssl; } - public String getUsersFiles() { - if (users_files == null || users_files.trim().isEmpty()) - users_files = "/tmp/users_files"; + public String getUsersFiles(){ return users_files; } diff --git a/src/dev/peerat/backend/Main.java b/src/dev/peerat/backend/Main.java index f19b519..b546df1 100644 --- a/src/dev/peerat/backend/Main.java +++ b/src/dev/peerat/backend/Main.java @@ -42,7 +42,8 @@ import dev.peerat.framework.Router; public class Main{ public static void main(String[] args) throws Exception{ - Configuration config = new Configuration("config.txt"); + Configuration config = new Configuration("config.txt") + .addDefaultValue("users_files", "/tmp/users_files"); config.load(); Class.forName("com.mysql.cj.jdbc.Driver");