diff options
| author | WillemDalton <willemhdalton@gmail.com> | 2025-10-06 18:01:55 -0400 |
|---|---|---|
| committer | WillemDalton <willemhdalton@gmail.com> | 2025-10-06 18:01:55 -0400 |
| commit | 09f5536f3e21d910e79daf49a67e9e98e9554751 (patch) | |
| tree | 8599233603c6e8e177c54f74251a22e4b67a5e0a /src/main/java/design/model/course_search | |
| parent | 9843e29a51bb6c21b21567b147c1ad301291ec85 (diff) | |
| download | designproject-design-6-09f5536f3e21d910e79daf49a67e9e98e9554751.tar.gz designproject-design-6-09f5536f3e21d910e79daf49a67e9e98e9554751.tar.bz2 designproject-design-6-09f5536f3e21d910e79daf49a67e9e98e9554751.zip | |
finished searching just need to order by our sorting strategies.
Diffstat (limited to '')
| -rw-r--r-- | src/main/java/design/model/course_search/CurrentSearchQuery.java | 26 |
1 files changed, 11 insertions, 15 deletions
diff --git a/src/main/java/design/model/course_search/CurrentSearchQuery.java b/src/main/java/design/model/course_search/CurrentSearchQuery.java index 1f8c8ba..0a492b3 100644 --- a/src/main/java/design/model/course_search/CurrentSearchQuery.java +++ b/src/main/java/design/model/course_search/CurrentSearchQuery.java @@ -13,17 +13,10 @@ public class CurrentSearchQuery { public static final CurrentSearchQuery INSTANCE = new CurrentSearchQuery(); - private CourseList query; MasterDatabase db = MasterDatabase.INSTANCE; + private CourseList query = db.getCourseList(); private final List<CourseSorter> filters = new ArrayList<CourseSorter>(); - - // initialize the query to the master DB - public void initialize() - { - query = db.getCourseList(); - } - // add a new filter public void addFilter(CourseSorter filter) { @@ -41,6 +34,7 @@ public class CurrentSearchQuery { { String filterResult = ""; + // no filters? let the user know. if(filters.size() == 0) { return "nothing"; @@ -51,7 +45,8 @@ public class CurrentSearchQuery { filterResult += f.toString() + " --> "; } - filterResult = filterResult.substring(0, filterResult.length() - 5); + // very silly way of removing the last arrow from our filter list. it's kind of dumb but it works fine. + filterResult = filterResult.substring(0, filterResult.length() - 5); filterResult += "\n"; return filterResult; @@ -69,16 +64,17 @@ public class CurrentSearchQuery { return query; } - public CourseList search(String[] searchQuery) + public void search(String searchQuery) { - List<ICourse> courses = query.getCourses(); + List<ICourse> courses; - courses = courses.stream() - .filter(s -> s.toString().toLowerCase().contains(searchQuery[0].toLowerCase())) + // compare to our search query. + courses = query.getCourses().stream() + .filter(s -> s != null && s.toString().toLowerCase().contains(searchQuery)) .collect(Collectors.toList()); - query.setCourses(courses); + // TO DO: Filter this based on our current filters, then return it! - return query; + query.setCourses(courses); } } |
