summaryrefslogtreecommitdiff
path: root/src/main/java/design/persistence
diff options
context:
space:
mode:
authorWillemDalton <willemhdalton@gmail.com>2025-10-05 18:17:01 -0400
committerWillemDalton <willemhdalton@gmail.com>2025-10-05 18:17:01 -0400
commit9b67c5fa4c53a558a32926ab04b59def510396ab (patch)
treee2c8db029967fa5f4a50b524487bbaad9dcb316e /src/main/java/design/persistence
parent5b561d4743556a60cb4dc198489b48f8844a5c28 (diff)
downloaddesignproject-design-6-9b67c5fa4c53a558a32926ab04b59def510396ab.tar.gz
designproject-design-6-9b67c5fa4c53a558a32926ab04b59def510396ab.tar.bz2
designproject-design-6-9b67c5fa4c53a558a32926ab04b59def510396ab.zip
some progress on menu commands for searching
Diffstat (limited to 'src/main/java/design/persistence')
-rw-r--r--src/main/java/design/persistence/CSVMasterDatabase.java24
-rw-r--r--src/main/java/design/persistence/MasterDatabase.java2
2 files changed, 26 insertions, 0 deletions
diff --git a/src/main/java/design/persistence/CSVMasterDatabase.java b/src/main/java/design/persistence/CSVMasterDatabase.java
index fe89191..adbf759 100644
--- a/src/main/java/design/persistence/CSVMasterDatabase.java
+++ b/src/main/java/design/persistence/CSVMasterDatabase.java
@@ -16,6 +16,8 @@ import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
+import design.model.course_search.*;
+
public class CSVMasterDatabase implements MasterDatabase {
private final List<Course> cache;
@@ -57,6 +59,28 @@ public class CSVMasterDatabase implements MasterDatabase {
return cache.get(id);
}
+ @Override
+ public CourseList getCourseList() {
+ CourseList courses = new CourseList();
+ for (Course c : cache)
+ {
+ courses.add(c);
+ }
+
+ 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;
diff --git a/src/main/java/design/persistence/MasterDatabase.java b/src/main/java/design/persistence/MasterDatabase.java
index ddc0434..3436ee0 100644
--- a/src/main/java/design/persistence/MasterDatabase.java
+++ b/src/main/java/design/persistence/MasterDatabase.java
@@ -1,10 +1,12 @@
package design.persistence;
import design.model.Course;
+import design.model.course_search.CourseList;
public interface MasterDatabase {
MasterDatabase INSTANCE = new CSVMasterDatabase("data/golf_courses_1000.csv");
Course[] getCourses();
+ CourseList getCourseList(); // unique from courses as this is a composite of ICourses.
Course getCourse(int id);
}