summaryrefslogtreecommitdiff
path: root/src/main/java/design/model
diff options
context:
space:
mode:
authorWillemDalton <willemhdalton@gmail.com>2025-10-06 17:06:42 -0400
committerWillemDalton <willemhdalton@gmail.com>2025-10-06 17:06:42 -0400
commit9843e29a51bb6c21b21567b147c1ad301291ec85 (patch)
tree8d951769b5d66f6aa0743da657b498a3fa42f3fc /src/main/java/design/model
parente21be3aea31959219aafc4e28d983bafa95cde0a (diff)
downloaddesignproject-design-6-9843e29a51bb6c21b21567b147c1ad301291ec85.tar.gz
designproject-design-6-9843e29a51bb6c21b21567b147c1ad301291ec85.tar.bz2
designproject-design-6-9843e29a51bb6c21b21567b147c1ad301291ec85.zip
more progress on getting searching to work
Diffstat (limited to '')
-rw-r--r--src/main/java/design/model/Course.java5
-rw-r--r--src/main/java/design/model/course_search/CurrentSearchQuery.java21
2 files changed, 26 insertions, 0 deletions
diff --git a/src/main/java/design/model/Course.java b/src/main/java/design/model/Course.java
index f907622..78ee5bd 100644
--- a/src/main/java/design/model/Course.java
+++ b/src/main/java/design/model/Course.java
@@ -51,4 +51,9 @@ public class Course implements ICourse {
public List<Hole> getHoles() {
return holes;
}
+
+ @Override
+ public String toString() {
+ return name + ", " + location + ", " + difficultyRating + ", " + holeCount + ", " + totalPar;
+ }
}
diff --git a/src/main/java/design/model/course_search/CurrentSearchQuery.java b/src/main/java/design/model/course_search/CurrentSearchQuery.java
index 45364f4..1f8c8ba 100644
--- a/src/main/java/design/model/course_search/CurrentSearchQuery.java
+++ b/src/main/java/design/model/course_search/CurrentSearchQuery.java
@@ -2,6 +2,7 @@ package design.model.course_search;
import java.util.ArrayList;
import java.util.List;
+import java.util.stream.Collectors;
import design.persistence.MasterDatabase;
@@ -16,21 +17,26 @@ public class CurrentSearchQuery {
MasterDatabase db = MasterDatabase.INSTANCE;
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)
{
filters.add(filter);
}
+ // clear the filters
public void clearFilters()
{
filters.clear();
}
+ // print out the filters ( this is for the model checking used filters )
public String printFilters()
{
String filterResult = "";
@@ -51,13 +57,28 @@ public class CurrentSearchQuery {
return filterResult;
}
+ // get all the filters
public List<CourseSorter> getFilters()
{
return filters;
}
+ // get our current query.
public CourseList getQueryResult()
{
return query;
}
+
+ public CourseList search(String[] searchQuery)
+ {
+ List<ICourse> courses = query.getCourses();
+
+ courses = courses.stream()
+ .filter(s -> s.toString().toLowerCase().contains(searchQuery[0].toLowerCase()))
+ .collect(Collectors.toList());
+
+ query.setCourses(courses);
+
+ return query;
+ }
}