summaryrefslogtreecommitdiff
path: root/src/main/java/design/model/League.java
diff options
context:
space:
mode:
authorJacob Shimp <jrs9538@g.rit.edu>2025-11-14 20:26:21 -0500
committerJacob Shimp <jrs9538@g.rit.edu>2025-11-14 20:26:21 -0500
commit23ea4f3a14d6cf2ec76567422320d0279d1d390a (patch)
treec9382c8738b210bcf77583b8f2273558e7523753 /src/main/java/design/model/League.java
parent5b1877bc1f4b5121ecd5befdc9ebb5e36da5c847 (diff)
downloaddesignproject-design-6-23ea4f3a14d6cf2ec76567422320d0279d1d390a.tar.gz
designproject-design-6-23ea4f3a14d6cf2ec76567422320d0279d1d390a.tar.bz2
designproject-design-6-23ea4f3a14d6cf2ec76567422320d0279d1d390a.zip
Potential implementation of LeagueStats
Diffstat (limited to 'src/main/java/design/model/League.java')
-rw-r--r--src/main/java/design/model/League.java17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/main/java/design/model/League.java b/src/main/java/design/model/League.java
index 8793c86..b76cc33 100644
--- a/src/main/java/design/model/League.java
+++ b/src/main/java/design/model/League.java
@@ -7,6 +7,7 @@ import com.fasterxml.jackson.annotation.JsonTypeInfo;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
+import java.util.Map;
@JsonTypeInfo(
use = JsonTypeInfo.Id.NAME,
@@ -25,6 +26,7 @@ public abstract class League {
private final Date endDate;
private final Golfer owner;
private final List<Match> schedule;
+ private final List<Match> completedMatches;
private boolean completed;
@JsonCreator
@@ -37,6 +39,13 @@ public abstract class League {
this.owner = owner;
this.schedule = schedule != null ? schedule : new ArrayList<>();
this.completed = false;
+
+ this.completedMatches = new ArrayList<>();
+ for(Match m : this.schedule){
+ if(m.checkCompletion()){
+ completedMatches.add(m);
+ }
+ }
}
public League(String name, Date registrationDate, Date startDate, Date endDate, Golfer owner) {
@@ -48,6 +57,8 @@ public abstract class League {
this.owner = owner;
this.schedule = new ArrayList<>();
this.completed = false;
+
+ this.completedMatches = new ArrayList<>();
}
public int getId() {
@@ -82,6 +93,10 @@ public abstract class League {
return completed;
}
+ public List<Match> getCompletedMatches() {
+ return completedMatches;
+ }
+
public void addMatchToSchedule(Match match) {
if(match.getDateScheduled().after(endDate)){
throw new IllegalArgumentException("Cannot create match after league has ended");
@@ -112,4 +127,6 @@ public abstract class League {
public abstract void recordPlay(Golfer player, Match match, Round round);
public abstract void finalizeLeague();
+
+ public abstract Map<?, Integer> getResults();
}