diff options
| author | Jacob Shimp <jrs9538@g.rit.edu> | 2025-11-11 19:32:27 -0500 |
|---|---|---|
| committer | Jacob Shimp <jrs9538@g.rit.edu> | 2025-11-11 19:32:27 -0500 |
| commit | 4d1ac032652e857a6d6bd63cadad0727ddb3a345 (patch) | |
| tree | 2daab405febcec1af1086870fa1bdb175996dd4b /src/main/java/design/model/League.java | |
| parent | a0b662eccc6422348a1016dc71b8262eeeeee78f (diff) | |
| download | designproject-design-6-4d1ac032652e857a6d6bd63cadad0727ddb3a345.tar.gz designproject-design-6-4d1ac032652e857a6d6bd63cadad0727ddb3a345.tar.bz2 designproject-design-6-4d1ac032652e857a6d6bd63cadad0727ddb3a345.zip | |
potential implementation for playing in a league
Diffstat (limited to '')
| -rw-r--r-- | src/main/java/design/model/League.java | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/src/main/java/design/model/League.java b/src/main/java/design/model/League.java index 6dab033..1f4c9cb 100644 --- a/src/main/java/design/model/League.java +++ b/src/main/java/design/model/League.java @@ -14,6 +14,7 @@ public abstract class League { private final Date endDate; private final Golfer owner; private List<Match> schedule; + private boolean completed; @JsonCreator protected League(int id, String name, Date registrationDate, Date startDate, Date endDate, Golfer owner, List<Match> schedule) { @@ -24,6 +25,7 @@ public abstract class League { this.endDate = endDate; this.owner = owner; this.schedule = schedule; + this.completed = false; } public League(String name, Date registrationDate, Date startDate, Date endDate, Golfer owner) { @@ -34,6 +36,7 @@ public abstract class League { this.endDate = endDate; this.owner = owner; this.schedule = new ArrayList<>(); + this.completed = false; } public int getId() { @@ -64,9 +67,12 @@ public abstract class League { return schedule; } + public boolean isCompleted() { + return completed; + } + public void addMatchToSchedule(Match match) { - Date date = match.getDateScheduled(); - if(date.after(endDate)){ + if(match.getDateScheduled().after(endDate)){ throw new IllegalArgumentException("Cannot create match after league has ended"); } schedule.add(match); @@ -76,4 +82,17 @@ public abstract class League { assert this.id == -1; this.id = id; } + + public boolean isPlayable() { + Date now = new Date(); + return now.after(startDate) && now.before(endDate); + } + + public void markCompleted(){ + this.completed = true; + } + + public abstract void recordPlay(Golfer player, Match match, Round round); + + public abstract void finalizeLeague(); } |
