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/CSVMasterDatabase.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 '')
| -rw-r--r-- | src/main/java/design/persistence/CSVMasterDatabase.java | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/src/main/java/design/persistence/CSVMasterDatabase.java b/src/main/java/design/persistence/CSVMasterDatabase.java index adbf759..f98a08e 100644 --- a/src/main/java/design/persistence/CSVMasterDatabase.java +++ b/src/main/java/design/persistence/CSVMasterDatabase.java @@ -20,11 +20,20 @@ import design.model.course_search.*; public class CSVMasterDatabase implements MasterDatabase { + private static CSVMasterDatabase INSTANCE; + + public static synchronized CSVMasterDatabase instance() { + if (INSTANCE == null) { + INSTANCE = new CSVMasterDatabase("data/golf_courses_1000.csv"); + } + return INSTANCE; + } + private final List<Course> cache; private final CsvMapper mapper; private final File file; - public CSVMasterDatabase(String filename) { + private CSVMasterDatabase(String filename) { this.cache = new ArrayList<>(); this.mapper = new CsvMapper(); this.file = new File(filename); @@ -40,7 +49,7 @@ public class CSVMasterDatabase implements MasterDatabase { } } - public void load() throws IOException { + private void load() throws IOException { MappingIterator<Course> it = mapper .readerFor(Course.class) .with(CsvSchema.emptySchema().withHeader()) @@ -70,17 +79,6 @@ public class CSVMasterDatabase implements MasterDatabase { return courses; } - public CourseList getCourses(String s) { - CourseList courses = new CourseList(); - for (Course c : cache) - { - if(c.getName().toLowerCase().contains(s.toLowerCase())) - courses.add(c); - } - - return courses; - } - private static class CourseDeserializer extends JsonDeserializer<Course> { int curID = 0; |
