From 106c77d0621e486d5144fe3f57db684276845769 Mon Sep 17 00:00:00 2001 From: Jacob Shimp Date: Thu, 2 Oct 2025 08:31:26 -0400 Subject: added all files, no implementation yet --- src/main/java/design/model/statistics/CourseStats.java | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 src/main/java/design/model/statistics/CourseStats.java (limited to 'src/main/java/design/model/statistics/CourseStats.java') diff --git a/src/main/java/design/model/statistics/CourseStats.java b/src/main/java/design/model/statistics/CourseStats.java new file mode 100644 index 0000000..9336525 --- /dev/null +++ b/src/main/java/design/model/statistics/CourseStats.java @@ -0,0 +1,5 @@ +package design.model.statistics; + +public class CourseStats { + +} -- cgit v1.2.3 From ec252eb5546076fa457d389d42821ae62b0bc198 Mon Sep 17 00:00:00 2001 From: Jacob Shimp Date: Thu, 2 Oct 2025 08:50:08 -0400 Subject: added base implementations for all concrete decorators --- .../java/design/model/statistics/CourseStats.java | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) (limited to 'src/main/java/design/model/statistics/CourseStats.java') diff --git a/src/main/java/design/model/statistics/CourseStats.java b/src/main/java/design/model/statistics/CourseStats.java index 9336525..47cc2c9 100644 --- a/src/main/java/design/model/statistics/CourseStats.java +++ b/src/main/java/design/model/statistics/CourseStats.java @@ -1,5 +1,22 @@ package design.model.statistics; -public class CourseStats { - +import design.model.Course; + +public class CourseStats extends StatisticsDecorator{ + private Course course; + + public CourseStats(Statistics wrapped_statistics, Course course){ + super(wrapped_statistics); + this.course = course; + } + + @Override + public int get_score(){ + return super.get_score(); + } + + @Override + public double get_distance(){ + return super.get_distance(); + } } -- cgit v1.2.3 From b4919667c3455d8b517df6a72b7d37e0734d9155 Mon Sep 17 00:00:00 2001 From: Jacob Shimp Date: Fri, 3 Oct 2025 20:31:51 -0400 Subject: Implemented all decorators, replaced BaseStatistics with LifetimeStatistics since they would have been redundant --- src/main/java/design/model/statistics/CourseStats.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'src/main/java/design/model/statistics/CourseStats.java') diff --git a/src/main/java/design/model/statistics/CourseStats.java b/src/main/java/design/model/statistics/CourseStats.java index 47cc2c9..98d9529 100644 --- a/src/main/java/design/model/statistics/CourseStats.java +++ b/src/main/java/design/model/statistics/CourseStats.java @@ -1,6 +1,9 @@ package design.model.statistics; +import java.util.Arrays; + import design.model.Course; +import design.model.Round; public class CourseStats extends StatisticsDecorator{ private Course course; @@ -11,12 +14,9 @@ public class CourseStats extends StatisticsDecorator{ } @Override - public int get_score(){ - return super.get_score(); - } - - @Override - public double get_distance(){ - return super.get_distance(); + public Round[] getRounds(){ + return Arrays.stream(super.getRounds()) + .filter(rounds -> (rounds.getCourse().getName().equals(course.getName()) && rounds.getCourse().getLocation().equals(course.getLocation()))) + .toArray(Round[]::new); } } -- cgit v1.2.3