diff options
| author | Willem Dalton <144246261+WillemDalton@users.noreply.github.com> | 2025-11-05 15:26:56 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-11-05 15:26:56 -0500 |
| commit | 17aba16fbb3272a73b1a1b6b1c459e3597fc066e (patch) | |
| tree | 01ed290f8b3c524fc033d22fc25c9a6193c8cf10 /src/main/java/design/persistence/JSONPersonalDatabase.java | |
| parent | bac8ea587a6bd569d74a173ea8eeb59b7edc7417 (diff) | |
| parent | 58d32481c71e5aee7c89dab3afc3b1e3bdb8c074 (diff) | |
| download | designproject-design-6-17aba16fbb3272a73b1a1b6b1c459e3597fc066e.tar.gz designproject-design-6-17aba16fbb3272a73b1a1b6b1c459e3597fc066e.tar.bz2 designproject-design-6-17aba16fbb3272a73b1a1b6b1c459e3597fc066e.zip | |
Merge pull request #13 from RIT-SWEN-262/singleton-daos
Singleton daos
Diffstat (limited to 'src/main/java/design/persistence/JSONPersonalDatabase.java')
| -rw-r--r-- | src/main/java/design/persistence/JSONPersonalDatabase.java | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/src/main/java/design/persistence/JSONPersonalDatabase.java b/src/main/java/design/persistence/JSONPersonalDatabase.java index db613d9..70aa1ab 100644 --- a/src/main/java/design/persistence/JSONPersonalDatabase.java +++ b/src/main/java/design/persistence/JSONPersonalDatabase.java @@ -23,11 +23,20 @@ import java.util.Map; public class JSONPersonalDatabase implements PersonalDatabase { + private static JSONPersonalDatabase INSTANCE; + + public static JSONPersonalDatabase instance() { + if (INSTANCE == null) { + INSTANCE = new JSONPersonalDatabase("data/personaldb.json"); + } + return INSTANCE; + } + private final Map<String, Golfer> cache; private final ObjectMapper mapper; private final File file; - public JSONPersonalDatabase(String filename) { + private JSONPersonalDatabase(String filename) { this.file = new File(filename); this.cache = new HashMap<>(); this.mapper = new ObjectMapper(); @@ -101,7 +110,7 @@ public class JSONPersonalDatabase implements PersonalDatabase { } private static class CourseIdDeserializer extends JsonDeserializer<Course> { - MasterDatabase masterDB = MasterDatabase.INSTANCE; + MasterDatabase masterDB = MasterDatabase.instance(); @Override public Course deserialize(JsonParser p, DeserializationContext context) throws IOException { |
